Monitors ======== Monitors capture data from a running simulation into file for plotting and analysis. Monitor definition ------------------ Data (such as volume fraction, pressure, velocity, etc.) for a given monitor region is written to a CSV file while the solver is running. The following input is used to define monitors, preceded by the prefix ``mfix``: +-------------------------+------------------------------------------------------+-------------+-----------+ | | Description | Type | Default | +=========================+======================================================+=============+===========+ | monitors | Names of the monitors to be computed. | Strings | None | +-------------------------+------------------------------------------------------+-------------+-----------+ Region selection ---------------- To define a monitor, a region must already be defined in the regions inputs ``regions``. A monitor region is a single point, plane, or volume. Multiple regions cannot be combined for a monitor. The following input must be preceded by the prefix ``mfix.monitors``: +-----------------------+-----------------------------------------------------------------------+-------------+-----------+ | | Description | Type | Default | +=======================+=======================================================================+=============+===========+ | [monitor_name].region | Specify the region in which the monitor will be computed. | String | None | +-----------------------+-----------------------------------------------------------------------+-------------+-----------+ .. code-block:: none # regionA and regionB must be defined in the "regions" inputs section mfix.monitors.my_monitor0.region = regionA mfix.monitors.my_monitor1.region = regionB Monitor data will be output to a file with name given by the input ``plot_file``, and the extension ``.csv`` is automatically added. The monitor output file is in Comma Separated Value (CSV) format. The first line of the file provides header information. The following inputs must be preceded by the prefix ``mfix.monitors``: +-----------------------------------+----------------------------------------------------------+-------------+-----------+ | | Description | Type | Default | +===================================+==========================================================+=============+===========+ | [monitor_name] | Monitor type. | String | None | +-----------------------------------+----------------------------------------------------------+-------------+-----------+ | [monitor_name].plot_file | Name of the file for monitor output. | String | None | +-----------------------------------+----------------------------------------------------------+-------------+-----------+ | [monitor_name].plot_int | Interval in time steps for saving monitor data (0 to | Int | 0 | | | disable). | | | | | | | | +-----------------------------------+----------------------------------------------------------+-------------+-----------+ | [monitor_name].plot_per_approx | Interval (approximate) in simulation time for saving | Real | 0 | | | monitor data (0 to disable). Only one of ``plot_int` or | | | | | ``plot_per_approx`` may be defined. | | | +-----------------------------------+----------------------------------------------------------+-------------+-----------+ | [monitor_name].output.openmode | Select open mode for the monitor output file. | String | app | | | | | | | | Options: | | | | | | | | | | * ``app`` - append to the file if it already exists | | | | | * ``trunc`` - overwrite the output file if it exists | | | +-----------------------------------+----------------------------------------------------------+-------------+-----------+ | [monitor_name].output.setw | Field width for output file. | Int | 0 | +-----------------------------------+----------------------------------------------------------+-------------+-----------+ | [monitor_name].output.setfill | Fill character for output file. | Char | '' | +-----------------------------------+----------------------------------------------------------+-------------+-----------+ | [monitor_name].output.setprecision| Sets the decimal precision to be used to format | Int | 0 | | | floating-point values in the output file | | | +-----------------------------------+----------------------------------------------------------+-------------+-----------+ | [monitor_name].output.format | Sets the format flags. Options: | String | "" | | | | | | | | * ``defaultfloat`` | | | | | * ``fixed`` | | | | | * ``scientific`` | | | +-----------------------------------+----------------------------------------------------------+-------------+-----------+ .. code-block:: none mfix.monitors.my_monitor0.plot_file = monitor0_output mfix.monitors.my_monitor0.plot_int = 10 mfix.monitors.my_monitor1.plot_file = monitor1_output mfix.monitors.my_monitor1.plot_per_approx = 0.01 Monitor variables ----------------- The variables to be monitored can be specified in the inputs by including the following input preceded by the prefix ``mfix.monitors``: +-------------------------+--------------------------------------------------------------------+-------------+-----------+ | | Description | Type | Default | +=========================+====================================================================+=============+===========+ | [monitor_name].variables| Define which variables are to be monitored by this monitor | Strings | None | +-------------------------+--------------------------------------------------------------------+-------------+-----------+ .. code-block:: none mfix.monitors = my_monitor0 my_monitor1 mfix.monitors.my_monitor0.variables = T_g vel_g p_g gp_y X_gk mfix.monitors.my_monitor1.variables = density drag_y T_s txfr_vel_x Eulerian monitors ----------------- Several different types of monitors are available. A monitor type applies an operator (for example a sum, an area integral or a volume integral) to the variable. The dimensionality of the region determines which operators are available. The table below summarizes the nomenclature used to describe the monitor operators: ========================= ========================================= Symbol Description ========================= ========================================= :math:`\phi_{ijk}` Variable value at indexed cell :math:`\varepsilon_{ijk}` Phase **volume fraction** at indexed cell :math:`\rho_{ijk}` Phase **density** at indexed cell :math:`\vec{v}_{ijk}` Phase **velocity** at indexed cell :math:`A_{ijk}` Cross-sectional area of cell :math:`V_{ijk}` Volume of indexed cell ========================= ========================================= The following table lists all the fluid phase variables that can be monitored: +------------------------------+-----------------------------------------------------------------------------------------+ | | Description | +==============================+=========================================================================================+ | T_g | fluid temperature | +------------------------------+-----------------------------------------------------------------------------------------+ | X_gk | fluid species mass fractions (monitor all the fluid species) | +------------------------------+-----------------------------------------------------------------------------------------+ | X_gk_[species_name] | fluid `species_name` mass fraction (only species `species_name` is monitored) | +------------------------------+-----------------------------------------------------------------------------------------+ | chem_txfr_X_gk | rate of mass transferred to the fluid phase due to heterogeneous chemical reactions | | | (monitor all fluid species) | +------------------------------+-----------------------------------------------------------------------------------------+ | chem_txfr_X_gk_[species_name]| fluid `species_name` rate of mass transferred due to heterogeneous chemical reactions | | | (only species `species_name` is monitored) | +------------------------------+-----------------------------------------------------------------------------------------+ | chem_txfr_h | rate of enthalpy transferred to the fluid phase due to heterogeneous chemical reactions | +------------------------------+-----------------------------------------------------------------------------------------+ | chem_txfr_vel_[x|y|z] | x, y, or z component of the rate of velocity transferred due to heterogeneous reactions | +------------------------------+-----------------------------------------------------------------------------------------+ | chem_txfr_velocity | rate of velocity transferred to the fluid phase due to heterogeneous chemical reactions | | | (all three components) | +------------------------------+-----------------------------------------------------------------------------------------+ | divtau | divergence of the viscous stress tensor (all three components) | +------------------------------+-----------------------------------------------------------------------------------------+ | divtau_[x|y|z] | x, y, or z component of the divergence of the viscous stress tensor | +------------------------------+-----------------------------------------------------------------------------------------+ | ep_g | fluid volume fraction | +------------------------------+-----------------------------------------------------------------------------------------+ | gp | fluid pressure gradient (all three components) | +------------------------------+-----------------------------------------------------------------------------------------+ | gp_[x|y|z] | x, y, or z component of the fluid pressure gradient | +------------------------------+-----------------------------------------------------------------------------------------+ | h_g | fluid enthalpy | +------------------------------+-----------------------------------------------------------------------------------------+ | ones | value of :math:`\phi_{ijk}` is set to 1 in each fluid cell | +------------------------------+-----------------------------------------------------------------------------------------+ | p_g | fluid pressure | +------------------------------+-----------------------------------------------------------------------------------------+ | ro_g | fluid density | +------------------------------+-----------------------------------------------------------------------------------------+ | trac | tracer | +------------------------------+-----------------------------------------------------------------------------------------+ | txfr_beta | drag coefficient | +------------------------------+-----------------------------------------------------------------------------------------+ | txfr_gamma | convection coefficient | +------------------------------+-----------------------------------------------------------------------------------------+ | txfr_gammaTp | convection coefficient multiplied by the solids temperature | +------------------------------+-----------------------------------------------------------------------------------------+ | txfr_vel_[x|y|z] | x, y, or z component of the interphase velocity transferred to the fluid | +------------------------------+-----------------------------------------------------------------------------------------+ | txfr_velocity | interphase velocity transferred to the fluid (all three components) | +------------------------------+-----------------------------------------------------------------------------------------+ | vel_g | fluid velocity (all three components) | +------------------------------+-----------------------------------------------------------------------------------------+ | vel_g_[x|y|z] | x, y, or z component of the fluid velocity | +------------------------------+-----------------------------------------------------------------------------------------+ | vort | fluid vorticity (all three components) | +------------------------------+-----------------------------------------------------------------------------------------+ | vort[x|y|z] | x, y, or z component of the fluid vorticity | +------------------------------+-----------------------------------------------------------------------------------------+ Uniform scalar field ~~~~~~~~~~~~~~~~~~~~ The following table lists all the fluid phase space-uniform variables that can be monitored: +--------------------------+-----------------------------------------------------------------------------------------+ | | Description | +==========================+=========================================================================================+ | thermo_p_g | fluid thermodynamic pressure | +--------------------------+-----------------------------------------------------------------------------------------+ For a uniform scalar field, the monitor data value is the value of the variable at current time: Uniform value +-------------------------------------+ | Eulerian::UniformScalarField::Value | +-------------------------------------+ Value of the uniform field quantity in the selected region. .. math:: \phi_{ijk} Point region ~~~~~~~~~~~~ For a point region, the monitor data value is the value of the variable at that point: Point value +------------------------------+ | Eulerian::PointRegion::Value | +------------------------------+ Value of the field quantity at the selected point. .. math:: \phi_{ijk} Area or volume region ~~~~~~~~~~~~~~~~~~~~~ The following monitor types are valid for area and volume regions: Sum +-----------------------------+ | Eulerian::AreaRegion::Sum | +-----------------------------+ | Eulerian::VolumeRegion::Sum | +-----------------------------+ Sum of all values of the field quantity in the selected region. .. math:: \sum_{ijk}\phi_{ijk} Min +-----------------------------+ | Eulerian::AreaRegion::Min | +-----------------------------+ | Eulerian::VolumeRegion::Min | +-----------------------------+ Minimum value of the field quantity in the selected region. .. math:: \min_{ijk} \phi_{ijk} Max +-----------------------------+ | Eulerian::AreaRegion::Max | +-----------------------------+ | Eulerian::VolumeRegion::Max | +-----------------------------+ Maximum value of the field quantity in the selected region. .. math:: \max_{ijk} \phi_{ijk} Average +---------------------------------+ | Eulerian::AreaRegion::Average | +---------------------------------+ | Eulerian::VolumeRegion::Average | +---------------------------------+ Average value of the field quantity in the selected region where :math:`N` is the total number of observations (cells) in the selected region. .. math:: \phi_0 = \frac{\sum_{ijk} \phi_{ijk}}{N} Standard deviation +-------------------------------------------+ | Eulerian::AreaRegion::StandardDeviation | +-------------------------------------------+ | Eulerian::VolumeRegion::StandardDeviation | +-------------------------------------------+ Standard deviation of the field quantity in the selected region where :math:`\phi_0` is the average of the variable in the selected region. .. math:: \sigma_{\phi} = \sqrt{\frac{ \sum_{ijk} (\phi_{ijk}-\phi_{0})^2 }{N}} Surface integrals ~~~~~~~~~~~~~~~~~ The following types are only valid for area regions: Area +---------------------------------+ | Eulerian::SurfaceIntegral::Area | +---------------------------------+ Area of selected region is computed by summing the areas of the facets that define the surface. .. math:: \int dA = \sum_{ijk} A_{ijk} Area-weighted average +------------------------------------------------+ | Eulerian::SurfaceIntegral::AreaWeightedAverage | +------------------------------------------------+ Area-weighted average is computed by dividing the summation of the product of the selected variable and facet area by the total area of the region. .. math:: \frac{\int\phi dA}{A} = \frac{\sum_{ijk}{\phi_{ijk} A_{ijk}}}{\sum_{ijk}{A_{ijk}}} Flow rate +-------------------------------------+ | Eulerian::SurfaceIntegral::FlowRate | +-------------------------------------+ Flow rate of a field variable through a surface is computed by summing the product of the phase volume fraction, density, the selected field variable, phase velocity normal to the facet :math:`v_n`, and the facet area. .. math:: \int\varepsilon\rho\phi{v_n}dA = \sum_{ijk}\varepsilon_{ijk}\rho_{ijk}\phi_{ijk} {v}_{n,ijk} A_{ijk} Mass flow rate +-----------------------------------------+ | Eulerian::SurfaceIntegral::MassFlowRate | +-----------------------------------------+ Mass flow rate through a surface is computed by summing the product of the phase volume fraction, density, phase velocity normal to the facet :math:`v_n`, and the facet area. .. math:: \int\varepsilon\rho{v_n} dA = \sum_{ijk}\varepsilon_{ijk}\rho_{ijk}{v}_{n,ijk} A_{ijk} Mass-weighted average +------------------------------------------------+ | Eulerian::SurfaceIntegral::MassWeightedAverage | +------------------------------------------------+ Mass flow rate through a surface is computed by summing the product of the phase volume fraction, density, phase velocity normal to the facet, and the facet area. .. math:: \frac{\int\varepsilon\rho\phi{v_n}dA}{\int\varepsilon\rho{v_n}dA} = \frac{\sum_{ijk}\varepsilon_{ijk}\rho_{ijk}\phi_{ijk} {v}_{n,ijk} A_{ijk}}{\sum_{ijk}\varepsilon_{ijk}\rho_{ijk} {v}_{n,ijk} A_{ijk}} Volume flow rate +-------------------------------------------+ | Eulerian::SurfaceIntegral::VolumeFlowRate | +-------------------------------------------+ Volume flow rate through a surface is computed by summing the product of the phase volume fraction, phase velocity normal to the facet :math:`v_n`, and the facet area. .. math:: \int\varepsilon{v_n}dA = \sum_{ijk}\varepsilon_{ijk}{v}_{n,ijk} A_{ijk} Volume integrals ~~~~~~~~~~~~~~~~ The following types are only valid for volume regions: Volume +----------------------------------+ | Eulerian::VolumeIntegral::Volume | +----------------------------------+ Volume is computed by summing all of the cell volumes in the selected region. .. math:: \int dV = \sum_{ijk}{ V_{ijk}} Volume integral +------------------------------------------+ | Eulerian::VolumeIntegral::VolumeIntegral | +------------------------------------------+ Volume integral is computed by summing the product of the selected field variable and the cell volume. .. math:: \int \phi dV = \sum_{ijk}{\phi_{ijk} V_{ijk}} Volume-weighted average +-------------------------------------------------+ | Eulerian::VolumeIntegral::VolumeWeightedAverage | +-------------------------------------------------+ Volume-weighted average is computed by dividing the summation of the product of the selected field variable and cell volume by the sum of the cell volumes. .. math:: \frac{\int\phi dV}{V} = \frac{\sum_{ijk}{\phi_{ijk} V_{ijk}}}{\sum_{ijk}{V_{ijk}}} Mass-weighted integral +------------------------------------------------+ | Eulerian::VolumeIntegral::MassWeightedIntegral | +------------------------------------------------+ Mass-weighted integral is computed by summing the product of phase volume fraction, density, selected field variable, and cell volume. .. math:: \int \varepsilon\rho\phi dV = \sum_{ijk}\varepsilon_{ijk}\rho_{ijk}\phi_{ijk} V_{ijk} Mass-weighted average +-----------------------------------------------+ | Eulerian::VolumeIntegral::MassWeightedAverage | +-----------------------------------------------+ Mass-weighted average is computed by dividing the sum of the product of phase volume fraction, density, selected field variable, and cell volume by the summation of the product of the phase volume fraction, density, and cell volume. .. math:: \frac{\int\phi\rho\varepsilon dV}{\int\rho\varepsilon dV} = \frac{\sum_{ijk}\varepsilon_{ijk}\rho_{ijk}\phi_{ijk} V_{ijk}}{\sum_{ijk}\varepsilon_{ijk}\rho_{ijk} V_{ijk}} Lagrangian monitors ------------------- Several different types of monitors are available. A monitor type applies an operator (for example, a sum, an area integral or a volume integral) to the variable. The dimensionality of the region determines which operators are available. The table below summarizes the nomenclature used to describe the monitor operators: ========================= ==================================================== Symbol Description ========================= ==================================================== :math:`\phi_p` Variable value of the indexed particle :math:`m_p` **Mass** of the indexed particle :math:`V_p` **Volume** of the indexed particle :math:`\mathcal{w}_p` **Statistical weight** of the indexed particle [#]_ ========================= ==================================================== .. [#] *The statistical weight is one for DEM simulations.* The following table lists all the solids phase variables that can be monitored: +--------------------------+-----------------------------------------------------------------------------------------+ | | Description | +==========================+=========================================================================================+ | cp_s | particle specific heat coefficient | +--------------------------+-----------------------------------------------------------------------------------------+ | cpu | particle CPU | +--------------------------+-----------------------------------------------------------------------------------------+ | density | particle density | +--------------------------+-----------------------------------------------------------------------------------------+ | drag | particle drag (all three components) | +--------------------------+-----------------------------------------------------------------------------------------+ | drag_[x|y|z] | x, y, or z component of the particle drag | +--------------------------+-----------------------------------------------------------------------------------------+ | dragcoeff | particle drag coefficient | +--------------------------+-----------------------------------------------------------------------------------------+ | id | particle id | +--------------------------+-----------------------------------------------------------------------------------------+ | k_energy | particle kinetic energy | +--------------------------+-----------------------------------------------------------------------------------------+ | mass | particle mass | +--------------------------+-----------------------------------------------------------------------------------------+ | omega | particle angular velocity (all three components) | +--------------------------+-----------------------------------------------------------------------------------------+ | omega_[x|y|z] | x, y, or z component of the particle angular velocity | +--------------------------+-----------------------------------------------------------------------------------------+ | oneOverI | inverse of particle moment of inertia | +--------------------------+-----------------------------------------------------------------------------------------+ | ones | value of :math:`\phi_p` is set to 1 for each solid particle | +--------------------------+-----------------------------------------------------------------------------------------+ | phase | particle phase | +--------------------------+-----------------------------------------------------------------------------------------+ | pos_[x|y|z] | x, y, or z component of the particle position | +--------------------------+-----------------------------------------------------------------------------------------+ | position | particle position (all three components) | +--------------------------+-----------------------------------------------------------------------------------------+ | radius | particle radius | +--------------------------+-----------------------------------------------------------------------------------------+ | statwt | particle statistical weight | +--------------------------+-----------------------------------------------------------------------------------------+ | T_s | particle temperature | +--------------------------+-----------------------------------------------------------------------------------------+ | txfr_X_sn | rate of mass transferred due to heterogeneous chemical reactions (for all the species) | +--------------------------+-----------------------------------------------------------------------------------------+ | txfr_X_sn_[species_name] | solids `species_name` rate of transfer due to heterogeneous reactions (only species | | | `species_name` is monitored) | +--------------------------+-----------------------------------------------------------------------------------------+ | txfr_h | rate of enthalpy transferred due to heterogeneous chemical reactions | +--------------------------+-----------------------------------------------------------------------------------------+ | txfr_vel_[x|y|z] | x, y, or z components of the transferred velocity due to heterogeneous reactions | +--------------------------+-----------------------------------------------------------------------------------------+ | txfr_velocity | rate of velocity transferred to the fluid phase due to heterogeneous chemical reactions | | | (all three components) | +--------------------------+-----------------------------------------------------------------------------------------+ | vel_[x|y|z] | x, y, or z component of the particle velocity | +--------------------------+-----------------------------------------------------------------------------------------+ | velocity | particle velocity (all three components) | +--------------------------+-----------------------------------------------------------------------------------------+ | volume | particle volume | +--------------------------+-----------------------------------------------------------------------------------------+ | X_sn | particle species mass fractions (for all the solids species) | +--------------------------+-----------------------------------------------------------------------------------------+ | X_sn_[species_name] | solids `species_name` fraction (only species `species_name` is monitored) | +--------------------------+-----------------------------------------------------------------------------------------+ General particle properties ~~~~~~~~~~~~~~~~~~~~~~~~~~~ General particle properties can be obtained from area (plane) and volume regions. For area regions, all particles in Eulerian cells that intersect the plane are used in evaluating the average. Sum +----------------------------------+ | Lagrangian::GeneralProperty::Sum | +----------------------------------+ Sum of particle property :math:`\phi_p` in the selected region is obtained as: .. math:: \sum_p w_p \phi_p Mass-weighted sum +----------------------------------------------+ | Lagrangian::GeneralProperty::MassWeightedSum | +----------------------------------------------+ Mass-weighted sum of particle property :math:`\phi_p` in the selected region is obtained as: .. math:: \sum_p w_p m_p \phi_p Min +----------------------------------+ | Lagrangian::GeneralProperty::Min | +----------------------------------+ Minimum value of particle property :math:`\phi_p` is the selected region is obtained as: .. math:: \min_p \phi_p Max +----------------------------------+ | Lagrangian::GeneralProperty::Max | +----------------------------------+ Maximum value of particle property :math:`\phi_p` is the selected region is obtained as: .. math:: \max_p \phi_p Averaged particle properties ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Particle properties can be averaged over area (plane) and volume regions. For area regions, all particles in Eulerian cells that intersect the plane are used in evaluating the average. Average +---------------------------------------+ | Lagrangian::AveragedProperty::Average | +---------------------------------------+ The average value of particle property :math:`\phi_p` in the selected region is calculated using the following expression. For DEM simulations, the statistical weight of a particle, :math:`w_p`, is one such that the sum of the weights is the total number of observations in the selected region. .. math:: \bar{\phi} = \frac{\sum_p w_p \phi_p}{\sum_p w_p} Standard deviation +-------------------------------------------------+ | Lagrangian::AveragedProperty::StandardDeviation | +-------------------------------------------------+ Standard deviation of particle property :math:`phi_p` in the selected region is calculated using the following expression. :math:`\bar{\phi}` is the averaged variable in the selected region. .. math:: \sigma_{\phi} = \sqrt{\frac{ \sum_p w_p (\phi_p-\bar{\phi})^2 }{\sum_p w_p}} Mass-weighted average +---------------------------------------------------+ | Lagrangian::AveragedProperty::MassWeightedAverage | +---------------------------------------------------+ Mass-weighted average value of particle property :math:`\phi_p` in the selected region is obtained as: .. math:: \bar{\phi}_m = \frac{\sum_{p} w_p m_p \phi_p}{\sum_p w_p m_p } Volume-weighted average +-----------------------------------------------------+ | Lagrangian::AveragedProperty::VolumeWeightedAverage | +-----------------------------------------------------+ Volume-weighted average value of particle property :math:`\phi_p` in the selected region is obtained as: .. math:: \bar{\phi}_v = \frac{\sum_{p} w_p V_p \phi_p}{\sum_p w_p V_p} Flow rates ~~~~~~~~~~ For Lagrangian monitors of type ``FlowRate``, the region of definition must be 3-dimensional. Only particles inside this volume are considered. Additionally, a flow plane must be specified. For particles in the region of definition, their positions are extrapolated based on current velocity to determine if they will cross the specified flow plane in the next time step. To specify the flow plane, the following input for a monitor ``[monitor_name]`` of type ``FlowRate`` can be used, preceded by the prefix ``mfix.monitors``: +---------------------+-----------------------------------------------------------------------+-------------+-----------+ | | Description | Type | Default | +=====================+=======================================================================+=============+===========+ | [monitor_name].plane| Specifies the plane through which the flow rate of particles in | String | None | | | the monitoring region will be computed. | | | +---------------------+-----------------------------------------------------------------------+-------------+-----------+ Flow rate +--------------------------------+ | Lagrangian::FlowRate::FlowRate | +--------------------------------+ Net flow rate of a general particle property :math:`\phi_p` is computed by summing the properties of the set of particles projected to have crossed the flow plane., :math:`\Gamma`. .. math:: \sum_{p \in \Gamma} w_p \phi_p \frac{v_p}{\left|v_p\right|} Mass-weighted flow rate +--------------------------------------------+ | Lagrangian::FlowRate::MassWeightedFlowRate | +--------------------------------------------+ Net mass-weighted flow rate is the sum of the general particle property :math:`\phi_p` multiplied by the particle mass, :math:`m_p` of the set of particles projected to have crossed the flow plane, :math:`\Gamma`. .. math:: \sum_{p \in \Gamma} w_p m_p \phi_p \frac{v_p}{\left|v_p\right|} Volume-weighted flow rate +----------------------------------------------+ | Lagrangian::FlowRate::VolumeWeightedFlowRate | +----------------------------------------------+ Net volume-weighted flow rate is the sum of the general particle property :math:`\phi_p` multiplied by the particle volume, :math:`V_p` of the set of particles projected to have crossed the flow plane, :math:`\Gamma`. .. math:: \sum_{p \in \Gamma}\phi_p w_p V_p \frac{v_p}{\left|v_p\right|} .. code-block:: none mfix.monitors = my_monitor0 my_monitor1 mfix.monitors.my_monitor0 = Eulerian::VolumeIntegral::MassWeightedIntegral mfix.monitors.my_monitor1 = Lagrangian::Average::VolumeWeightedAverage