diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H index 4519a5ed9d..7ac6d32b46 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H @@ -33,7 +33,7 @@ Description by "zeroGradient" and then corrected from the flux: \f[ - U_p = U_c - n*(n.U_c) + \frac{n*\phi_p}{|Sf|} + U_p = U_c - n (n \cdot U_c) + \frac{n \phi_p}{|S_f|} \f] where @@ -43,7 +43,7 @@ Description U_c | velocity in cells adjacent to the patch [m/s] n | patch normal vectors \phi_p | flux at the patch [m3/s or kg/s] - Sf | patch face area vectors [m2] + S_f | patch face area vectors [m2] \endvartable where diff --git a/src/regionModels/pyrolysisModels/noPyrolysis/noPyrolysis.C b/src/regionModels/pyrolysisModels/noPyrolysis/noPyrolysis.C index c9e20fed75..794b38514b 100644 --- a/src/regionModels/pyrolysisModels/noPyrolysis/noPyrolysis.C +++ b/src/regionModels/pyrolysisModels/noPyrolysis/noPyrolysis.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -26,6 +26,7 @@ License #include "noPyrolysis.H" #include "addToRunTimeSelectionTable.H" #include "volFields.H" +#include "absorptionEmissionModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionModels/pyrolysisModels/reactingOneDim/reactingOneDim.C b/src/regionModels/pyrolysisModels/reactingOneDim/reactingOneDim.C index 948d7f87a0..5c36e4ad53 100644 --- a/src/regionModels/pyrolysisModels/reactingOneDim/reactingOneDim.C +++ b/src/regionModels/pyrolysisModels/reactingOneDim/reactingOneDim.C @@ -31,6 +31,7 @@ License #include "fvcDiv.H" #include "fvcVolumeIntegrate.H" #include "fvMatrices.H" +#include "absorptionEmissionModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/temperatureThermoBaffle/temperatureThermoBaffleFvPatchScalarField.C b/src/regionModels/thermoBaffleModels/derivedFvPatchFields/temperatureThermoBaffle/temperatureThermoBaffleFvPatchScalarField.C index f3c4fd3b6d..d091336cc0 100644 --- a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/temperatureThermoBaffle/temperatureThermoBaffleFvPatchScalarField.C +++ b/src/regionModels/thermoBaffleModels/derivedFvPatchFields/temperatureThermoBaffle/temperatureThermoBaffleFvPatchScalarField.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -46,7 +46,6 @@ temperatureThermoBaffleFvPatchScalarField turbulentTemperatureCoupledBaffleMixedFvPatchScalarField(p, iF), owner_(false), baffle_(), - solidThermoType_(new primitiveEntry("thermoType", "undefined")), dict_(dictionary::null) {} @@ -69,7 +68,6 @@ temperatureThermoBaffleFvPatchScalarField ), owner_(ptf.owner_), baffle_(ptf.baffle_), - solidThermoType_(ptf.solidThermoType_().clone()), dict_(ptf.dict_) {} @@ -85,7 +83,6 @@ temperatureThermoBaffleFvPatchScalarField turbulentTemperatureCoupledBaffleMixedFvPatchScalarField(p, iF, dict), owner_(false), baffle_(), - solidThermoType_(new primitiveEntry("thermoType", "undefined")), dict_(dict) { if (!isA(patch().patch())) @@ -126,7 +123,6 @@ temperatureThermoBaffleFvPatchScalarField Info << "Creating thermal baffle" << nbrMesh << endl; baffle_.reset(baffle::New(thisMesh, dict).ptr()); owner_ = true; - solidThermoType_ = dict.lookupEntry("thermoType", false, false).clone(); baffle_->rename(nbrMesh); } } @@ -142,10 +138,10 @@ temperatureThermoBaffleFvPatchScalarField turbulentTemperatureCoupledBaffleMixedFvPatchScalarField(ptf, iF), owner_(ptf.owner_), baffle_(ptf.baffle_), - solidThermoType_(ptf.solidThermoType_().clone()), dict_(ptf.dict_) {} + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // @@ -219,13 +215,12 @@ void temperatureThermoBaffleFvPatchScalarField::write(Ostream& os) const os.writeKeyword(word(thermoModel + "Coeffs")); os << dict_.subDict(thermoModel + "Coeffs") << nl; - os << solidThermoType_() << nl; - os.writeKeyword("mixture"); os << dict_.subDict("mixture") << nl; } } + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // makePatchTypeField diff --git a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/temperatureThermoBaffle/temperatureThermoBaffleFvPatchScalarField.H b/src/regionModels/thermoBaffleModels/derivedFvPatchFields/temperatureThermoBaffle/temperatureThermoBaffleFvPatchScalarField.H index 32b63ebe39..8d58f73aa5 100644 --- a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/temperatureThermoBaffle/temperatureThermoBaffleFvPatchScalarField.H +++ b/src/regionModels/thermoBaffleModels/derivedFvPatchFields/temperatureThermoBaffle/temperatureThermoBaffleFvPatchScalarField.H @@ -139,9 +139,6 @@ class temperatureThermoBaffleFvPatchScalarField //- Thermal baffle autoPtr baffle_; - //- Solid thermo type - autoPtr solidThermoType_; - //- Dictionary dictionary dict_; diff --git a/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2D.C b/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2D.C index 124f4789b0..39f2e4cc04 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2D.C +++ b/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2D.C @@ -31,7 +31,7 @@ License #include "addToRunTimeSelectionTable.H" #include "zeroGradientFvPatchFields.H" #include "fvMatrices.H" - +#include "absorptionEmissionModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -51,7 +51,6 @@ addToRunTimeSelectionTable(thermoBaffleModel, thermoBaffle2D, dictionary); // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // - bool thermoBaffle2D::read() { this->solution().lookup("nNonOrthCorr") >> nNonOrthCorr_; @@ -158,7 +157,6 @@ void thermoBaffle2D::solveEnergy() // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - thermoBaffle2D::thermoBaffle2D ( const word& modelType, @@ -205,6 +203,14 @@ thermoBaffle2D::thermoBaffle2D dimEnergy/dimVolume/dimTime, pTraits::zero ) + ), + radiation_ + ( + radiation::radiationModel::New + ( + dict.subDict("radiation"), + thermo_->T() + ) ) { init(); @@ -257,6 +263,13 @@ thermoBaffle2D::thermoBaffle2D dimEnergy/dimVolume/dimTime, pTraits::zero ) + ), + radiation_ + ( + radiation::radiationModel::New + ( + thermo_->T() + ) ) { init(); @@ -278,17 +291,11 @@ void thermoBaffle2D::init() { label patchI = intCoupledPatchIDs_[0]; const label Qsb = Qs_.boundaryField()[patchI].size(); + if (Qsb!= thickness_.size()) { - FatalErrorIn - ( - "thermoBaffle2D::thermoBaffle2D" - "(" - " const word& modelType," - " const fvMesh& mesh," - " const dictionary& dict" - ")" - ) << "the boundary field of Qs is " + FatalErrorIn("thermoBaffle2D::init()") + << "the boundary field of Qs is " << Qsb << " and " << nl << "the field 'thickness' is " << thickness_.size() << nl << exit(FatalError); @@ -349,7 +356,8 @@ const solidThermo& thermoBaffle2D::thermo() const void thermoBaffle2D::info() const { const labelList& coupledPatches = intCoupledPatchIDs(); - forAll (coupledPatches, i) + + forAll(coupledPatches, i) { const label patchI = coupledPatches[i]; const fvPatchScalarField& ph = h_.boundaryField()[patchI]; diff --git a/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2D.H b/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2D.H index a8949e89df..52f648f8d6 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2D.H +++ b/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2D.H @@ -100,6 +100,12 @@ protected: volScalarField Q_; + // Sub models + + //- Pointer to radiation model + autoPtr radiation_; + + // Protected member functions //- Read control parameters IO dictionary diff --git a/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2DI.H b/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2DI.H index e9d60c65d8..22d675bbb5 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2DI.H +++ b/src/regionModels/thermoBaffleModels/thermoBaffle2D/thermoBaffle2DI.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -38,7 +38,6 @@ namespace thermoBaffleModels // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - inline tmp thermoBaffle2D::he ( const scalarField& p, diff --git a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.C b/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.C index 3b2c2bcb9c..ff38797a14 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.C +++ b/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -107,11 +107,12 @@ void thermoBaffleModel::init() const label patchI = intCoupledPatchIDs_[i]; const polyPatch& pp = rbm[patchI]; - if ( - !isA(pp) - && oneD_ - && !constantThickness_ - ) + if + ( + !isA(pp) + && oneD_ + && !constantThickness_ + ) { FatalErrorIn ( @@ -192,9 +193,6 @@ void thermoBaffleModel::init() } } } - - // Create radiation model - radiation_.reset(radiation::radiationModel::New(T()).ptr()); } } @@ -207,8 +205,7 @@ thermoBaffleModel::thermoBaffleModel(const fvMesh& mesh) thickness_(), delta_("delta", dimLength, 0.0), oneD_(false), - constantThickness_(true), - radiation_(NULL) + constantThickness_(true) {} @@ -224,8 +221,7 @@ thermoBaffleModel::thermoBaffleModel thickness_(), delta_("delta", dimLength, 0.0), oneD_(false), - constantThickness_(dict.lookupOrDefault("constantThickness", true)), - radiation_(NULL) + constantThickness_(dict.lookupOrDefault("constantThickness", true)) { init(); } @@ -237,8 +233,7 @@ thermoBaffleModel::thermoBaffleModel(const word& modelType, const fvMesh& mesh) thickness_(), delta_("delta", dimLength, 0.0), oneD_(false), - constantThickness_(lookupOrDefault("constantThickness", true)), - radiation_(NULL) + constantThickness_(lookupOrDefault("constantThickness", true)) { init(); } diff --git a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.H b/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.H index e9f461391f..d55d6c5ee9 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.H +++ b/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -90,9 +90,6 @@ protected: //- Is thickness constant bool constantThickness_; - //- Pointer to radiation model - autoPtr radiation_; - // Protected Member Functions @@ -157,7 +154,7 @@ public: // Selectors //- Return a reference to the selected model - static autoPtr New(const fvMesh& mesh); + static autoPtr New(const fvMesh& mesh); //- Return a reference to the selected model using dictionary static autoPtr New @@ -173,7 +170,6 @@ public: // Member Functions - // Access //- Return solid thermo diff --git a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModelNew.C b/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModelNew.C index e8c44486ff..4261b9f48f 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModelNew.C +++ b/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModelNew.C @@ -38,7 +38,6 @@ namespace thermoBaffleModels autoPtr thermoBaffleModel::New(const fvMesh& mesh) { - word modelType; { IOdictionary thermoBafflePropertiesDict @@ -56,6 +55,7 @@ autoPtr thermoBaffleModel::New(const fvMesh& mesh) thermoBafflePropertiesDict.lookup("thermoBaffleModel") >> modelType; } + Info<< "Selecting baffle model " << modelType << endl; meshConstructorTable::iterator cstrIter = @@ -82,7 +82,6 @@ autoPtr thermoBaffleModel::New const dictionary& dict ) { - word modelType = dict.lookup("thermoBaffleModel"); Info<< "Selecting baffle model " << modelType << endl; @@ -93,7 +92,7 @@ autoPtr thermoBaffleModel::New if (cstrIter == dictionaryConstructorTablePtr_->end()) { - FatalErrorIn("thermoBaffleModel::New(const fvMesh&,const dictionary&)") + FatalErrorIn("thermoBaffleModel::New(const fvMesh&, const dictionary&)") << "Unknown thermoBaffleModel type " << modelType << nl << nl << "Valid thermoBaffleModel types are:" << nl diff --git a/src/thermophysicalModels/radiationModels/Make/files b/src/thermophysicalModels/radiationModels/Make/files index 9e49da1fde..27d90bdd5e 100644 --- a/src/thermophysicalModels/radiationModels/Make/files +++ b/src/thermophysicalModels/radiationModels/Make/files @@ -13,6 +13,7 @@ radiationModel/opaqueSolid/opaqueSolid.C /* Scatter model */ submodels/scatterModel/scatterModel/scatterModel.C submodels/scatterModel/scatterModel/scatterModelNew.C +submodels/scatterModel/noScatter/noScatter.C submodels/scatterModel/constantScatter/constantScatter.C diff --git a/src/thermophysicalModels/radiationModels/derivedFvPatchFields/radiationCoupledBase/radiationCoupledBase.C b/src/thermophysicalModels/radiationModels/derivedFvPatchFields/radiationCoupledBase/radiationCoupledBase.C index bfc266ab73..5387a38a53 100644 --- a/src/thermophysicalModels/radiationModels/derivedFvPatchFields/radiationCoupledBase/radiationCoupledBase.C +++ b/src/thermophysicalModels/radiationModels/derivedFvPatchFields/radiationCoupledBase/radiationCoupledBase.C @@ -25,11 +25,10 @@ License #include "radiationCoupledBase.H" #include "volFields.H" - - #include "mappedPatchBase.H" #include "fvPatchFieldMapper.H" #include "radiationModel.H" +#include "absorptionEmissionModel.H" // * * * * * * * * * * * * * Static Member Data * * * * * * * * * * * * * * // @@ -136,10 +135,7 @@ Foam::scalarField Foam::radiationCoupledBase::emissivity() const { // Get the coupling information from the mappedPatchBase const mappedPatchBase& mpp = - refCast - ( - patch_.patch() - ); + refCast(patch_.patch()); const polyMesh& nbrMesh = mpp.sampleMesh(); @@ -153,10 +149,10 @@ Foam::scalarField Foam::radiationCoupledBase::emissivity() const // Force recalculation of mapping and schedule const mapDistribute& distMap = mpp.map(); - const fvPatch& nbrPatch = refCast - ( - nbrMesh - ).boundary()[mpp.samplePolyPatch().index()]; + const fvMesh& nbrFvMesh = refCast(nbrMesh); + + const fvPatch& nbrPatch = + nbrFvMesh.boundary()[mpp.samplePolyPatch().index()]; scalarField emissivity @@ -187,7 +183,6 @@ Foam::scalarField Foam::radiationCoupledBase::emissivity() const ) << "Unimplemented method " << method_ << endl << "Please set 'emissivity' to one of " << emissivityMethodTypeNames_.toc() - << " and 'emissivityName' to the name of the volScalar" << exit(FatalError); } break; diff --git a/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.C b/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.C index 32394da4ae..94d08934ab 100644 --- a/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.C +++ b/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -24,7 +24,6 @@ License \*---------------------------------------------------------------------------*/ #include "P1.H" -#include "addToRunTimeSelectionTable.H" #include "fvm.H" #include "absorptionEmissionModel.H" @@ -40,13 +39,7 @@ namespace Foam namespace radiation { defineTypeNameAndDebug(P1, 0); - - addToRunTimeSelectionTable - ( - radiationModel, - P1, - dictionary - ); + addToRadiationRunTimeSelectionTables(P1); } } @@ -123,6 +116,76 @@ Foam::radiation::P1::P1(const volScalarField& T) {} +Foam::radiation::P1::P1(const dictionary& dict, const volScalarField& T) +: + radiationModel(typeName, dict, T), + G_ + ( + IOobject + ( + "G", + mesh_.time().timeName(), + mesh_, + IOobject::MUST_READ, + IOobject::AUTO_WRITE + ), + mesh_ + ), + Qr_ + ( + IOobject + ( + "Qr", + mesh_.time().timeName(), + mesh_, + IOobject::NO_READ, + IOobject::AUTO_WRITE + ), + mesh_, + dimensionedScalar("Qr", dimMass/pow3(dimTime), 0.0) + ), + a_ + ( + IOobject + ( + "a", + mesh_.time().timeName(), + mesh_, + IOobject::NO_READ, + IOobject::AUTO_WRITE + ), + mesh_, + dimensionedScalar("a", dimless/dimLength, 0.0) + ), + e_ + ( + IOobject + ( + "e", + mesh_.time().timeName(), + mesh_, + IOobject::NO_READ, + IOobject::NO_WRITE + ), + mesh_, + dimensionedScalar("a", dimless/dimLength, 0.0) + ), + E_ + ( + IOobject + ( + "E", + mesh_.time().timeName(), + mesh_, + IOobject::NO_READ, + IOobject::NO_WRITE + ), + mesh_, + dimensionedScalar("E", dimMass/dimLength/pow3(dimTime), 0.0) + ) +{} + + // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::radiation::P1::~P1() diff --git a/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.H b/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.H index 1be02b649e..2077d74445 100644 --- a/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.H +++ b/src/thermophysicalModels/radiationModels/radiationModel/P1/P1.H @@ -96,6 +96,9 @@ public: //- Construct from components P1(const volScalarField& T); + //- Construct from components + P1(const dictionary& dict, const volScalarField& T); + //- Destructor virtual ~P1(); diff --git a/src/thermophysicalModels/radiationModels/radiationModel/fvDOM/fvDOM/fvDOM.C b/src/thermophysicalModels/radiationModels/radiationModel/fvDOM/fvDOM/fvDOM.C index 61f758966f..10961db032 100644 --- a/src/thermophysicalModels/radiationModels/radiationModel/fvDOM/fvDOM/fvDOM.C +++ b/src/thermophysicalModels/radiationModels/radiationModel/fvDOM/fvDOM/fvDOM.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -24,8 +24,6 @@ License \*---------------------------------------------------------------------------*/ #include "fvDOM.H" -#include "addToRunTimeSelectionTable.H" - #include "absorptionEmissionModel.H" #include "scatterModel.H" #include "constants.H" @@ -40,96 +38,14 @@ namespace Foam namespace radiation { defineTypeNameAndDebug(fvDOM, 0); - - addToRunTimeSelectionTable - ( - radiationModel, - fvDOM, - dictionary - ); + addToRadiationRunTimeSelectionTables(fvDOM); } } -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -Foam::radiation::fvDOM::fvDOM(const volScalarField& T) -: - radiationModel(typeName, T), - G_ - ( - IOobject - ( - "G", - mesh_.time().timeName(), - mesh_, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh_, - dimensionedScalar("G", dimMass/pow3(dimTime), 0.0) - ), - Qr_ - ( - IOobject - ( - "Qr", - mesh_.time().timeName(), - mesh_, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh_, - dimensionedScalar("Qr", dimMass/pow3(dimTime), 0.0) - ), - Qem_ - ( - IOobject - ( - "Qem", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar("Qem", dimMass/pow3(dimTime), 0.0) - ), - Qin_ - ( - IOobject - ( - "Qin", - mesh_.time().timeName(), - mesh_, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - mesh_, - dimensionedScalar("Qin", dimMass/pow3(dimTime), 0.0) - ), - a_ - ( - IOobject - ( - "a", - mesh_.time().timeName(), - mesh_, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh_, - dimensionedScalar("a", dimless/dimLength, 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("convergence", 0.0)), - maxIter_(coeffs_.lookupOrDefault