createFields.H
Go to the documentation of this file.
1 #include "createRDeltaT.H"
2 
3 Info<< "Reading thermophysical properties\n" << endl;
4 autoPtr<rhoReactionThermo> pThermo(rhoReactionThermo::New(mesh));
5 rhoReactionThermo& thermo = pThermo();
6 thermo.validate(args.executable(), "h", "e");
7 
8 SLGThermo slgThermo(mesh, thermo);
9 
10 basicSpecieMixture& composition = thermo.composition();
11 PtrList<volScalarField>& Y = composition.Y();
12 
13 const word inertSpecie(thermo.lookup("inertSpecie"));
14 if (!composition.species().found(inertSpecie))
15 {
17  << "Inert specie " << inertSpecie << " not found in available species "
18  << composition.species()
19  << exit(FatalIOError);
20 }
21 
22 Info<< "Creating field rho\n" << endl;
24 (
25  IOobject
26  (
27  "rho",
28  runTime.timeName(),
29  mesh,
30  IOobject::NO_READ,
31  IOobject::AUTO_WRITE
32  ),
33  thermo.rho()
34 );
35 
36 volScalarField& p = thermo.p();
37 
38 Info<< "\nReading field U\n" << endl;
40 (
41  IOobject
42  (
43  "U",
44  runTime.timeName(),
45  mesh,
46  IOobject::MUST_READ,
47  IOobject::AUTO_WRITE
48  ),
49  mesh
50 );
51 
52 #include "compressibleCreatePhi.H"
53 
54 Info<< "Creating turbulence model\n" << endl;
55 autoPtr<compressible::turbulenceModel> turbulence
56 (
58  (
59  rho,
60  U,
61  phi,
62  thermo
63  )
64 );
65 
66 Info<< "Creating combustion model\n" << endl;
67 autoPtr<CombustionModel<rhoReactionThermo>> combustion
68 (
70 );
71 
72 Info<< "Creating field dpdt\n" << endl;
74 (
75  IOobject
76  (
77  "dpdt",
78  runTime.timeName(),
79  mesh
80  ),
81  mesh,
82  dimensionedScalar("dpdt", p.dimensions()/dimTime, 0)
83 );
84 
85 Info<< "Creating field kinetic energy K\n" << endl;
86 volScalarField K("K", 0.5*magSqr(U));
87 
88 
89 #include "readGravitationalAcceleration.H"
90 #include "readhRef.H"
91 #include "gh.H"
92 
93 
95 (
96  IOobject
97  (
98  "p_rgh",
99  runTime.timeName(),
100  mesh,
101  IOobject::MUST_READ,
102  IOobject::AUTO_WRITE
103  ),
104  mesh
105 );
106 
107 // Force p_rgh to be consistent with p
108 p_rgh = p - rho*gh;
109 
110 pressureControl pressureControl(p, rho, pimple.dict(), false);
111 
112 mesh.setFluxRequired(p_rgh.name());
113 
114 multivariateSurfaceInterpolationScheme<scalar>::fieldTable fields;
115 
116 forAll(Y, i)
117 {
118  fields.add(Y[i]);
119 }
120 fields.add(thermo.he());
121 
123 (
124  IOobject
125  (
126  "Qdot",
127  runTime.timeName(),
128  mesh,
129  IOobject::READ_IF_PRESENT,
130  IOobject::AUTO_WRITE
131  ),
132  mesh,
134 );
135 
136 #include "createMRF.H"
137 #include "createRadiationModel.H"
138 #include "createClouds.H"
139 #include "createSurfaceFilmModel.H"
140 #include "createFvOptions.H"
forAll(Y, i)
Definition: createFields.H:99
const word & executable() const
Name of executable without the path.
Definition: argListI.H:30
pimpleNoLoopControl & pimple
surfaceScalarField & phi
errorManipArg< error, int > exit(error &err, const int errNo=1)
Definition: errorManip.H:124
volScalarField p_rgh(IOobject("p_rgh", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh)
SLGThermo slgThermo(mesh, thermo)
Info<< "Reading initial conditions.\"<< endl;IOdictionary initialConditions(IOobject("initialConditions", runTime.constant(), mesh, IOobject::MUST_READ_IF_MODIFIED, IOobject::NO_WRITE));scalar p0=readScalar(initialConditions.lookup("p"));scalar T0=readScalar(initialConditions.lookup("T"));# 24 "/home/ubuntu/OpenFOAM-6/applications/solvers/combustion/chemFoam/createFields.H" 2 Info<< "Reading thermophysical properties\"<< endl;autoPtr< rhoReactionThermo > pThermo(rhoReactionThermo::New(mesh))
engineTime & runTime
Ostream & endl(Ostream &os)
Add newline and flush stream.
Definition: Ostream.H:256
volVectorField U(IOobject("U", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), mesh, dimensionedVector("zero", dimVelocity, Zero))
rhoReactionThermo & thermo
Definition: createFields.H:28
GeometricField< vector, fvPatchField, volMesh > volVectorField
Definition: volFieldsFwd.H:55
CGAL::Exact_predicates_exact_constructions_kernel K
multivariateSurfaceInterpolationScheme< scalar >::fieldTable fields
Definition: createFields.H:97
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
Definition: volFieldsFwd.H:52
volScalarField & dpdt
rho
Definition: createFields.H:81
const dimensionSet dimVolume(pow3(dimLength))
Definition: dimensionSets.H:58
dynamicFvMesh & mesh
pressureControl & pressureControl
dimensioned< scalar > magSqr(const dimensioned< Type > &)
Info<< "Reading field U\"<< endl;volVectorField U(IOobject("U", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);volScalarField rho(IOobject("rho", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), thermo.rho());volVectorField rhoU(IOobject("rhoU", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), rho *U);volScalarField rhoE(IOobject("rhoE", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), rho *(e+0.5 *magSqr(U)));surfaceScalarField pos(IOobject("pos", runTime.timeName(), mesh), mesh, dimensionedScalar("pos", dimless, 1.0));surfaceScalarField neg(IOobject("neg", runTime.timeName(), mesh), mesh, dimensionedScalar("neg", dimless, -1.0));surfaceScalarField phi("phi", fvc::flux(rhoU));Info<< "Creating turbulence model\"<< endl;autoPtr< compressible::turbulenceModel > turbulence(compressible::turbulenceModel::New(rho, U, phi, thermo))
Definition: createFields.H:94
#define FatalIOErrorIn(functionName, ios)
Report an error message using Foam::FatalIOError.
Definition: error.H:325
const dimensionSet dimEnergy
Info<< "Creating combustion model\"<< endl;autoPtr< CombustionModel< psiReactionThermo > > combustion(CombustionModel< psiReactionThermo >::New(thermo, turbulence()))
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
Definition: dimensionSets.H:51
const volScalarField & gh
messageStream Info
Foam::argList args(argc, argv)
const word inertSpecie(thermo.lookup("inertSpecie"))
Creates and initialises the face-flux field phi.
volScalarField Qdot(IOobject("Qdot", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), mesh, dimensionedScalar("Qdot", dimEnergy/dimVolume/dimTime, 0.0))
IOerror FatalIOError