Extends base solid chemistry model by adding a thermo package, and ODE functions. More...
#include <solidChemistryModel.H>


Public Member Functions | |
| TypeName ("solidChemistryModel") | |
| Runtime type information. | |
| solidChemistryModel (typename CompType::reactionThermo &thermo) | |
| Construct from thermo. | |
| virtual | ~solidChemistryModel () |
| Destructor. | |
| const PtrList< Reaction< SolidThermo > > & | reactions () const |
| The reactions. | |
| label | nReaction () const |
| The number of reactions. | |
| virtual scalarField | omega (const scalarField &c, const scalar T, const scalar p, const bool updateC0=false) const =0 |
| dc/dt = omega, rate of change in concentration, for each species | |
| virtual scalar | omega (const Reaction< SolidThermo > &r, const scalarField &c, const scalar T, const scalar p, scalar &pf, scalar &cf, label &lRef, scalar &pr, scalar &cr, label &rRef) const =0 |
| Return the reaction rate for reaction r and the reference. | |
| virtual scalar | omegaI (label iReaction, const scalarField &c, const scalar T, const scalar p, scalar &pf, scalar &cf, label &lRef, scalar &pr, scalar &cr, label &rRef) const =0 |
| Return the reaction rate for iReaction and the reference. | |
| virtual void | calculate ()=0 |
| Calculates the reaction rates. | |
| const volScalarField::Internal & | RRs (const label i) const |
| Return const access to the chemical source terms for solids. | |
| tmp< volScalarField::Internal > | RRs () const |
| Return total solid source term. | |
| tmp< DimensionedField< scalar, volMesh > > | RRsHs () const |
| Return net solid sensible enthalpy. | |
| virtual scalar | solve (const scalar deltaT)=0 |
| Solve the reaction system for the given time step. | |
| virtual scalar | solve (const scalarField &deltaT) |
| Solve the reaction system for the given time step. | |
| virtual tmp< volScalarField > | tc () const |
| Return the chemical time scale. | |
| virtual tmp< volScalarField > | Qdot () const |
| Return the heat release rate [kg/m/s3]. | |
| virtual label | nEqns () const =0 |
| Number of ODE's to solve. | |
| virtual void | derivatives (const scalar t, const scalarField &c, scalarField &dcdt) const =0 |
| Calculate the derivatives in dydx. | |
| virtual void | jacobian (const scalar t, const scalarField &c, scalarField &dcdt, scalarSquareMatrix &dfdc) const =0 |
| Calculate the Jacobian of the system. | |
| virtual void | solve (scalarField &c, scalar &T, scalar &p, scalar &deltaT, scalar &subDeltaT) const =0 |
| Public Member Functions inherited from ODESystem | |
| ODESystem () | |
| Construct null. | |
| virtual | ~ODESystem ()=default |
| Destructor. | |
Protected Member Functions | |
| PtrList< volScalarField::Internal > & | RRs () |
| Write access to source terms for solids. | |
| void | setCellReacting (const label celli, const bool active) |
| Set reacting status of cell, celli. | |
Protected Attributes | |
| PtrList< volScalarField > & | Ys_ |
| Reference to solid mass fractions. | |
| const PtrList< Reaction< SolidThermo > > & | reactions_ |
| Reactions. | |
| const PtrList< SolidThermo > & | solidThermo_ |
| Thermodynamic data of solids. | |
| label | nSolids_ |
| Number of solid components. | |
| label | nReaction_ |
| Number of solid reactions. | |
| PtrList< volScalarField::Internal > | RRs_ |
| List of reaction rate per solid [kg/m3/s]. | |
| List< bool > | reactingCells_ |
| List of active reacting cells. | |
Extends base solid chemistry model by adding a thermo package, and ODE functions.
Introduces chemistry equation system and evaluation of chemical source terms.
Definition at line 59 of file solidChemistryModel.H.
| solidChemistryModel | ( | typename CompType::reactionThermo & | thermo | ) |
Construct from thermo.
Definition at line 28 of file solidChemistryModel.C.
References composition, Foam::dimMass, Foam::dimTime, Foam::dimVolume, forAll, mesh, name, IOobjectOption::NO_READ, IOobjectOption::NO_WRITE, nReaction_, nSolids_, ODESystem::ODESystem(), reactingCells_, reactions_, RRs_, solidThermo_, timeName, Y, Ys_, and Foam::Zero.

|
virtual |
Destructor.
Definition at line 82 of file solidChemistryModel.C.
|
inlineprotected |
Write access to source terms for solids.
Definition at line 28 of file solidChemistryModelI.H.
References RRs_.
Referenced by RRs(), and RRsHs().

|
protected |
Set reacting status of cell, celli.
Definition at line 139 of file solidChemistryModel.C.
References reactingCells_.
| TypeName | ( | "solidChemistryModel< CompType, SolidThermo >" | ) |
Runtime type information.
|
inline |
|
inline |
The number of reactions.
Definition at line 44 of file solidChemistryModelI.H.
References nReaction_.
|
pure virtual |
dc/dt = omega, rate of change in concentration, for each species
Implemented in pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hConstSolidThermoPhysics, Foam::gasHThermoPhysics >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hExpKappaConstSolidThermoPhysics, Foam::gasHThermoPhysics >, and pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hPowerSolidThermoPhysics, Foam::gasHThermoPhysics >.
|
pure virtual |
Return the reaction rate for reaction r and the reference.
species and characteristic times
Implemented in pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hConstSolidThermoPhysics, Foam::gasHThermoPhysics >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hExpKappaConstSolidThermoPhysics, Foam::gasHThermoPhysics >, and pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hPowerSolidThermoPhysics, Foam::gasHThermoPhysics >.
|
pure virtual |
Return the reaction rate for iReaction and the reference.
species and characteristic times
Implemented in pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hConstSolidThermoPhysics, Foam::gasHThermoPhysics >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hExpKappaConstSolidThermoPhysics, Foam::gasHThermoPhysics >, and pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hPowerSolidThermoPhysics, Foam::gasHThermoPhysics >.
|
pure virtual |
Calculates the reaction rates.
Implemented in pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hConstSolidThermoPhysics, Foam::gasHThermoPhysics >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hExpKappaConstSolidThermoPhysics, Foam::gasHThermoPhysics >, and pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hPowerSolidThermoPhysics, Foam::gasHThermoPhysics >.
|
inline |
Return const access to the chemical source terms for solids.
Definition at line 53 of file solidChemistryModelI.H.
References RRs_.
|
inline |
Return total solid source term.
Definition at line 64 of file solidChemistryModelI.H.
References Foam::dimMass, Foam::dimTime, Foam::dimVolume, mesh, DimensionedField< Type, GeoMesh >::New(), IOobjectOption::NO_REGISTER, nSolids_, RRs(), RRs_, and Foam::Zero.

|
inline |
Return net solid sensible enthalpy.
Definition at line 88 of file solidChemistryModelI.H.
References Foam::dimEnergy, Foam::dimTime, Foam::dimVolume, forAll, mesh, DimensionedField< Type, GeoMesh >::New(), IOobjectOption::NO_REGISTER, nSolids_, basicThermo::p(), p, RRs(), RRs_, solidThermo_, basicThermo::T(), Foam::T(), and Foam::Zero.

|
pure virtual |
Solve the reaction system for the given time step.
and return the characteristic time
Implemented in pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hConstSolidThermoPhysics, Foam::gasHThermoPhysics >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hExpKappaConstSolidThermoPhysics, Foam::gasHThermoPhysics >, and pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hPowerSolidThermoPhysics, Foam::gasHThermoPhysics >.
|
virtual |
Solve the reaction system for the given time step.
and return the characteristic time
Definition at line 90 of file solidChemistryModel.C.
References NotImplemented.
|
virtual |
Return the chemical time scale.
Definition at line 102 of file solidChemistryModel.C.
References NotImplemented, and GeometricField< scalar, fvPatchField, volMesh >::null().

|
virtual |
Return the heat release rate [kg/m/s3].
Definition at line 111 of file solidChemistryModel.C.
References Foam::dimEnergy, Foam::dimTime, Foam::dimVolume, forAll, GeometricField< scalar, fvPatchField, volMesh >::New(), IOobjectOption::NO_REGISTER, Qdot(), RRs_, solidThermo_, Ys_, and Foam::Zero.
Referenced by Qdot().


|
pure virtual |
Number of ODE's to solve.
Implements ODESystem.
Implemented in pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hConstSolidThermoPhysics, Foam::gasHThermoPhysics >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hExpKappaConstSolidThermoPhysics, Foam::gasHThermoPhysics >, and pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hPowerSolidThermoPhysics, Foam::gasHThermoPhysics >.
|
pure virtual |
Calculate the derivatives in dydx.
Implements ODESystem.
Implemented in pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hConstSolidThermoPhysics, Foam::gasHThermoPhysics >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hExpKappaConstSolidThermoPhysics, Foam::gasHThermoPhysics >, and pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hPowerSolidThermoPhysics, Foam::gasHThermoPhysics >.
|
pure virtual |
Calculate the Jacobian of the system.
Need by the stiff-system solvers
Implements ODESystem.
Implemented in pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hConstSolidThermoPhysics, Foam::gasHThermoPhysics >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hExpKappaConstSolidThermoPhysics, Foam::gasHThermoPhysics >, and pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hPowerSolidThermoPhysics, Foam::gasHThermoPhysics >.
|
pure virtual |
Implemented in pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hConstSolidThermoPhysics, Foam::gasHThermoPhysics >, pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hExpKappaConstSolidThermoPhysics, Foam::gasHThermoPhysics >, and pyrolysisChemistryModel< Foam::basicSolidChemistryModel, Foam::hPowerSolidThermoPhysics, Foam::gasHThermoPhysics >.
|
protected |
Reference to solid mass fractions.
Definition at line 82 of file solidChemistryModel.H.
Referenced by pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::calculate(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::pyrolysisChemistryModel(), Qdot(), solidChemistryModel(), and pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::solve().
|
protected |
Reactions.
Definition at line 87 of file solidChemistryModel.H.
Referenced by pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::jacobian(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::omega(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::omegaI(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::pyrolysisChemistryModel(), reactions(), and solidChemistryModel().
|
protected |
Thermodynamic data of solids.
Definition at line 92 of file solidChemistryModel.H.
Referenced by pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::derivatives(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::omega(), Qdot(), RRsHs(), and solidChemistryModel().
|
protected |
Number of solid components.
Definition at line 97 of file solidChemistryModel.H.
Referenced by pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::calculate(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::derivatives(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::jacobian(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::omega(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::pyrolysisChemistryModel(), RRs(), RRsHs(), solidChemistryModel(), and pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::solve().
|
protected |
Number of solid reactions.
Definition at line 102 of file solidChemistryModel.H.
Referenced by nReaction(), and solidChemistryModel().
|
protected |
List of reaction rate per solid [kg/m3/s].
Definition at line 107 of file solidChemistryModel.H.
Referenced by pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::calculate(), pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::pyrolysisChemistryModel(), Qdot(), RRs(), RRs(), RRs(), RRsHs(), solidChemistryModel(), and pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::solve().
|
protected |
List of active reacting cells.
Definition at line 112 of file solidChemistryModel.H.
Referenced by pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::calculate(), setCellReacting(), solidChemistryModel(), and pyrolysisChemistryModel< CompType, SolidThermo, GasThermo >::solve().