Go to the documentation of this file.
74 internal_(ptf.internal_),
96 const fvMesh& thisMesh =
patch().boundaryMesh().mesh();
113 if (!extrudeMeshPtr_)
120 baffle_->rename(baffleName);
127 const thermalBaffleFvPatchScalarField& ptf,
131 turbulentTemperatureRadCoupledMixedFvPatchScalarField(ptf, iF),
133 internal_(ptf.internal_),
142 void thermalBaffleFvPatchScalarField::createPatchMesh()
144 const fvMesh& thisMesh =
patch().boundaryMesh().mesh();
148 List<polyPatch*> regionPatches(3);
151 List<dictionary> dicts(regionPatches.size());
157 patchTypes[bottomPatchID] = mappedWallPolyPatch::typeName;
161 patchTypes[topPatchID] = mappedWallPolyPatch::typeName;
168 if (dict_.
get<
bool>(
"columnCells"))
170 patchTypes[sidePatchID] = emptyPolyPatch::typeName;
174 patchTypes[sidePatchID] = polyPatch::typeName;
177 const mappedPatchBase& mpp =
178 refCast<const mappedPatchBase>(
patch().
patch(), dict_);
180 const word coupleGroup(mpp.coupleGroup());
183 inGroups[0] = coupleGroup;
186 dicts[bottomPatchID].add(
"coupleGroup", coupleGroup);
187 dicts[bottomPatchID].add(
"inGroups", inGroups);
188 dicts[bottomPatchID].add(
"sampleMode", mpp.sampleModeNames_[mpp.mode()]);
189 dicts[bottomPatchID].add(
"samplePatch",
patch().
name());
190 dicts[bottomPatchID].add(
"sampleRegion", thisMesh.name());
195 const word coupleGroupSlave =
196 coupleGroup.substr(0, coupleGroup.find(
'_')) +
"_slave";
198 inGroups[0] = coupleGroupSlave;
199 dicts[topPatchID].add(
"coupleGroup", coupleGroupSlave);
200 dicts[topPatchID].add(
"inGroups", inGroups);
201 dicts[topPatchID].add(
"sampleMode", mpp.sampleModeNames_[mpp.mode()]);
205 forAll(regionPatches, patchi)
207 dictionary& patchDict = dicts[patchi];
208 patchDict.set(
"nFaces", 0);
209 patchDict.set(
"startFace", 0);
217 thisMesh.boundaryMesh()
221 extrudeMeshPtr_.reset
257 os.writeEntry(
"extrudeModel", dict_.
get<
word>(
"extrudeModel"));
259 os.writeEntry(
"nLayers", dict_.
get<label>(
"nLayers"));
261 os.writeEntry(
"expansionRatio", dict_.
get<scalar>(
"expansionRatio"));
263 os.writeEntry(
"columnCells", dict_.
get<
Switch>(
"columnCells"));
269 os.writeEntry(
"region", dict_.
get<
word>(
"region"));
271 os.writeEntryIfDifferent<
bool>(
"internal",
true, internal_);
273 os.writeEntry(
"active", dict_.
get<
Switch>(
"active"));
287 thermalBaffleFvPatchScalarField
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
fvPatchField< scalar > fvPatchScalarField
A simple wrapper around bool so that it can be read as a word: true/false, on/off,...
A class for handling words, derived from Foam::string.
Top level extrusion model class.
virtual void updateCoeffs()
const polyBoundaryMesh & boundaryMesh() const
T get(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
bool foundObject(const word &name, const bool recursive=false) const
makePatchTypeField(fvPatchScalarField, alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField)
wordList patchTypes(nPatches)
List< word > wordList
A List of words.
void writeEntry(Ostream &os) const
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
const dictionary & subDict(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
wordList patchNames(nPatches)
virtual void write(Ostream &os) const
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
static autoPtr< polyPatch > New(const word &patchType, const word &name, const label size, const label start, const label index, const polyBoundaryMesh &bm)
OBJstream os(runTime.globalPath()/outputName)
Macros for easy insertion into run-time selection tables.
Mesh data needed to do the Finite Volume discretisation.
This boundary condition provides a coupled temperature condition between multiple mesh regions.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
thermalBaffleFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Mixed boundary condition for temperature and radiation heat transfer to be used for in multiregion ca...
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
word name(const expressions::valueTypeCode typeCode)
const Time & time() const
Foam::fvPatchFieldMapper.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
virtual void updateCoeffs()
bool readIfPresent(const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX) const
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const word & name() const
virtual void write(Ostream &) const