pressureDensityCorrector (1d, 2d, 3d)

Computes the pressure and density in a nodalArray and modifies the pressure and density if they are below basement values. This is a simple way to prevent pressures and densities from becoming too small but is also non-conservative.

Data

out (string vector)
Output 1 stores the nodalArray that will have its pressure and density corrected. The nodalArray must have the same number of components as is required by the chosen model.

Parameters

model (string)
The model equation used for determining how to compute pressure and density. The model must be a fluid model such as eulerEqn. Will not work with maxwellEqn since no pressure or density is defined. When the model is initialized it will request additional variables required by that model, for example gasGamma and mu0 for MHD type equations.
basementDensity (float)
basementDensity used in determining when to switch between accurate and positive solutions. Default is 0.0.
basementPressure (float)
basementPressure used in determining when to switch between accurate and positive solutions. Default is 0.0.

Example

<Updater correct>
  kind = pressureDensityCorrector2d
  model = eulerEqn
  basementDensity = BASEMENT_DENSITY
  basementPressure = BASEMENT_PRESSURE
  gasGamma = GAS_GAMMA
  onGrid = domain
  out = [q]
</Updater>