EEqn.H
Go to the documentation of this file.
1 {
2  volScalarField& he = thermo.he();
3 
5  (
6  fvm::ddt(rho, he)
7  + (
8  mvConvection.valid()
9  ? mvConvection->fvmDiv(phi, he)
10  : fvm::div(phi, he)
11  )
12  + fvc::ddt(rho, K) + fvc::div(phi, K)
13  + (
14  he.name() == "e"
15  ? mvConvection.valid()
16  ? mvConvection->fvcDiv(fvc::absolute(phi, rho, U), p/rho)
18  : -dpdt
19  )
20  + thermophysicalTransport.divq(he)
21  ==
22  rho*(U&g)
23  + reaction.Qdot()
24  + fvModels.source(rho, he)
25  );
26 
27  EEqn.relax();
28 
30 
31  EEqn.solve();
32 
34 
35  thermo.correct();
36 
37  Info<< "Min/max T:" << min(thermo.T()).value() << ' '
38  << max(thermo.T()).value() << endl;
39 }
fvMatrix< scalar > fvScalarMatrix
Definition: fvMatricesFwd.H:42
fluidReactionThermo & thermo
Definition: createFields.H:28
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
combustionModel & reaction
tmp< GeometricField< Type, fvPatchField, volMesh > > div(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
Definition: fvcDiv.C:47
Ostream & endl(Ostream &os)
Add newline and flush stream.
Definition: Ostream.H:251
CGAL::Exact_predicates_exact_constructions_kernel K
scalar Qdot
Definition: solveChemistry.H:2
tmp< GeometricField< Type, fvPatchField, volMesh > > ddt(const dimensioned< Type > dt, const fvMesh &mesh)
Definition: fvcDdt.C:45
tmp< fv::convectionScheme< scalar > > mvConvection(fv::convectionScheme< scalar >::New(mesh, fields, phi, mesh.divScheme("div(phi,ft_b_ha_hau)")))
fvScalarMatrix EEqn(fvm::ddt(rho, he)+mvConvection->fvmDiv(phi, he)+fvc::ddt(rho, K)+fvc::div(phi, K)+(he.name()=="e" ? mvConvection->fvcDiv(fvc::absolute(phi, rho, U), p/rho) :-dpdt)+thermophysicalTransport->divq(he)==reaction->Qdot()+fvModels.source(rho, he))
GeometricField< scalar, fvPatchField, volMesh > volScalarField
Definition: volFieldsFwd.H:57
volScalarField & dpdt
Foam::fvConstraints & fvConstraints
phi
Definition: correctPhi.H:3
fluidReactionThermophysicalTransportModel & thermophysicalTransport
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
bool constrain(fvMatrix< Type > &eqn) const
Apply constraints to an equation.
Foam::fvModels & fvModels
tmp< surfaceScalarField > absolute(const tmp< surfaceScalarField > &tphi, const volVectorField &U)
Return the given relative flux in absolute form.
Definition: fvcMeshPhi.C:188
U
Definition: pEqn.H:72
fvModels source(alpha1, mixture.thermo1().rho())
messageStream Info
volScalarField & p
const dimensionedVector & g