ENH: Updated region models to reflect AMI additions

This commit is contained in:
andy
2011-09-07 13:11:29 +01:00
parent aa6fe2733a
commit 44414c0d0b
24 changed files with 137 additions and 106 deletions

View File

@ -1,5 +1,7 @@
EXE_INC = \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/AMIInterpolation/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
@ -14,11 +16,19 @@ EXE_INC = \
-I$(LIB_SRC)/turbulenceModels/LES/LESdeltas/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/lnInclude
LIB_LIBS = \
-lregionModels \
-lsolidChemistryModel \
-lbasicSolidThermo \
-lfiniteVolume \
-lsampling \
-lAMIInterpolation \
-lmeshTools \
-lcompressibleLESModels
-lchemistryModel \
-lspecie \
-lspecie \
-lsolid \
-lbasicThermophysicalModels \
-lsolidChemistryModel \
-lcompressibleTurbulenceModel \
-lcompressibleRASModels \
-lcompressibleLESModels \
-lLESdeltas \
-lregionModels

View File

@ -25,7 +25,7 @@ License
#include "pyrolysisModel.H"
#include "fvMesh.H"
#include "directMappedFieldFvPatchField.H"
#include "mappedFieldFvPatchField.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -70,7 +70,7 @@ void pyrolysisModel::constructMeshObjects()
forAll(filmDelta.boundaryField(), patchI)
{
const fvPatchField<scalar>& fvp = filmDelta.boundaryField()[patchI];
if (isA<directMappedFieldFvPatchField<scalar> >(fvp))
if (isA<mappedFieldFvPatchField<scalar> >(fvp))
{
foundCoupledPatch = true;
break;
@ -81,7 +81,7 @@ void pyrolysisModel::constructMeshObjects()
{
WarningIn("void pyrolysisModels::constructMeshObjects()")
<< "filmCoupled flag set to true, but no "
<< directMappedFieldFvPatchField<scalar>::typeName
<< mappedFieldFvPatchField<scalar>::typeName
<< " patches found on " << filmDelta.name() << " field"
<< endl;
}

View File

@ -25,8 +25,6 @@ License
#include "reactingOneDim.H"
#include "addToRunTimeSelectionTable.H"
#include "directMappedPatchBase.H"
#include "mapDistribute.H"
#include "zeroGradientFvPatchFields.H"
#include "surfaceInterpolate.H"
#include "fvm.H"

View File

@ -1,5 +1,7 @@
EXE_INC = \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/AMIInterpolation/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \

View File

@ -146,7 +146,7 @@ void Foam::filmPyrolysisTemperatureCoupledFvPatchScalarField::updateCoeffs()
const label filmPatchI = filmModel.regionPatchID(patchI);
const mapDistribute& filmMap = filmModel.mappedPatches()[filmPatchI].map();
const mappedPatchBase& filmMap = filmModel.mappedPatches()[filmPatchI];
scalarField deltaFilm = filmModel.delta().boundaryField()[filmPatchI];
filmMap.distribute(deltaFilm);
@ -161,7 +161,7 @@ void Foam::filmPyrolysisTemperatureCoupledFvPatchScalarField::updateCoeffs()
const label pyrPatchI = pyrModel.regionPatchID(patchI);
const mapDistribute& pyrMap = pyrModel.mappedPatches()[pyrPatchI].map();
const mappedPatchBase& pyrMap = pyrModel.mappedPatches()[pyrPatchI];
scalarField TPyr = pyrModel.T().boundaryField()[pyrPatchI];
pyrMap.distribute(TPyr);

View File

@ -149,7 +149,7 @@ void Foam::filmPyrolysisVelocityCoupledFvPatchVectorField::updateCoeffs()
const label filmPatchI = filmModel.regionPatchID(patchI);
const mapDistribute& filmMap = filmModel.mappedPatches()[filmPatchI].map();
const mappedPatchBase& filmMap = filmModel.mappedPatches()[filmPatchI];
scalarField deltaFilm = filmModel.delta().boundaryField()[filmPatchI];
filmMap.distribute(deltaFilm);
@ -167,7 +167,7 @@ void Foam::filmPyrolysisVelocityCoupledFvPatchVectorField::updateCoeffs()
const label pyrPatchI = pyrModel.regionPatchID(patchI);
const mapDistribute& pyrMap = pyrModel.mappedPatches()[pyrPatchI].map();
const mappedPatchBase& pyrMap = pyrModel.mappedPatches()[pyrPatchI];
scalarField phiPyr = pyrModel.phiGas().boundaryField()[pyrPatchI];
pyrMap.distribute(phiPyr);

View File

@ -4,6 +4,6 @@ singleLayerRegion/singleLayerRegion.C
regionModel1D/regionModel1D.C
/* Boundary conditions */
derivedFvPatches/directMappedVariableThicknessWall/directMappedVariableThicknessWallFvPatch.C
derivedFvPatches/mappedVariableThicknessWall/mappedVariableThicknessWallFvPatch.C
LIB = $(FOAM_LIBBIN)/libregionModels

View File

@ -1,7 +1,11 @@
EXE_INC = \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/AMIInterpolation/lnInclude
LIB_LIBS = \
-lfiniteVolume \
-lmeshTools
-lmeshTools \
-lsampling \
-lAMIInterpolation

View File

@ -23,7 +23,7 @@ License
\*---------------------------------------------------------------------------*/
#include "directMappedVariableThicknessWallFvPatch.H"
#include "mappedVariableThicknessWallFvPatch.H"
#include "addToRunTimeSelectionTable.H"
#include "regionModel1D.H"
@ -31,11 +31,11 @@ License
namespace Foam
{
defineTypeNameAndDebug(directMappedVariableThicknessWallFvPatch, 0);
defineTypeNameAndDebug(mappedVariableThicknessWallFvPatch, 0);
addToRunTimeSelectionTable
(
fvPatch,
directMappedVariableThicknessWallFvPatch,
mappedVariableThicknessWallFvPatch,
polyPatch
);
}
@ -43,19 +43,13 @@ namespace Foam
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
void Foam::directMappedVariableThicknessWallFvPatch::
void Foam::mappedVariableThicknessWallFvPatch::
makeDeltaCoeffs(scalarField& dc) const
{
const directMappedVariableThicknessWallPolyPatch& pp =
refCast<const directMappedVariableThicknessWallPolyPatch>
(
patch()
);
const mappedVariableThicknessWallPolyPatch& pp =
refCast<const mappedVariableThicknessWallPolyPatch>(patch());
const directMappedPatchBase& mpp = refCast<const directMappedPatchBase>
(
patch()
);
const mappedPatchBase& mpp = refCast<const mappedPatchBase>(patch());
const polyMesh& nbrMesh = mpp.sampleMesh();

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::directMappedVariableThicknessWallFvPatch
Foam::mappedVariableThicknessWallFvPatch
Description
Take thickness field and number of layers and returns deltaCoeffs
@ -30,15 +30,15 @@ Description
To be used with 1D thermo baffle.
SourceFiles
directMappedVariableThicknessWallFvPatch.C
mappedVariableThicknessWallFvPatch.C
\*---------------------------------------------------------------------------*/
#ifndef directMappedWallFvPatch_H
#define directMappedWallFvPatch_H
#ifndef mappedWallFvPatch_H
#define mappedWallFvPatch_H
#include "wallFvPatch.H"
#include "directMappedVariableThicknessWallPolyPatch.H"
#include "mappedVariableThicknessWallPolyPatch.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -46,10 +46,10 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class directMappedVariableThicknessWallFvPatch Declaration
Class mappedVariableThicknessWallFvPatch Declaration
\*---------------------------------------------------------------------------*/
class directMappedVariableThicknessWallFvPatch
class mappedVariableThicknessWallFvPatch
:
public wallFvPatch
{
@ -65,13 +65,13 @@ protected:
public:
//- Runtime type information
TypeName(directMappedVariableThicknessWallPolyPatch::typeName_());
TypeName(mappedVariableThicknessWallPolyPatch::typeName_());
// Constructors
//- Construct from components
directMappedVariableThicknessWallFvPatch
mappedVariableThicknessWallFvPatch
(
const polyPatch& patch,
const fvBoundaryMesh& bm
@ -79,7 +79,6 @@ public:
:
wallFvPatch(patch, bm)
{}
};

View File

@ -26,7 +26,7 @@ License
#include "regionModel.H"
#include "fvMesh.H"
#include "Time.H"
#include "directMappedWallPolyPatch.H"
#include "mappedWallPolyPatch.H"
#include "zeroGradientFvPatchFields.H"
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
@ -99,11 +99,11 @@ void Foam::regionModels::regionModel::initialise()
forAll(rbm, patchI)
{
const polyPatch& regionPatch = rbm[patchI];
if (isA<directMappedWallPolyPatch>(regionPatch))
if (isA<mappedWallPolyPatch>(regionPatch))
{
if (debug)
{
Pout<< "found " << directMappedWallPolyPatch::typeName
Pout<< "found " << mappedWallPolyPatch::typeName
<< " " << regionPatch.name() << endl;
}
@ -111,20 +111,20 @@ void Foam::regionModels::regionModel::initialise()
nBoundaryFaces += regionPatch.faceCells().size();
const directMappedWallPolyPatch& dmp =
refCast<const directMappedWallPolyPatch>(regionPatch);
const mappedWallPolyPatch& mapPatch =
refCast<const mappedWallPolyPatch>(regionPatch);
const label primaryPatchI = dmp.samplePolyPatch().index();
const label primaryPatchI = mapPatch.samplePolyPatch().index();
primaryPatchIDs.append(primaryPatchI);
mappedPatches_.set
(
patchI,
new directMappedPatchBase
new mappedPatchBase
(
pbm[primaryPatchI],
regionMesh().name(),
directMappedPatchBase::NEARESTPATCHFACE,
mapPatch.mode(),
regionPatch.name(),
vector::zero
)
@ -134,13 +134,12 @@ void Foam::regionModels::regionModel::initialise()
primaryPatchIDs_.transfer(primaryPatchIDs);
intCoupledPatchIDs_.transfer(intCoupledPatchIDs);
// mappedPatches_.resize(nCoupledPatches);
if (nBoundaryFaces == 0)
{
WarningIn("regionModel::initialise()")
<< "Region model being applied without direct mapped boundary "
<< "conditions" << endl;
<< "Region model has no mapped boundary conditions - transfer "
<< "between regions will not be possible" << endl;
}
}

View File

@ -40,7 +40,7 @@ SourceFiles
#include "Switch.H"
#include "labelList.H"
#include "volFields.H"
#include "directMappedPatchBase.H"
#include "mappedPatchBase.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -118,7 +118,7 @@ protected:
labelList intCoupledPatchIDs_;
//- List of patch map info
PtrList<directMappedPatchBase> mappedPatches_;
PtrList<mappedPatchBase> mappedPatches_;
// Protected member functions
@ -213,8 +213,7 @@ public:
inline const labelList& intCoupledPatchIDs() const;
//- Return the list of patch map info
inline const PtrList<directMappedPatchBase>&
mappedPatches() const;
inline const PtrList<mappedPatchBase>& mappedPatches() const;
//- Return region ID corresponding to primaryPatchID
inline label regionPatchID(const label primaryPatchID) const;

View File

@ -132,7 +132,7 @@ Foam::regionModels::regionModel::intCoupledPatchIDs() const
}
inline const Foam::PtrList<Foam::directMappedPatchBase>&
inline const Foam::PtrList<Foam::mappedPatchBase>&
Foam::regionModels::regionModel::mappedPatches() const
{
return mappedPatches_;

View File

@ -26,7 +26,6 @@ License
#include "singleLayerRegion.H"
#include "fvMesh.H"
#include "Time.H"
#include "directMappedWallPolyPatch.H"
#include "zeroGradientFvPatchFields.H"
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //

View File

@ -25,8 +25,8 @@ License
#include "singleLayerRegion.H"
#include "zeroGradientFvPatchFields.H"
#include "directMappedFixedInternalValueFvPatchFields.H"
#include "directMappedFixedPushedInternalValueFvPatchFields.H"
#include "mappedFixedInternalValueFvPatchFields.H"
#include "mappedFixedPushedInternalValueFvPatchFields.H"
// * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * * //
@ -41,8 +41,7 @@ Foam::regionModels::singleLayerRegion::mappedFieldAndInternalPatchTypes() const
forAll(intCoupledPatchIDs_, i)
{
const label patchI = intCoupledPatchIDs_[i];
bTypes[patchI] =
directMappedFixedInternalValueFvPatchField<Type>::typeName;
bTypes[patchI] = mappedFixedInternalValueFvPatchField<Type>::typeName;
}
return bTypes;
@ -61,7 +60,7 @@ Foam::regionModels::singleLayerRegion::mappedPushedFieldPatchTypes() const
{
const label patchI = intCoupledPatchIDs_[i];
bTypes[patchI] =
directMappedFixedPushedInternalValueFvPatchField<Type>::typeName;
mappedFixedPushedInternalValueFvPatchField<Type>::typeName;
}
return bTypes;

View File

@ -1,5 +1,7 @@
EXE_INC = \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/AMIInterpolation/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
@ -11,15 +13,25 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \
-I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \
-I$(LIB_SRC)/turbulenceModels \
-I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \
-I$(LIB_SRC)/turbulenceModels/compressible/LES/lnInclude \
-I$(LIB_SRC)/turbulenceModels/compressible/RAS/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/lnInclude
LIB_LIBS = \
-lregionModels \
-lSLGThermo \
-lfiniteVolume \
-lsampling \
-lAMIInterpolation \
-lmeshTools \
-lbasicThermophysicalModels \
-lspecie \
-lliquidProperties \
-lliquidMixtureProperties \
-lsolidProperties \
-lsolidMixtureProperties \
-lreactionThermophysicalModels \
-lSLGThermo \
-ldistributionModels \
-lcompressibleTurbulenceModel \
-lcompressibleRASModels \
-lcompressibleLESModels
-lcompressibleLESModels \
-lregionModels

View File

@ -29,7 +29,7 @@ License
#include "fvPatchFieldMapper.H"
#include "volFields.H"
#include "addToRunTimeSelectionTable.H"
#include "directMappedWallPolyPatch.H"
#include "mappedWallPolyPatch.H"
#include "mapDistribute.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -153,11 +153,11 @@ void alphatFilmWallFunctionFvPatchScalarField::updateCoeffs()
const label filmPatchI = filmModel.regionPatchID(patchI);
const mapDistribute& distMap = filmModel.mappedPatches()[filmPatchI].map();
const mappedPatchBase& filmMap = filmModel.mappedPatches()[filmPatchI];
tmp<volScalarField> mDotFilm(filmModel.primaryMassTrans());
scalarField mDotFilmp = mDotFilm().boundaryField()[filmPatchI];
distMap.distribute(mDotFilmp);
filmMap.distribute(mDotFilmp);
// Retrieve RAS turbulence model
const RASModel& rasModel = db().lookupObject<RASModel>("RASProperties");

View File

@ -29,7 +29,7 @@ License
#include "RASModel.H"
#include "addToRunTimeSelectionTable.H"
#include "surfaceFilmModel.H"
#include "directMappedWallPolyPatch.H"
#include "mappedWallPolyPatch.H"
#include "mapDistribute.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -70,11 +70,11 @@ tmp<scalarField> mutkFilmWallFunctionFvPatchScalarField::calcUTau
const label filmPatchI = filmModel.regionPatchID(patchI);
const mapDistribute& distMap = filmModel.mappedPatches()[filmPatchI].map();
const mappedPatchBase& filmMap = filmModel.mappedPatches()[filmPatchI];
tmp<volScalarField> mDotFilm(filmModel.primaryMassTrans());
scalarField mDotFilmp = mDotFilm().boundaryField()[filmPatchI];
distMap.distribute(mDotFilmp);
filmMap.distribute(mDotFilmp);
// Retrieve RAS turbulence model

View File

@ -31,7 +31,7 @@ License
#include "fvcReconstruct.H"
#include "fvcVolumeIntegrate.H"
#include "addToRunTimeSelectionTable.H"
#include "directMappedWallPolyPatch.H"
#include "mappedWallPolyPatch.H"
#include "mapDistribute.H"
#include "cachedRandom.H"
@ -90,7 +90,7 @@ void kinematicSingleLayer::correctThermoFields()
"void Foam::surfaceFilmModels::kinematicSingleLayer::"
"correctThermo()"
) << "Kinematic surface film must use "
<< thermoModelTypeNames_[thermoModel_] << "thermodynamics" << endl;
<< thermoModelTypeNames_[tmConstant] << "thermodynamics" << endl;
}
}
@ -115,6 +115,7 @@ void kinematicSingleLayer::transferPrimaryRegionThermoFields()
Info<< "kinematicSingleLayer::"
<< "transferPrimaryRegionThermoFields()" << endl;
}
// Update fields from primary region via direct mapped
// (coupled) boundary conditions
UPrimary_.correctBoundaryConditions();
@ -132,6 +133,18 @@ void kinematicSingleLayer::transferPrimaryRegionSourceFields()
<< "transferPrimaryRegionSourceFields()" << endl;
}
// Convert accummulated source terms into per unit area per unit time
const scalar deltaT = time_.deltaTValue();
forAll(rhoSpPrimary_.boundaryField(), patchI)
{
const scalarField& priMagSf =
primaryMesh().magSf().boundaryField()[patchI];
rhoSpPrimary_.boundaryField()[patchI] /= priMagSf*deltaT;
USpPrimary_.boundaryField()[patchI] /= priMagSf*deltaT;
pSpPrimary_.boundaryField()[patchI] /= priMagSf*deltaT;
}
// Retrieve the source fields from the primary region via direct mapped
// (coupled) boundary conditions
// - fields require transfer of values for both patch AND to push the
@ -139,13 +152,6 @@ void kinematicSingleLayer::transferPrimaryRegionSourceFields()
rhoSp_.correctBoundaryConditions();
USp_.correctBoundaryConditions();
pSp_.correctBoundaryConditions();
// Convert accummulated source terms into per unit area per unit time
// Note: boundary values will still have original (neat) values
const scalar deltaT = time_.deltaTValue();
rhoSp_.field() /= magSf()*deltaT;
USp_.field() /= magSf()*deltaT;
pSp_.field() /= magSf()*deltaT;
}

View File

@ -65,7 +65,7 @@ private:
//- Heat transfer coefficient - film region [W/m2/K]
// Assumes that the primary regtion to film region boundaries are
// described as directMappedPushed types
// described as mappedPushed types
volScalarField htcConvFilm_;

View File

@ -29,7 +29,7 @@ License
#include "fvm.H"
#include "addToRunTimeSelectionTable.H"
#include "zeroGradientFvPatchFields.H"
#include "directMappedFieldFvPatchField.H"
#include "mappedFieldFvPatchField.H"
#include "mapDistribute.H"
// Sub-models
@ -59,7 +59,7 @@ wordList thermoSingleLayer::hsBoundaryTypes()
wordList bTypes(T_.boundaryField().types());
forAll(bTypes, patchI)
{
if (bTypes[patchI] == directMappedFieldFvPatchField<scalar>::typeName)
if (bTypes[patchI] == mappedFieldFvPatchField<scalar>::typeName)
{
bTypes[patchI] = fixedValueFvPatchField<scalar>::typeName;
}
@ -150,7 +150,7 @@ void thermoSingleLayer::correctHsForMappedT()
forAll(T_.boundaryField(), patchI)
{
const fvPatchField<scalar>& Tp = T_.boundaryField()[patchI];
if (isA<directMappedFieldFvPatchField<scalar> >(Tp))
if (isA<mappedFieldFvPatchField<scalar> >(Tp))
{
hs_.boundaryField()[patchI] == hs(Tp, patchI);
}
@ -206,17 +206,22 @@ void thermoSingleLayer::transferPrimaryRegionSourceFields()
kinematicSingleLayer::transferPrimaryRegionSourceFields();
// Convert accummulated source terms into per unit area per unit time
const scalar deltaT = time_.deltaTValue();
forAll(hsSpPrimary_.boundaryField(), patchI)
{
const scalarField& priMagSf =
primaryMesh().magSf().boundaryField()[patchI];
hsSpPrimary_.boundaryField()[patchI] /= priMagSf*deltaT;
}
// Retrieve the source fields from the primary region via direct mapped
// (coupled) boundary conditions
// - fields require transfer of values for both patch AND to push the
// values into the first layer of internal cells
hsSp_.correctBoundaryConditions();
// Convert accummulated source terms into per unit area per unit time
// Note: boundary values will still have original (neat) values
const scalar deltaT = time_.deltaTValue();
hsSp_.field() /= magSf()*deltaT;
// Apply enthalpy source as difference between incoming and actual states
hsSp_ -= rhoSp_*hs_;
}
@ -700,11 +705,12 @@ tmp<DimensionedField<scalar, volMesh> > thermoSingleLayer::Srho() const
forAll(intCoupledPatchIDs(), i)
{
const label filmPatchI = intCoupledPatchIDs()[i];
const mapDistribute& distMap = mappedPatches_[filmPatchI].map();
const mappedPatchBase& filmMap = mappedPatches_[filmPatchI];
scalarField patchMass =
primaryMassPCTrans_.boundaryField()[filmPatchI];
distMap.distribute(patchMass);
filmMap.distribute(patchMass);
const label primaryPatchI = primaryPatchIDs()[i];
const unallocLabelList& cells =
@ -755,11 +761,12 @@ tmp<DimensionedField<scalar, volMesh> > thermoSingleLayer::Srho
forAll(intCoupledPatchIDs_, i)
{
const label filmPatchI = intCoupledPatchIDs_[i];
const mapDistribute& distMap = mappedPatches_[filmPatchI].map();
const mappedPatchBase& filmMap = mappedPatches_[filmPatchI];
scalarField patchMass =
primaryMassPCTrans_.boundaryField()[filmPatchI];
distMap.distribute(patchMass);
filmMap.distribute(patchMass);
const label primaryPatchI = primaryPatchIDs()[i];
const unallocLabelList& cells =
@ -805,11 +812,12 @@ tmp<DimensionedField<scalar, volMesh> > thermoSingleLayer::Sh() const
forAll(intCoupledPatchIDs_, i)
{
const label filmPatchI = intCoupledPatchIDs_[i];
const mapDistribute& distMap = mappedPatches_[filmPatchI].map();
const mappedPatchBase& filmMap = mappedPatches_[filmPatchI];
scalarField patchEnergy =
primaryEnergyPCTrans_.boundaryField()[filmPatchI];
distMap.distribute(patchEnergy);
filmMap.distribute(patchEnergy);
const label primaryPatchI = primaryPatchIDs()[i];
const unallocLabelList& cells =

View File

@ -4,6 +4,8 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/solid/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/AMIInterpolation/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel/lnInclude

View File

@ -85,7 +85,7 @@ temperatureThermoBaffleFvPatchScalarField
baffle_(),
solidThermoType_()
{
if (!isA<directMappedPatchBase>(patch().patch()))
if (!isA<mappedPatchBase>(patch().patch()))
{
FatalErrorIn
(
@ -97,7 +97,7 @@ temperatureThermoBaffleFvPatchScalarField
" const dictionary& dict\n"
")\n"
) << "\n patch type '" << patch().type()
<< "' not type '" << directMappedPatchBase::typeName << "'"
<< "' not type '" << mappedPatchBase::typeName << "'"
<< "\n for patch " << patch().name()
<< " of field " << dimensionedInternalField().name()
<< " in file " << dimensionedInternalField().objectPath()

View File

@ -25,7 +25,7 @@ License
#include "thermoBaffleModel.H"
#include "fvMesh.H"
#include "directMappedVariableThicknessWallPolyPatch.H"
#include "mappedVariableThicknessWallPolyPatch.H"
#include "wedgePolyPatch.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -101,7 +101,7 @@ void thermoBaffleModel::init()
const polyPatch& pp = rbm[patchI];
if (
!isA<directMappedVariableThicknessWallPolyPatch>(pp)
!isA<mappedVariableThicknessWallPolyPatch>(pp)
&& oneD_
&& !constantThickness_
)
@ -115,13 +115,13 @@ void thermoBaffleModel::init()
")"
) << "\n patch type '" << pp.type()
<< "' not type '"
<< directMappedVariableThicknessWallPolyPatch::typeName
<< mappedVariableThicknessWallPolyPatch::typeName
<< "'. This is necessary for 1D solution "
<< " and variable thickness"
<< "\n for patch. " << pp.name()
<< exit(FatalError);
}
else if (!isA<directMappedWallPolyPatch>(pp))
else if (!isA<mappedWallPolyPatch>(pp))
{
FatalErrorIn
(
@ -132,7 +132,7 @@ void thermoBaffleModel::init()
")"
) << "\n patch type '" << pp.type()
<< "' not type '"
<< directMappedWallPolyPatch::typeName
<< mappedWallPolyPatch::typeName
<< "'. This is necessary for 3D solution"
<< "\n for patch. " << pp.name()
<< exit(FatalError);
@ -143,10 +143,10 @@ void thermoBaffleModel::init()
{
const label patchI = intCoupledPatchIDs_[0];
const polyPatch& pp = rbm[patchI];
const directMappedVariableThicknessWallPolyPatch& ppCoupled =
const mappedVariableThicknessWallPolyPatch& ppCoupled =
refCast
<
const directMappedVariableThicknessWallPolyPatch
const mappedVariableThicknessWallPolyPatch
>(pp);
thickness_ = ppCoupled.thickness();