From 969dd7e7a33e6ad2c20e5c242a37f94b0b73e560 Mon Sep 17 00:00:00 2001 From: andy <andy> Date: Tue, 12 Nov 2013 10:14:21 +0000 Subject: [PATCH] ENH: film-pyrolysic BC updates --- ...sRadiativeCoupledMixedFvPatchScalarField.C | 65 +++++++++++-------- ...sRadiativeCoupledMixedFvPatchScalarField.H | 8 +-- 2 files changed, 39 insertions(+), 34 deletions(-) diff --git a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.C b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.C index adac03499be..c3424ff451e 100644 --- a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.C +++ b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.C @@ -122,7 +122,6 @@ filmPyrolysisRadiativeCoupledMixedFvPatchScalarField filmRegionName_("surfaceFilmProperties"), pyrolysisRegionName_("pyrolysisProperties"), TnbrName_("undefined-Tnbr"), - QrNbrName_("undefined-QrNbr"), QrName_("undefined-Qr"), convectiveScaling_(1.0), filmDeltaDry_(0.0), @@ -148,7 +147,6 @@ filmPyrolysisRadiativeCoupledMixedFvPatchScalarField filmRegionName_(psf.filmRegionName_), pyrolysisRegionName_(psf.pyrolysisRegionName_), TnbrName_(psf.TnbrName_), - QrNbrName_(psf.QrNbrName_), QrName_(psf.QrName_), convectiveScaling_(psf.convectiveScaling_), filmDeltaDry_(psf.filmDeltaDry_), @@ -175,7 +173,6 @@ filmPyrolysisRadiativeCoupledMixedFvPatchScalarField dict.lookupOrDefault<word>("pyrolysisRegion", "pyrolysisProperties") ), TnbrName_(dict.lookup("Tnbr")), - QrNbrName_(dict.lookup("QrNbr")), QrName_(dict.lookup("Qr")), convectiveScaling_(dict.lookupOrDefault<scalar>("convectiveScaling", 1.0)), filmDeltaDry_(readScalar(dict.lookup("filmDeltaDry"))), @@ -231,7 +228,6 @@ filmPyrolysisRadiativeCoupledMixedFvPatchScalarField filmRegionName_(psf.filmRegionName_), pyrolysisRegionName_(psf.pyrolysisRegionName_), TnbrName_(psf.TnbrName_), - QrNbrName_(psf.QrNbrName_), QrName_(psf.QrName_), convectiveScaling_(psf.convectiveScaling_), filmDeltaDry_(psf.filmDeltaDry_), @@ -241,8 +237,7 @@ filmPyrolysisRadiativeCoupledMixedFvPatchScalarField // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void filmPyrolysisRadiativeCoupledMixedFvPatchScalarField:: -updateCoeffs() +void filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs() { if (updated()) { @@ -294,34 +289,49 @@ updateCoeffs() const pyrolysisModelType& pyrolysis = pyrModel(); const filmModelType& film = filmModel(); - label myPatchINrbPatchI = -1; - // Obtain Rad heat (Qr) scalarField Qr(patch().size(), 0.0); - if (QrName_ != "none") // primary region (region0) + + label coupledPatchI = -1; + if (pyrolysisRegionName_ == mesh.name()) { - Qr = patch().lookupPatchField<volScalarField, scalar>(QrName_); - myPatchINrbPatchI = nbrPatch.index(); + coupledPatchI = patchI; + if (QrName_ != "none") + { + Qr = nbrPatch.lookupPatchField<volScalarField, scalar>(QrName_); + mpp.distribute(Qr); + } } - - if (QrNbrName_ != "none") // pyrolysis region + else if (pyrolysis.primaryMesh().name() == mesh.name()) + { + coupledPatchI = nbrPatch.index(); + if (QrName_ != "none") + { + Qr = patch().lookupPatchField<volScalarField, scalar>(QrName_); + } + } + else { - Qr = nbrPatch.lookupPatchField<volScalarField, scalar>(QrNbrName_); - mpp.distribute(Qr); - myPatchINrbPatchI = patchI; + FatalErrorIn + ( + "void filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::" + "updateCoeffs()" + ) + << type() << " condition is intended to be applied to either the " + << "primary or pyrolysis regions only" + << exit(FatalError); } - const label filmPatchI = - pyrolysis.nbrCoupledPatchID(film, myPatchINrbPatchI); + const label filmPatchI = pyrolysis.nbrCoupledPatchID(film, coupledPatchI); const scalarField htcw(film.htcw().h()().boundaryField()[filmPatchI]); // Obtain htcw htcwfilm = - const_cast<pyrolysisModelType&>(pyrolysis).mapRegionPatchField + pyrolysis.mapRegionPatchField ( film, - myPatchINrbPatchI, + coupledPatchI, filmPatchI, htcw, true @@ -335,11 +345,11 @@ updateCoeffs() // Obtain delta filmDelta = - const_cast<pyrolysisModelType&>(pyrolysis).mapRegionPatchField<scalar> + pyrolysis.mapRegionPatchField<scalar> ( film, "deltaf", - myPatchINrbPatchI, + coupledPatchI, true ); @@ -414,14 +424,13 @@ void filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::write pyrolysisRegionName_ ); os.writeKeyword("Tnbr")<< TnbrName_ << token::END_STATEMENT << nl; - os.writeKeyword("QrNbr")<< QrNbrName_ << token::END_STATEMENT << nl; os.writeKeyword("Qr")<< QrName_ << token::END_STATEMENT << nl; os.writeKeyword("convectiveScaling") << convectiveScaling_ - << token::END_STATEMENT << nl; - os.writeKeyword("filmDeltaDry") << filmDeltaDry_ << - token::END_STATEMENT << nl; - os.writeKeyword("filmDeltaWet") << filmDeltaWet_ << - token::END_STATEMENT << endl; + << token::END_STATEMENT << nl; + os.writeKeyword("filmDeltaDry") << filmDeltaDry_ + << token::END_STATEMENT << nl; + os.writeKeyword("filmDeltaWet") << filmDeltaWet_ + << token::END_STATEMENT << endl; temperatureCoupledBase::write(os); } diff --git a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.H b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.H index e4161e1bfc9..67788bd3c70 100644 --- a/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.H +++ b/src/regionModels/regionCoupling/derivedFvPatchFields/filmPyrolysisRadiativeCoupledMixed/filmPyrolysisRadiativeCoupledMixedFvPatchScalarField.H @@ -38,7 +38,6 @@ Description type filmPyrolysisRadiativeCoupledMixed; Tnbr T; kappa fluidThermo; - QrNbr none; Qr Qr; kappaName none; filmDeltaDry 0.0; @@ -91,7 +90,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class filmPyrolysisRadiativeCoupledMixedFvPatchScalarField Declaration + Class filmPyrolysisRadiativeCoupledMixedFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ class filmPyrolysisRadiativeCoupledMixedFvPatchScalarField @@ -121,10 +120,7 @@ private: //- Name of field on the neighbour region const word TnbrName_; - //- Name of the radiative heat flux in the neighbout region - const word QrNbrName_; - - //- Name of the radiative heat flux in local region + //- Name of the radiative heat flux const word QrName_; //- Convective Scaling Factor (as determined by Prateep's tests) -- GitLab