fix ave/euler/custom/temporal command

Syntax

fix ID group-ID ave/euler/custom/temporal euler_custom_keywords euler_custom_values weighting_factor w keyword value
  • ID, group-ID are documented in fix command

  • ave/euler/custom/temporal = style name of this fix command

  • euler_custom_keywords and euler_custom_values are documented in the fix ave/euler/custom command

  • weighting_factor = obligatory keyword

weighting_factor values = w
    w = weighting factor used for time averaging [0,1]
  • zero or more keyword/value pairs may be appended

  • keyword = enable_favre

enable_favre values = yes or no or vector
  yes = applies Favre averaging to all parameters
  no = disables Favre averaging globally (default)
  vector_properties c1 ... cn vector_variables d1 ... dm =
    sets Favre averaging for each parameter (same order as the properties keyword), ci are either yes or no and
    each variable (same order as the variables keyword), di are either yes or no

Examples

fix 1 all ave/euler/custom/temporal nevery 100 cell_size_relative 4.5 parallel no properties 1 vel weighting_factor 0.01
fix 1 all ave/euler/custom/temporal nevery 100 cell_size_relative 4.5 parallel no properties 2 vel vf variables 1 v_myVar mass weighting_factor 1e-3 enable_favre vector_properties yes no vector_variables yes

Description

Calculates cell_based averages as described in fix ave/euler/custom and averages them over time.

As the mean of each properties is calculated, also the variance can be calculated by sigma^2 = mean_square - average ^2. The time average is calculated via a sliding average avg_new = (1-weighting_factor) * avg_old + weighting_factor * current_bin_value.

The weighting_factor is used to generate a moving average, where 1/weighting_factor is proportional to the number of mesh values used for average.

Note

Since the mesh values are generated only every nevery timesteps, the weighting_factor is linked to this value. For instance, the values nevery = 1000 and weighting_factor = 0.001 mean that it takes roughly 1000*1000 timesteps so that the average value has settled for a constant field.

The keyword enable_favre can be used to perform a Favre averaging when calculating the mean. This implies that the quantity that is to be averaged is multiplied with an instantaneous particle property and normalized with the time average of this property. E.g. the formula for the Favre averaged velocity computation, where mass is the scaling property, is given by v_avg_new = (1 - weighting_factor*m_avg_old/m_avg_new)*avg_old + weighting_factor*m_current_bin_value/m_avg_new * current_bin_value. This feature is particularly important for polydisperse systems in which only conservation quantities (like momentum) reach a steady state. The scaling properties for each quantity is set in the code to a suitable one and cannot be changed.

Warning

The averaging is based on a structured grid, which does not adapt to the shape of complex walls. Thus cells near the wall may never completely fill up and averaged information such as volume fraction may be biased.

Restart, fix_modify, output, run start/stop

No information about this fix is written to binary restart files.

This fix supports fix_modify with option average = ‘start’, ‘stop’ or ‘reset’ to start, stop or reset the averaging in between two runs.

This fix computes the above-mentioned quantities for output via a dump euler/vtk/custom command. The values can only be accessed on timesteps that are multiples of nevery since that is when calculations are performed.

No parameter of this fix can be used with the start/stop keywords of the run command.

Restrictions

Volume fractions and stresses are calculated based on the assumption of a structured (equidistant regular) grid, so volume fractions and stresses near walls that are not aligned with the grid will be incorrect.

Coarse-graining information:

Using coarsegraining in combination with this command might lead to different dynamics or system state and thus to inconsistencies. However, the influence of this model on the global dynamics or system state might be small so in some cases the results may be valid. This has to be reviewed by a specialist on a case-by-case basis.

Default

enable_favre = no