Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::Gulders::Su0pTphi ( const volScalarField& p, const volScalarField& Tu, scalar phi ) const { tmp<volScalarField> tSu0 ( new volScalarField ( IOobject ( "Su0", p.time().timeName(), p.db(), IOobject::NO_READ, IOobject::NO_WRITE ), p.mesh(), dimensionedScalar("Su0", dimVelocity, 0.0) ) ); volScalarField& Su0 = tSu0(); forAll(Su0, celli) { Su0[celli] = Su0pTphi(p[celli], Tu[celli], phi, 0.0); }
Foam::tmp<Foam::volScalarField> Foam::consumptionSpeed::omega0Sigma ( const volScalarField& sigma ) { tmp<volScalarField> tomega0 ( new volScalarField ( IOobject ( "omega0", sigma.time().timeName(), sigma.db(), IOobject::NO_READ, IOobject::NO_WRITE ), sigma.mesh(), dimensionedScalar ( "omega0", dimensionSet(1, -2, -1, 0, 0, 0, 0), 0 ) ) ); volScalarField& omega0 = tomega0(); volScalarField::InternalField& iomega0 = omega0.internalField(); forAll(iomega0, celli) { iomega0[celli] = omega0Sigma(sigma[celli], 1.0); }
inline tmp<volScalarField> rhoMagSqr<scalar>::operator() ( const volScalarField& phi ) const { const volScalarField& rho = phi.db().objectRegistry::lookupObject<volScalarField>("rho"); return phi/rho; }
thermalModel::thermalModel(const volScalarField& T) : IOdictionary ( IOobject ( "thermalProperties", T.time().constant(), T.db(), IOobject::MUST_READ, IOobject::NO_WRITE ) ), T_(T), lawPtr_(thermalLaw::New("law", T_, subDict("thermal"))) {}
Foam::XiModel::XiModel ( const dictionary& XiProperties, const hhuCombustionThermo& thermo, const compressible::RASModel& turbulence, const volScalarField& Su, const volScalarField& rho, const volScalarField& b, const surfaceScalarField& phi ) : XiModelCoeffs_ ( XiProperties.subDict ( word(XiProperties.lookup("XiModel")) + "Coeffs" ) ), thermo_(thermo), turbulence_(turbulence), Su_(Su), rho_(rho), b_(b), phi_(phi), Xi_ ( IOobject ( "Xi", b.time().timeName(), b.db(), IOobject::MUST_READ, IOobject::AUTO_WRITE ), b.mesh() ) {}
Foam::radiation::fvDOM::fvDOM(const volScalarField& T) : radiationModel(typeName, T), G_ ( IOobject ( "G", mesh_.time().timeName(), T.db(), IOobject::NO_READ, IOobject::AUTO_WRITE ), mesh_, dimensionedScalar("G", dimMass/pow3(dimTime), 0.0) ), Qr_ ( IOobject ( "Qr", mesh_.time().timeName(), T.db(), IOobject::NO_READ, IOobject::AUTO_WRITE ), mesh_, dimensionedScalar("Qr", dimMass/pow3(dimTime), 0.0) ), a_ ( IOobject ( "a", mesh_.time().timeName(), T.db(), IOobject::NO_READ, IOobject::AUTO_WRITE ), mesh_, dimensionedScalar("a", dimless/dimLength, 0.0) ), e_ ( IOobject ( "e", mesh_.time().timeName(), T.db(), IOobject::NO_READ, IOobject::NO_WRITE ), mesh_, dimensionedScalar("a", dimless/dimLength, 0.0) ), E_ ( IOobject ( "E", mesh_.time().timeName(), T.db(), IOobject::NO_READ, IOobject::NO_WRITE ), mesh_, dimensionedScalar("E", dimMass/dimLength/pow3(dimTime), 0.0) ), nTheta_(readLabel(coeffs_.lookup("nTheta"))), nPhi_(readLabel(coeffs_.lookup("nPhi"))), nRay_(0), nLambda_(absorptionEmission_->nBands()), aLambda_(nLambda_), blackBody_(nLambda_, T), IRay_(0), convergence_(coeffs_.lookupOrDefault<scalar>("convergence", 0.0)), maxIter_(coeffs_.lookupOrDefault<label>("maxIter", 50)) { if (mesh_.nSolutionD() == 3) //3D { nRay_ = 4*nPhi_*nTheta_; IRay_.setSize(nRay_); scalar deltaPhi = mathematicalConstant::pi/(2.0*nPhi_); scalar deltaTheta = mathematicalConstant::pi/nTheta_; label i = 0; for (label n = 1; n <= nTheta_; n++) { for (label m = 1; m <= 4*nPhi_; m++) { scalar thetai = (2.0*n - 1.0)*deltaTheta/2.0; scalar phii = (2.0*m - 1.0)*deltaPhi/2.0; IRay_.set ( i, new radiativeIntensityRay ( *this, mesh_, phii, thetai, deltaPhi, deltaTheta, nLambda_, absorptionEmission_, blackBody_ ) ); i++; } } } else { if (mesh_.nSolutionD() == 2) //2D (X & Y) { scalar thetai = mathematicalConstant::piByTwo; scalar deltaTheta = mathematicalConstant::pi; nRay_ = 4*nPhi_; IRay_.setSize(nRay_); scalar deltaPhi = mathematicalConstant::pi/(2.0*nPhi_); label i = 0; for (label m = 1; m <= 4*nPhi_; m++) { scalar phii = (2.0*m - 1.0)*deltaPhi/2.0; IRay_.set ( i, new radiativeIntensityRay ( *this, mesh_, phii, thetai, deltaPhi, deltaTheta, nLambda_, absorptionEmission_, blackBody_ ) ); i++; } } else //1D (X) { scalar thetai = mathematicalConstant::piByTwo; scalar deltaTheta = mathematicalConstant::pi; nRay_ = 2; IRay_.setSize(nRay_); scalar deltaPhi = mathematicalConstant::pi; label i = 0; for (label m = 1; m <= 2; m++) { scalar phii = (2.0*m - 1.0)*deltaPhi/2.0; IRay_.set ( i, new radiativeIntensityRay ( *this, mesh_, phii, thetai, deltaPhi, deltaTheta, nLambda_, absorptionEmission_, blackBody_ ) ); i++; } } } // Construct absorption field for each wavelength forAll(aLambda_, lambdaI) { aLambda_.set ( lambdaI, new volScalarField ( IOobject ( "aLambda_" + Foam::name(lambdaI) , mesh_.time().timeName(), T.db(), IOobject::NO_READ, IOobject::NO_WRITE ), a_ ) ); }