☰
These guidelines are based on the working folder located here.
Chemistry modelling
1) Multi-species flow
1.1 The chemDicts/ folder
In the
The path to the
foamChemistryFile "$FOAM_CASE/constant/hTCReactions#name";
Available
Chemistry dict name | Reference |
---|---|
Park et al., 1993 | |
Evans, Schexnayder & Grose, 1974 | |
Park et al., 1994 | |
Dunn & Kang, 1973 | |
Evans & Schexnayder, 1980 | |
Jachimowski, 1992 | |
Jachimowski, forward reactions only, 1992 | |
Quantum-kinetics, Scanlon et al., 2015 |
1.2 Adding/deleting species
In the
species
(
N2
O2
NO
//N2+
//O2+
//NO+
N
O
//N+
//O+
//e-
);
As shown in this example, a specific order must be respected
- molecules
- charged molecules
- atoms
- charged atoms
- electrons
All species listed in the
1.3 Printing species quantities
In the
mixtureOutputs
{
molarFraction off;
numberDensity off;
partialDensity off;
partialPressure off;
degreesOfFreedom off;
vibrationalEnergy off;
}
2) Non-reacting flow
2.1 Disable chemistry
In the
active off;
3) Chemically-reacting flow
3.1 Enable chemistry
In the
active on;
In the
chemistry on;
initialChemicalTimeStep 1e-09;
where the
3.2 Implementing a chemical reaction
3.2.1 Forward reaction
In the
Coefficient | Meaning | Units |
---|---|---|
pre-exponential factor | m³/kmol/s | |
temperature exponent | - | |
temperature of activation | K |
NB: Please pay attention to the units of the pre-exponential factor,
A , when customising your ownhTCReactions#name dictionary.
The reaction
reactions
{
// Reaction no 1
oxygenAtomicNitrogenReaction
{
type irreversibleArrheniusReaction;
reaction "O2 + N = 2O + N";
A 1.0e19;
beta -1.5;
Ta 59500;
}
}
3.2.2 Reverse reaction
Additional coefficients entering into the calculation of the reverse reaction rate constant [1], k_rev, are given below
Extra coefficient | Meaning | Units |
---|---|---|
mixture number density list | m⁻³ | |
Park’s coefficients for k_rev | - |
In the
reactions
{
// Reaction no 1
oxygenAtomicNitrogenReaction
{
type reversibleArrheniusReaction;
reaction "O2 + N = 2O + N";
A 1.0e19;
beta -1.5;
Ta 59500;
ni (1e20 1e21 1e22 1e23 1e24 1e25);
A0 (1.8103 0.91354 0.64183 0.55388 0.52455 0.50989);
A1 (8.8685 9.2238 9.3331 9.3678 9.3793 9.3851);
A2 (3.5716 2.2885 1.9026 1.7763 1.7342 1.7132);
A3 (-7.3623 -6.7969 -6.6277 -6.572 -6.5534 -6.5441);
A4 (0.083861 0.046338 0.035151 0.031445 0.030209 0.029591);
}
// Reaction no 2
hydrogenAtomOxygenReaction
{
type nonEquilibriumReversibleArrheniusReaction;
reaction "H + O2 = OH + O";
forward
{
A 2.2e11;
beta 0;
Ta 8454;
}
reverse
{
A 1.42e4;
beta 0;
Ta 1664;
}
}
}
[1] C. Park. Nonequilibrium Hypersonic Aerothermodynamics, Wiley International, New York, 1990
3.2.3 Third-body interaction
In the
reactions
{
// Reaction no 1
oxygenTBReaction
{
type reversiblethirdBodyArrheniusReaction;
reaction "O2 + M = 2O + M";
A 2.0e18;
beta -1.5;
Ta 59500;
coeffs
(
("N2" 1.0)
("O2" 1.0)
("NO" 1.0)
//("N2+" 1.0)
//("O2+" 1.0)
//("NO+" 1.0)
("N" 5.0)
("O" 5.0)
//("N+" 5.0)
//("O+" 5.0)
//("e-" 0.0)
);
ni (1e20 1e21 1e22 1e23 1e24 1e25);
A0 (1.8103 0.91354 0.64183 0.55388 0.52455 0.50989);
A1 (8.8685 9.2238 9.3331 9.3678 9.3793 9.3851);
A2 (3.5716 2.2885 1.9026 1.7763 1.7342 1.7132);
A3 (-7.3623 -6.7969 -6.6277 -6.572 -6.5534 -6.5441);
A4 (0.083861 0.046338 0.035151 0.031445 0.030209 0.029591);
}
}
NB: All species present in the
species() list must be present in thecoeff() list, no more, no less.
3.3 Increase robustness
Backward reaction rates may sometimes cause problems in low-temperature regions and yield the simulation to crash. A minimum temperature value,
modifiedTemperature on;
modifiedTemperatureCoeffs
{
Tmin 800.0;
epsilon 80.0;
}
[1] L. C. Scalabrin, "Numerical Simulation of Weakly Ionized Hypersonic Flow over Reentry Capsules," PhD thesis, University of Michigan, Ann Arbor (US), 2007 [PDF→]
4) To go further: chemistry-vibration coupling
This aspect is detailed in D. Nonequilibrium.