Foam::psiThermo::psiThermo(const fvMesh& mesh, const word& phaseName) : fluidThermo(mesh, phaseName), psi_ ( IOobject ( phasePropertyName("thermo:psi"), mesh.time().timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE ), mesh, dimensionSet(0, -2, 2, 0, 0) ), mu_ ( IOobject ( phasePropertyName("thermo:mu"), mesh.time().timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE ), mesh, dimensionSet(1, -1, -1, 0, 0) ) {}
Foam::compressibleTwoPhaseMixtureThermo::compressibleTwoPhaseMixtureThermo ( const fvMesh& mesh ) : rhoThermo(mesh, word::null), compressibleTwoPhaseMixture(mesh, *this), pMin_(this->lookup("pMin")), thermoLiq_(NULL), thermoGas_(NULL), he_ ( IOobject ( phasePropertyName("h"), mesh.time().timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE ), mesh, dimEnergy/dimMass, this->heBoundaryTypes(), this->heBoundaryBaseTypes() ) { //limit pressure before proceeding p_ = max(p_, pMin_); thermoLiq_ .reset ( new simplePhasePsiThermo(mesh, this->subDict(liqPhaseName())) ); thermoGas_.reset ( new simplePhasePsiThermo(mesh, this->subDict(gasPhaseName())) ); he_ = YLiq()*thermoLiq_->he() + YGas()*thermoGas_->he(); heBoundaryCorrection(he_); correct(); }
Foam::solidThermo::solidThermo ( const fvMesh& mesh, const word& phaseName ) : basicThermo(mesh, phaseName), rho_ ( IOobject ( phasePropertyName("thermo:rho"), mesh.time().timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE ), mesh, dimDensity ) {}