Public Member Functions | List of all members
DAC< CompType, ThermoType > Class Template Reference

The Dynamic Adaptive Chemistry (DAC) method [1] simplifies the chemistry using the matrix rAB defined by (DRGEP algorithm [2]) More...

Inheritance diagram for DAC< CompType, ThermoType >:
Inheritance graph
[legend]
Collaboration diagram for DAC< CompType, ThermoType >:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("DAC")
 
 DAC (const IOdictionary &dict, TDACChemistryModel< CompType, ThermoType > &chemistry)
 
virtual ~DAC ()
 
virtual void reduceMechanism (const scalarField &c, const scalar T, const scalar p)
 
- Public Member Functions inherited from chemistryReductionMethod< CompType, ThermoType >
 TypeName ("chemistryReductionMethod")
 
 declareRunTimeSelectionTable (autoPtr, chemistryReductionMethod, dictionary,(const IOdictionary &dict, TDACChemistryModel< CompType, ThermoType > &chemistry),(dict, chemistry))
 
 chemistryReductionMethod (const IOdictionary &dict, TDACChemistryModel< CompType, ThermoType > &chemistry)
 
virtual ~chemistryReductionMethod ()
 
bool active () const
 
bool log () const
 
const List< bool > & activeSpecies () const
 
label NsSimp ()
 
label nSpecie ()
 
scalar tolerance () const
 

Additional Inherited Members

- Static Public Member Functions inherited from chemistryReductionMethod< CompType, ThermoType >
static autoPtr< chemistryReductionMethod< CompType, ThermoType > > New (const IOdictionary &dict, TDACChemistryModel< CompType, ThermoType > &chemistry)
 
- Protected Attributes inherited from chemistryReductionMethod< CompType, ThermoType >
const IOdictionarydict_
 
const dictionary coeffsDict_
 
Switch active_
 
Switch log_
 
TDACChemistryModel< CompType, ThermoType > & chemistry_
 
List< boolactiveSpecies_
 
label NsSimp_
 
const label nSpecie_
 
scalar tolerance_
 

Detailed Description

template<class CompType, class ThermoType>
class Foam::chemistryReductionMethods::DAC< CompType, ThermoType >

The Dynamic Adaptive Chemistry (DAC) method [1] simplifies the chemistry using the matrix rAB defined by (DRGEP algorithm [2])

|sum_i=1->Nr vAi wi dBi| rAB = ————————— , max(PA, CA)

PA = sum_i=1->Nr (max (0, vAi wi)) -> production of species A

CA = sum_i=1->Nr (max (0, -vAi wi)) -> consumption of species A

where i is the reaction index, Nr the number of reactions, vAi is the net stoechiometric coefficient of species A in the ith reaction (vAi = v''-v') , wi is the progress variable of reaction i and dBi equals 1 if reaction i involves B and O otherwise.

rAB shows the error introduced to the production rates of A when B and all the reactions including it are removed. It is computed as in [3] so that the algorithm is O(Nr).

DAC uses an initial set of species that represent the major parts of the combustion mechanism, i.e. H2/O2, fuel decomposition and CO2 production. Usually, it includes the fuel, HO2 and CO. Then it computes the dependence of these set to the other species. This is done by introducing R-value defined by

R_V0 (V) = max_SP(product(rij)),

where SP is the set of all possible paths leading from V0 to V and product(rij) is the chain product of the weights of the edges along the given path. The R-value for the initial set species is 1.

When the R-value of a species is larger than a user-defined tolerance then the species is included in the simplified mechanism. Otherwise, the species is removed along with all the reactions including it.

During this process, instead of looking over all species like described in [1], the algorithm implemented here creates dynamic list to retain the initialized edges only (see [3]).

References:

    [1] Liang, L., Stevens, J. G., & Farrell, J. T. (2009).
    A dynamic adaptive chemistry scheme for reactive flow computations.
    Proceedings of the Combustion Institute, 32(1), 527-534.

    [2] Pepiot-Desjardins, P., & Pitsch, H. (2008).
    An efficient error-propagation-based reduction method for large
    chemical kinetic mechanisms.
    Combustion and Flame, 154(1), 67-81.

    [3] Lu, T., & Law, C. K. (2006).
    Linear time reduction of large kinetic mechanisms with directed
    relation graph: n-Heptane and iso-octane.
    Combustion and Flame, 144(1), 24-36.
Source files

Definition at line 101 of file DAC.H.

Constructor & Destructor Documentation

◆ DAC()

DAC ( const IOdictionary dict,
TDACChemistryModel< CompType, ThermoType > &  chemistry 
)

◆ ~DAC()

~DAC
virtual

Definition at line 235 of file DAC.C.

Member Function Documentation

◆ TypeName()

TypeName ( "DAC< CompType, ThermoType >"  )

◆ reduceMechanism()

void reduceMechanism ( const scalarField c,
const scalar  T,
const scalar  p 
)
virtual

The documentation for this class was generated from the following files: