Discrepancy with DEM monitor type

Dear mfix developers,
I am simulating a bubbling fluidized bed using the CFD- DEM model. I defined volume regions used for monitoring particle velocity using volume weighted average and standard deviation . The two monitor types however give the same values and overlap as can be seen from the Figure posted here

.
Is this possible or is there something I am not doing right? I have also attached my case for your perusal sscp-dem.mfx (20.4 KB)

I am still waiting for comments or suggestions from the development team and other expert users.

Dear developers kindly give me some guidance on this one. I have been waiting for a response for a week now.

The same subroutine also contains the following markers:
!valid value=“105” note=“Standard deviation over region”/>
!valid value=“107” note=“Volume-weighted average over region”/>
BTW I am using MFIX-GUI were from were I selected the monitor types . So which is which?

Hello MuSaNgO82

I am running sscp-dem.mfx now.

Your setup is a little bit complex - you have a lot of monitors, and the pattern for filenames for the monitors is not clear to me (you’re not doing anything wrong, it’s just a bit confusing).

Let’s look at two of the monitor definitions, number 9 and number 14.

  # Monitor 9: v1
    monitor_type(9)  = 107
    monitor_name(9)  = 'particle_velocity1'
    monitor_dt(9)    = 0.001
    monitor_vel_x(9) = .True.
    monitor_vel_y(9) = .True.
    monitor_vel_z(9) = .True.
  # Monitor 14: v1
    monitor_type(14)  = 105
    monitor_name(14)  = 'granular_temp1'
    monitor_dt(14)    = 0.001
    monitor_vel_x(14) = .True.
    monitor_vel_y(14) = .True.
    monitor_vel_z(14) = .True.

These both define monitors over the same region v1 (region boundaries elided).
They both monitor particle x,y, and z velocity at the same interval. Monitor 9 is type 107, which is a weighted average, and will write to a file called PARTICLE_VELOCITY1 (since mfix stubbornly upcases all strings in the input file).

Monitor 14 has monitor_type=105 which specifies the standard deviation, as you correctly noted. So the standard deviations of the velocities will be written to the file GRANULAR_TEMP1.

Now, after running the simulation for a few minutes I have the following outputs:

Monitor 9: PARTICLE_VELOCITY1 (averages)

# 
# Run type: NEW
# "Time","vel_x","vel_y","vel_z" 
    0.0000000    ,    0.0000000    ,    0.0000000    ,    0.0000000    
   0.10000000E-02,   0.34482017E-04,   0.17258347E-02,  -0.50105061E-11
   0.20700000E-02,   0.54825847E-04,   0.50110600E-04,  -0.82220707E-10
   0.30400000E-02,   0.71454240E-04,  -0.15001964E-02,  -0.19112713E-09
   0.40400000E-02,   0.88109975E-04,  -0.30777613E-02,  -0.31494361E-09
   0.50100000E-02,   0.10402533E-03,  -0.45872430E-02,  -0.43913605E-09
   0.60800000E-02,   0.12196800E-03,  -0.62794031E-02,  -0.58046728E-09
   0.70800000E-02,   0.13865305E-03,  -0.78405230E-02,  -0.71297129E-09

Monitor 14: GRANULAR_TEMP1 (standard deviations)

# Run type: NEW
# "Time","vel_x","vel_y","vel_z" 
    0.0000000    ,    0.0000000    ,    0.0000000    ,    0.0000000    
   0.10000000E-02,   0.58721390E-02,   0.41543161E-01,              NaN
   0.20700000E-02,   0.74044477E-02,   0.70788840E-02,              NaN
   0.30400000E-02,   0.84530609E-02,              NaN,              NaN
   0.40400000E-02,   0.93866913E-02,              NaN,              NaN
   0.50100000E-02,   0.10199281E-01,              NaN,              NaN
   0.60800000E-02,   0.11043912E-01,              NaN,              NaN
   0.70800000E-02,   0.11775103E-01,              NaN,              NaN

I’m not sure how you produced the plot you attached, or exactly which pair of monitor definitions those are (or what x/X means) but I don’t see an issue where the standard deviations are equal to the averages. What I do notice is a lot of NaN (not a number) values in the standard deviations, which I don’t understand - if we’re able to calculate an average we should be able to calculate sigma. And why are the NaNs only in the third and fourth columns? I think there may be a problem in the standard deviation calculation in MFiX - I will follow up on this.

I’d like to know more about the plot you posted - which pair of monitors is that? Can you also provide the data files?

Be patient, we’ll get this sorted out :slight_smile:

  • Charles

I also wanted to mention that you can plot monitors directly in the MFiX GUI and they will update as the simulation runs.

Hi again - we have identified a bug in the standard deviation calculation - an accumulator variable was not getting correctly reset to zero. This will be fixed in the upcoming 20.1.1 release which will be available in the next couple of weeks.

  • Charles

Thank you so much cgw for your assistance. I am very grateful.

Hello cgw , the pair of plots I posted are for the particle velocity ( horizontal component) at the center of the fluidized bed (i.e. x/X dimensionless lateral position). The monitors for the particle velocity are 1. volume averaged to compute the mean lateral profile from the time series and 2) standard deviation for computation of the granular temperature i.e. particle velocity variance or square of the standard deviation. The sigma from the volume averaged particle velocity time series is in essence the bubble-like or turbulent granular temperature and my objective is to compute the particle or laminar granular temperature. I am assuming calculating the standard deviation at each time step would give me this parameter.
You are right I am getting the same values you have displayed, I think I must have defined the monitor types wrongly. Thank you so much for your detailed explanation.