Fluid model
The following inputs are defined using the fluid
prefix.
Description |
Type |
Default |
|
---|---|---|---|
solve |
Specify the name of the fluid or set to None to disable the fluid solver. The name assigned to the fluid solver is used to specify fluid initial and boundary conditions. |
String |
None |
viscosity |
Specify which viscosity model to use for the fluid. Available options include:
A viscosity model is required if the fluid solver is enabled. |
String |
None |
viscosity.constant |
Constant fluid viscosity.
A value is required for |
Real |
0 |
species |
Specify the species that constitute the fluid. All listed species must be properly defined. See the species definition documentation for additional details. |
String |
None |
molecular_weight |
Constant fluid molecular weight. A molecular weight should only be defined when using one of the ideal gas constraints and the species equations are not solved. |
Real |
0 |
specific_heat |
Specify which specific heat model to use for the fluid. Available options include:
A specific heat model is required if advecting enthalpy.
Furthermore, the model must be |
String |
None |
specific_heat.constant |
Constant fluid specific heat
A value is required for |
Real |
0 |
specific_heat.NASA7.a[i] |
Specific heat polynomial coefficients. Polynomial
coefficients are required if the fluid specific heat
model is Each polynomial is defined by six coefficients ( |
Real |
|
thermal_conductivity |
Specify which thermal conductivity model to use for fluid. Available options include:
A thermal conductivity model is required if advecting enthalpy. |
String |
None |
thermal_conductivity.constant |
Constant fluid thermal conductivity.
A value is required for |
Real |
0 |
thermodynamic_pressure |
Thermodynamic pressure.
A value is required when using the
|
Real |
0 |
reference_temperature |
Reference temperature used to compute specific enthalpy |
Real |
Example inputs
Incompressible fluid
The following setup shows how to define the most basic fluid model where the
only required physical property is fluid viscosity. We are using the IncompressibleFluid
constraint; therefore, the constant fluid density is defined
by the initial and boundary conditions. The fluid energy and species equations
are not solved.
mfix.constraint_type = IncompressibleFluid
mfix.advect_density = 0
mfix.advect_enthalpy = 0
mfix.solve_species = 0
# Fluid model settings
# -----------------------------------------------------------------------
fluid.solve = fluid0
fluid.viscosity = constant
fluid.viscosity.constant = 1.8e-5
# Initial Conditions
# -----------------------------------------------------------------------
ic.regions = full-domain
ic.full-domain.fluid0.volfrac = 1.0
ic.full-domain.fluid0.density = 1.0
ic.full-domain.fluid0.velocity = 0.0 0.0 0.0
# Boundary Conditions
# -----------------------------------------------------------------------
bc.regions = inlet outlet
bc.inlet = mi
bc.inlet.fluid0.volfrac = 1.0
bc.inlet.fluid0.density = 1.0
bc.inlet.fluid0.velocity = 1.0e-8 0.0 0.0
bc.outlet = po
bc.outlet.fluid0.pressure = 0.
Simple ideal gas
In the following example, we use the IdealGasOpenSystem
so that the fluid
density is calculated from the ideal gas equation of state. In addition to
viscosity, we must also provide the fluid molecular weight. The fluid energy
and species equations are not solved, but the constant fluid temperature is
required in the initial and boundary conditions to fully specify the equation
of state. Lastly, the outflow boundary pressure is taken as the thermodynamic
pressure when evaluating the equation of state.
mfix.constraint_type = IdealGasOpenSystem
mfix.advect_density = 1
mfix.advect_enthalpy = 0
mfix.solve_species = 0
# Fluid model settings
# -----------------------------------------------------------------------
fluid.solve = fluid0
fluid.viscosity = constant
fluid.viscosity.constant = 1.8e-5
fluid.molecular_weight = 29.0e-3
# Initial Conditions
# -----------------------------------------------------------------------
ic.regions = full-domain
ic.full-domain.fluid0.volfrac = 1.0
ic.full-domain.fluid0.velocity = 0.0 0.0 0.0
ic.full-domain.fluid0.temperature = 300.0
# Boundary Conditions
# -----------------------------------------------------------------------
bc.regions = inlet outlet
bc.inlet = mi
bc.inlet.fluid0.volfrac = 1.0
bc.inlet.fluid0.velocity = 1.0e-8 0.0 0.0
bc.inlet.fluid0.temperature = 300.0
bc.outlet = po
bc.outlet.fluid0.pressure = 101325.
Ideal gas with energy
In the last example, we use the IdealGasOpenSystem
, however unlike the
previous demonstration, the energy equation is solved. Therefore, we must
define the fluid viscosity, molecular weight, thermal conductivity, and
specific heat. Again, the fluid temperature is required in the initial and
boundary conditions, and the outflow boundary pressure is taken as the
thermodynamic pressure for the system.
mfix.constraint_type = IdealGasOpenSystem
mfix.advect_density = 1
mfix.advect_enthalpy = 1
mfix.solve_species = 0
# Fluid model settings
# -----------------------------------------------------------------------
fluid.solve = fluid0
fluid.viscosity = constant
fluid.viscosity.constant = 2.0e-5
fluid.thermal_conductivity = constant
fluid.thermal_conductivity.constant = 0.026
fluid.molecular_weight = 28.96518e-3
fluid.specific_heat = NASA7-poly
fluid.specific_heat.NASA7.a0 = 5.95960930E+00 3.08792717E+00
fluid.specific_heat.NASA7.a1 = 3.56839620E+00 1.24597184E-03
fluid.specific_heat.NASA7.a2 = -6.78729429E-04 -4.23718945E-07
fluid.specific_heat.NASA7.a3 = 1.55371476E-06 6.74774789E-11
fluid.specific_heat.NASA7.a4 = -3.29937060E-12 -3.97076972E-15
fluid.specific_heat.NASA7.a5 = -4.66395387E-13 -9.95262755E+02
# Initial Conditions
# -----------------------------------------------------------------------
ic.regions = full-domain
ic.full-domain.fluid0.volfrac = 1.0
ic.full-domain.fluid0.velocity = 0.0 0.0 0.0
ic.full-domain.fluid0.temperature = 300.0
# Boundary Conditions
# -----------------------------------------------------------------------
bc.regions = inlet outlet
bc.inlet = mi
bc.inlet.fluid0.volfrac = 1.0
bc.inlet.fluid0.velocity = 1.0e-8 0.0 0.0
bc.inlet.fluid0.temperature = 300.0
bc.outlet = po
bc.outlet.fluid0.pressure = 101325.
The following inputs are defined using the fluid
prefix and control the convergence criteria
of the damped Newton solver used to compute temperature from enthalpy and specific heat.
Description |
Type |
Default |
|
---|---|---|---|
newton_solver.absolute_tol |
Define absolute tolerance for the Newton solver |
Real |
1.e-8 |
newton_solver.relative_tol |
Define relative tolerance for the Newton solver |
Real |
1.e-8 |
newton_solver.max_iterations |
Define max number of iterations for the Newton solver |
int |
500 |