YEqn.H
Go to the documentation of this file.
1 tmp<fv::convectionScheme<scalar> > mvConvection
2 (
4  (
5  mesh,
6  fields,
7  phi,
8  mesh.divScheme("div(phi,Yi_h)")
9  )
10 );
11 
12 
13 {
14  combustion->correct();
15  dQ = combustion->dQ();
16  label inertIndex = -1;
17  volScalarField Yt(0.0*Y[0]);
18 
19  forAll(Y, i)
20  {
21  if (Y[i].name() != inertSpecie)
22  {
23  volScalarField& Yi = Y[i];
24 
25  fvScalarMatrix YEqn
26  (
27  fvm::ddt(rho, Yi)
28  + mvConvection->fvmDiv(phi, Yi)
29  - fvm::laplacian(turbulence->alphaEff(), Yi)
30  ==
31  parcels.SYi(i, Yi)
32  + fvOptions(rho, Yi)
33  + combustion->R(Yi)
34  + surfaceFilm.Srho(i)
35  );
36 
37  YEqn.relax();
38 
39  fvOptions.constrain(YEqn);
40 
41  YEqn.solve(mesh.solver("Yi"));
42 
43  fvOptions.correct(Yi);
44 
45  Yi.max(0.0);
46  Yt += Yi;
47  }
48  else
49  {
50  inertIndex = i;
51  }
52  }
53 
54  Y[inertIndex] = scalar(1) - Yt;
55  Y[inertIndex].max(0.0);
56 }
volScalarField Yt(0.0 *Y[0])
Info<< "Creating combustion model\n"<< endl;autoPtr< combustionModels::psiCombustionModel > combustion(combustionModels::psiCombustionModel::New( mesh ))
Info<< "Creating field dpdt\n"<< endl;volScalarField dpdt(IOobject("dpdt", runTime.timeName(), mesh), mesh, dimensionedScalar("dpdt", p.dimensions()/dimTime, 0));Info<< "Creating field kinetic energy K\n"<< endl;volScalarField K("K", 0.5 *magSqr(U));volScalarField p_rgh(IOobject("p_rgh", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);p_rgh=p-rho *gh;mesh.setFluxRequired(p_rgh.name());multivariateSurfaceInterpolationScheme< scalar >::fieldTable fields
Definition: createFields.H:127
word name(const complex &)
Return a string representation of a complex.
Definition: complex.C:47
const word inertSpecie(thermo.lookup("inertSpecie"))
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Definition: label.H:59
tmp< GeometricField< Type, fvPatchField, volMesh > > laplacian(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
Definition: fvcLaplacian.C:45
autoPtr< compressible::turbulenceModel > turbulence
Definition: createFields.H:23
tmp< GeometricField< Type, fvPatchField, volMesh > > ddt(const dimensioned< Type > dt, const fvMesh &mesh)
Definition: fvcDdt.C:45
dynamicFvMesh & mesh
autoPtr< BasicCompressibleTurbulenceModel > New(const volScalarField &rho, const volVectorField &U, const surfaceScalarField &phi, const typename BasicCompressibleTurbulenceModel::transportModel &transport, const word &propertiesName)
fv::IOoptionList & fvOptions
fvMatrix< scalar > fvScalarMatrix
Definition: fvMatricesFwd.H:42
tmp< fv::convectionScheme< scalar > > mvConvection(fv::convectionScheme< scalar >::New( mesh, fields, phi, mesh.divScheme("div(phi,Yi_h)") ))
GeometricField< scalar, fvPatchField, volMesh > volScalarField
Definition: volFieldsFwd.H:52
label inertIndex
Definition: YEqn.H:15
surfaceScalarField & phi
Y[inertIndex]
Definition: YEqn.H:51
dQ
Definition: YEqn.H:14
forAll(Y, i)
Definition: YEqn.H:18
filmModelType & surfaceFilm