Go to the documentation of this file.00001 Info<< "Reading thermophysical properties\n" << endl;
00002
00003 autoPtr<psiChemistryModel> pChemistry
00004 (
00005 psiChemistryModel::New(mesh)
00006 );
00007 psiChemistryModel& chemistry = pChemistry();
00008
00009 hsCombustionThermo& thermo = chemistry.thermo();
00010
00011 basicMultiComponentMixture& composition = thermo.composition();
00012 PtrList<volScalarField>& Y = composition.Y();
00013
00014 word inertSpecie(thermo.lookup("inertSpecie"));
00015
00016 if (!composition.contains(inertSpecie))
00017 {
00018 FatalErrorIn(args.executable())
00019 << "Specified inert specie '" << inertSpecie << "' not found in "
00020 << "species list. Available species:" << composition.species()
00021 << exit(FatalError);
00022 }
00023
00024 volScalarField& p = thermo.p();
00025 volScalarField& hs = thermo.hs();
00026 const volScalarField& T = thermo.T();
00027 const volScalarField& psi = thermo.psi();
00028
00029 volScalarField rho
00030 (
00031 IOobject
00032 (
00033 "rho",
00034 runTime.timeName(),
00035 mesh,
00036 IOobject::NO_READ,
00037 IOobject::AUTO_WRITE
00038 ),
00039 thermo.rho()
00040 );
00041
00042 Info<< "\nReading field U\n" << endl;
00043 volVectorField U
00044 (
00045 IOobject
00046 (
00047 "U",
00048 runTime.timeName(),
00049 mesh,
00050 IOobject::MUST_READ,
00051 IOobject::AUTO_WRITE
00052 ),
00053 mesh
00054 );
00055
00056 #include <finiteVolume/compressibleCreatePhi.H>
00057
00058 DimensionedField<scalar, volMesh> kappa
00059 (
00060 IOobject
00061 (
00062 "kappa",
00063 runTime.timeName(),
00064 mesh,
00065 IOobject::NO_READ,
00066 IOobject::AUTO_WRITE
00067 ),
00068 mesh,
00069 dimensionedScalar("zero", dimless, 0.0)
00070 );
00071
00072 Info<< "Creating turbulence model\n" << endl;
00073 autoPtr<compressible::turbulenceModel> turbulence
00074 (
00075 compressible::turbulenceModel::New
00076 (
00077 rho,
00078 U,
00079 phi,
00080 thermo
00081 )
00082 );
00083
00084 Info<< "Creating field DpDt\n" << endl;
00085 volScalarField DpDt
00086 (
00087 "DpDt",
00088 fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p)
00089 );
00090
00091 multivariateSurfaceInterpolationScheme<scalar>::fieldTable fields;
00092
00093 forAll(Y, i)
00094 {
00095 fields.add(Y[i]);
00096 }
00097 fields.add(hs);
00098
00099 DimensionedField<scalar, volMesh> chemistrySh
00100 (
00101 IOobject
00102 (
00103 "chemistry::Sh",
00104 runTime.timeName(),
00105 mesh,
00106 IOobject::NO_READ,
00107 IOobject::NO_WRITE
00108 ),
00109 mesh,
00110 dimensionedScalar("chemistry::Sh", dimEnergy/dimTime/dimVolume, 0.0)
00111 );