OpenFOAM® v1612+: New solver and physical models

23/12/2016

New Eddy Dissipation Model (EDM) combustion model

A new turbulent diffusion combustion model named eddyDissipationDiffusionModel based on the principle of mixed is burnt has been implemented. The time scale is determined by the minimum of the turbulence and diffusion time scales.

The reaction rate is given by

pict\relax \special {t4ht=

Where ρ  \relax \special {t4ht=, YF  \relax \special {t4ht=, YO
   2   \relax \special {t4ht= and rs  \relax \special {t4ht= designate the mass density, fuel and oxygen mass fraction, and the stoichiometric oxygen-to-fuel mass ratio. The turbulence mixing time scale is taken from the turbulence model, in the case of the k  \relax \special {t4ht=-ε  \relax \special {t4ht= model:

pict\relax \special {t4ht=

where k  \relax \special {t4ht= is the turbulence kinetic energy and ε  \relax \special {t4ht= the eddy dissipation rate. In the laminar region, fuel-air mixing is controlled by molecular diffusion:

pict\relax \special {t4ht=

where Δ  = V 1∕3   \relax \special {t4ht=.

The EDM combustion model is derived from the singleStepReaction model, hence the mixture for the thermoType will be singleStepReactingMixture. The stoichiometric equation together with the list of species is prescribed in the $FOAM_CASE/constant/reactions file.

The following image shows the new model being applied to the compartmentFire tutorial case:

Compartment fire

Model settings, e.g. for the model constants Cd and CEDC are entered in the file $FOAM_CASE/constant/combustionProperties

combustionModel eddyDissipationDiffusionModel<psiThermoCombustion,gasHThermoPhysics>;

active          on;

eddyDissipationDiffusionModelCoeffs
{
    semiImplicit    false;
    CEDC            4;
    Cd              4;
}

Source code
$FOAM_SRC/combustionModels/eddyDissipationDiffusionModel
$FOAM_SRC/combustionModels/eddyDissipationModelBase
Examples
$FOAM_TUTORIALS/combustion/fireFoam/LES/compartmentFire

Updated heat exchanger model

The definition of the upstream temperature of the effectivenessHeatExchangerSource heater exchanger fvOption has been updated. In previous versions, the temperature was specified as a user-input. By default the temperature is now evaluated as the area average of the exchanger upstream faces. To recover the earlier behaviour, the optional primaryInletT entry should be applied:

primaryInletT   300;
Source code
$FOAM_SRC/fvOptions/sources/derived/effectivenessHeatExchangerSource

New Lagrangian injection models

The following example shows the results of a Lagrangian case whose particles are seeded using the output from the new extractEulerianParticles function object, where each Lagrangian particle is equivalent to a single Eulerian fluid element.

Source code
$FOAM_SRC/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectedParticleInjection $FOAM_SRC/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectedParticleDistributionInjection
Examples
$FOAM_TUTORIALS/multiphase/interFoam/laminar/vofToLagrangian/lagrangianParticleInjection $FOAM_TUTORIALS/multiphase/interFoam/laminar/vofToLagrangian/lagrangianDistributionInjection

New scalar transport functionality

The scalar transport function object has received multiple updates to enable:

  • frozen flow and turbulence
  • phase-constrained transport for multiphase flow

In addition, a new example shows how it can be applied to calculate the residence time for transient calculations.

Source code
$FOAM_SRC/functionObjects/solvers/scalarTransport
Residence time example
$FOAM_TUTORIALS/incompressible/pimpleFoam/RAS/TJunction
$FOAM_TUTORIALS/multiphase/interFoam/RAS/angledDuct
Phase constrained transport
$FOAM_TUTORIALS/multiphase/interFoam/RAS/waterChannel