TDACChemistryModel< ReactionThermo, ThermoType > Class Template Referenceabstract

Extends StandardChemistryModel by adding the TDAC method. More...

Inheritance diagram for TDACChemistryModel< ReactionThermo, ThermoType >:
[legend]

Public Member Functions

 TypeName ("TDAC")
 Runtime type information. More...
 
 TDACChemistryModel (ReactionThermo &thermo)
 Construct from thermo. More...
 
virtual ~TDACChemistryModel ()
 Destructor. More...
 
bool variableTimeStep () const
 Return true if the time-step is variable and/or non-uniform. More...
 
label timeSteps () const
 Return the number of chemistry evaluations (used by ISAT) More...
 
autoPtr< OFstreamlogFile (const word &name) const
 Create and return a TDAC log file of the given name. More...
 
PtrList< volScalarField > & Y ()
 
virtual void omega (const scalarField &c, const scalar T, const scalar p, scalarField &dcdt) const
 dc/dt = omega, rate of change in concentration, for each species More...
 
virtual scalar omega (const Reaction< ThermoType > &r, const scalarField &c, const scalar T, const scalar p, scalar &pf, scalar &cf, label &lRef, scalar &pr, scalar &cr, label &rRef) const
 Return the reaction rate for reaction r and the reference. More...
 
virtual scalar solve (const scalar deltaT)
 Solve the reaction system for the given time step. More...
 
virtual scalar solve (const scalarField &deltaT)
 Solve the reaction system for the given time step. More...
 
virtual void derivatives (const scalar t, const scalarField &c, scalarField &dcdt) const
 
void jacobian (const scalar t, const scalarField &c, scalarSquareMatrix &dfdc) const
 Pure jacobian function for tabulation. More...
 
virtual void jacobian (const scalar t, const scalarField &c, scalarField &dcdt, scalarSquareMatrix &dfdc) const
 
virtual void solve (scalarField &c, scalar &T, scalar &p, scalar &deltaT, scalar &subDeltaT) const =0
 
void setNsDAC (const label newNsDAC)
 
void setNSpecie (const label newNs)
 
scalarFieldcompleteC ()
 
scalarFieldsimplifiedC ()
 
Field< bool > & reactionsDisabled ()
 
bool active (const label i) const
 
void setActive (const label i)
 
DynamicList< label > & simplifiedToCompleteIndex ()
 
Field< label > & completeToSimplifiedIndex ()
 
const Field< label > & completeToSimplifiedIndex () const
 
List< List< specieElement > > & specieComp ()
 
autoPtr< chemistryReductionMethod< ReactionThermo, ThermoType > > & mechRed ()
 
tmp< volScalarFieldtabulationResults () const
 
void setTabulationResultsAdd (const label celli)
 
void setTabulationResultsGrow (const label celli)
 
void setTabulationResultsRetrieve (const label celli)
 
void resetTabulationResults ()
 
template<class DeltaTType >
Foam::scalar solve (const DeltaTType &deltaT)
 

Detailed Description

template<class ReactionThermo, class ThermoType>
class Foam::TDACChemistryModel< ReactionThermo, ThermoType >

Extends StandardChemistryModel by adding the TDAC method.

References:

    Contino, F., Jeanmart, H., Lucchini, T., & D’Errico, G. (2011).
    Coupling of in situ adaptive tabulation and dynamic adaptive chemistry:
    An effective method for solving combustion in engine simulations.
    Proceedings of the Combustion Institute, 33(2), 3057-3064.

    Contino, F., Lucchini, T., D'Errico, G., Duynslaegher, C.,
    Dias, V., & Jeanmart, H. (2012).
    Simulations of advanced combustion modes using detailed chemistry
    combined with tabulation and mechanism reduction techniques.
    SAE International Journal of Engines,
    5(2012-01-0145), 185-196.

    Contino, F., Foucher, F., Dagaut, P., Lucchini, T., D’Errico, G., &
    Mounaïm-Rousselle, C. (2013).
    Experimental and numerical analysis of nitric oxide effect on the
    ignition of iso-octane in a single cylinder HCCI engine.
    Combustion and Flame, 160(8), 1476-1483.

    Contino, F., Masurier, J. B., Foucher, F., Lucchini, T., D’Errico, G., &
    Dagaut, P. (2014).
    CFD simulations using the TDAC method to model iso-octane combustion
    for a large range of ozone seeding and temperature conditions
    in a single cylinder HCCI engine.
    Fuel, 137, 179-184.
Source files

Definition at line 49 of file chemistryReductionMethod.H.

Constructor & Destructor Documentation

◆ TDACChemistryModel()

TDACChemistryModel ( ReactionThermo &  thermo)

Construct from thermo.

Definition at line 38 of file TDACChemistryModel.C.

◆ ~TDACChemistryModel()

~TDACChemistryModel ( )
virtual

Destructor.

Definition at line 148 of file TDACChemistryModel.C.

Member Function Documentation

◆ TypeName()

TypeName ( "TDAC"  )

Runtime type information.

◆ variableTimeStep()

bool variableTimeStep ( ) const
inline

Return true if the time-step is variable and/or non-uniform.

Definition at line 32 of file TDACChemistryModelI.H.

Referenced by chemistryTabulationMethod< ReactionThermo, ThermoType >::variableTimeStep(), and chemPointISAT< CompType, ThermoType >::variableTimeStep().

Here is the caller graph for this function:

◆ timeSteps()

Foam::label timeSteps ( ) const
inline

Return the number of chemistry evaluations (used by ISAT)

Definition at line 40 of file TDACChemistryModelI.H.

◆ logFile()

Foam::autoPtr< Foam::OFstream > logFile ( const word name) const
inline

Create and return a TDAC log file of the given name.

Definition at line 49 of file TDACChemistryModelI.H.

◆ Y()

Definition at line 64 of file TDACChemistryModelI.H.

◆ omega() [1/2]

void omega ( const scalarField c,
const scalar  T,
const scalar  p,
scalarField dcdt 
) const
virtual

dc/dt = omega, rate of change in concentration, for each species

Definition at line 156 of file TDACChemistryModel.C.

◆ omega() [2/2]

Foam::scalar omega ( const Reaction< ThermoType > &  r,
const scalarField c,
const scalar  T,
const scalar  p,
scalar &  pf,
scalar &  cf,
label &  lRef,
scalar &  pr,
scalar &  cr,
label &  rRef 
) const
virtual

Return the reaction rate for reaction r and the reference.

species and characteristic times

Definition at line 210 of file TDACChemistryModel.C.

◆ solve() [1/4]

Foam::scalar solve ( const scalar  deltaT)
virtual

Solve the reaction system for the given time step.

and return the characteristic time

Definition at line 896 of file TDACChemistryModel.C.

◆ solve() [2/4]

Foam::scalar solve ( const scalarField deltaT)
virtual

Solve the reaction system for the given time step.

and return the characteristic time

Definition at line 911 of file TDACChemistryModel.C.

◆ derivatives()

void derivatives ( const scalar  t,
const scalarField c,
scalarField dcdt 
) const
virtual

Definition at line 319 of file TDACChemistryModel.C.

◆ jacobian() [1/2]

void jacobian ( const scalar  t,
const scalarField c,
scalarSquareMatrix dfdc 
) const

Pure jacobian function for tabulation.

Definition at line 403 of file TDACChemistryModel.C.

◆ jacobian() [2/2]

void jacobian ( const scalar  t,
const scalarField c,
scalarField dcdt,
scalarSquareMatrix dfdc 
) const
virtual

Definition at line 588 of file TDACChemistryModel.C.

◆ solve() [3/4]

virtual void solve ( scalarField c,
scalar &  T,
scalar &  p,
scalar &  deltaT,
scalar &  subDeltaT 
) const
pure virtual

◆ setNsDAC()

void setNsDAC ( const label  newNsDAC)
inline

Definition at line 101 of file TDACChemistryModelI.H.

◆ setNSpecie()

void setNSpecie ( const label  newNs)
inline

Definition at line 109 of file TDACChemistryModelI.H.

◆ completeC()

Foam::scalarField & completeC ( )
inline

Definition at line 152 of file TDACChemistryModelI.H.

◆ simplifiedC()

Foam::scalarField & simplifiedC ( )
inline

Definition at line 160 of file TDACChemistryModelI.H.

◆ reactionsDisabled()

Foam::Field< bool > & reactionsDisabled ( )
inline

Definition at line 144 of file TDACChemistryModelI.H.

◆ active()

bool active ( const label  i) const
inline

Definition at line 91 of file TDACChemistryModelI.H.

Referenced by TDACChemistryModel< CompType, ThermoType >::solve().

Here is the caller graph for this function:

◆ setActive()

void setActive ( const label  i)
inline

Definition at line 81 of file TDACChemistryModelI.H.

◆ simplifiedToCompleteIndex()

Foam::DynamicList< Foam::label > & simplifiedToCompleteIndex ( )
inline

Definition at line 118 of file TDACChemistryModelI.H.

◆ completeToSimplifiedIndex() [1/2]

Foam::Field< Foam::label > & completeToSimplifiedIndex ( )
inline

Definition at line 127 of file TDACChemistryModelI.H.

◆ completeToSimplifiedIndex() [2/2]

const Foam::Field< Foam::label > & completeToSimplifiedIndex ( ) const
inline

Definition at line 136 of file TDACChemistryModelI.H.

◆ specieComp()

Foam::List< Foam::List< Foam::specieElement > > & specieComp ( )
inline

Definition at line 168 of file TDACChemistryModelI.H.

◆ mechRed()

Foam::autoPtr< Foam::chemistryReductionMethod< ReactionThermo, ThermoType > > & mechRed ( )
inline

Definition at line 73 of file TDACChemistryModelI.H.

Referenced by binaryNode< CompType, ThermoType >::calcV().

Here is the caller graph for this function:

◆ tabulationResults()

tmp<volScalarField> tabulationResults ( ) const
inline

Definition at line 279 of file TDACChemistryModel.H.

◆ setTabulationResultsAdd()

void setTabulationResultsAdd ( const label  celli)

Definition at line 922 of file TDACChemistryModel.C.

◆ setTabulationResultsGrow()

void setTabulationResultsGrow ( const label  celli)

Definition at line 932 of file TDACChemistryModel.C.

◆ setTabulationResultsRetrieve()

void setTabulationResultsRetrieve ( const label  celli)

Definition at line 941 of file TDACChemistryModel.C.

◆ resetTabulationResults()

void resetTabulationResults ( )
inline

Definition at line 176 of file TDACChemistryModelI.H.

◆ solve() [4/4]

Foam::scalar solve ( const DeltaTType &  deltaT)

Definition at line 608 of file TDACChemistryModel.C.


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