Go to the documentation of this file.
74 internal_(ptf.internal_),
96 const fvMesh& thisMesh =
patch().boundaryMesh().mesh();
103 dict_.readIfPresent(
"internal", internal_);
113 if (extrudeMeshPtr_.empty())
120 baffle_->rename(baffleName);
133 internal_(ptf.internal_),
148 mixedFvPatchScalarField::autoMap(m);
158 mixedFvPatchScalarField::rmap(ptf, addr);
162 void thermalBaffleFvPatchScalarField::createPatchMesh()
164 const fvMesh& thisMesh =
patch().boundaryMesh().mesh();
177 patchTypes[bottomPatchID] = mappedWallPolyPatch::typeName;
181 patchTypes[topPatchID] = mappedWallPolyPatch::typeName;
188 if (dict_.
get<
bool>(
"columnCells"))
190 patchTypes[sidePatchID] = emptyPolyPatch::typeName;
194 patchTypes[sidePatchID] = polyPatch::typeName;
197 const mappedPatchBase& mpp =
198 refCast<const mappedPatchBase>(
patch().
patch(), dict_);
200 const word coupleGroup(mpp.coupleGroup());
203 inGroups[0] = coupleGroup;
206 dicts[bottomPatchID].add(
"coupleGroup", coupleGroup);
207 dicts[bottomPatchID].add(
"inGroups", inGroups);
208 dicts[bottomPatchID].add(
"sampleMode", mpp.sampleModeNames_[mpp.mode()]);
209 dicts[bottomPatchID].add(
"samplePatch",
patch().
name());
210 dicts[bottomPatchID].add(
"sampleRegion", thisMesh.
name());
215 const word coupleGroupSlave =
216 coupleGroup.substr(0, coupleGroup.find(
'_')) +
"_slave";
218 inGroups[0] = coupleGroupSlave;
219 dicts[topPatchID].add(
"coupleGroup", coupleGroupSlave);
220 dicts[topPatchID].add(
"inGroups", inGroups);
221 dicts[topPatchID].add(
"sampleMode", mpp.sampleModeNames_[mpp.mode()]);
225 forAll(regionPatches, patchi)
227 dictionary& patchDict = dicts[patchi];
228 patchDict.set(
"nFaces", 0);
229 patchDict.set(
"startFace", 0);
241 extrudeMeshPtr_.reset
253 if (extrudeMeshPtr_.empty())
256 <<
"Specified IOobject::MUST_READ_IF_MODIFIED but class"
257 <<
" patchMeshPtr not set."
289 os.
writeEntry(
"expansionRatio", dict_.
get<scalar>(
"expansionRatio"));
Ostream & writeEntryIfDifferent(const word &key, const T &value1, const T &value2)
Write a keyword/value entry only when the two values differ.
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()
Update the coefficients associated with the patch field.
const polyBoundaryMesh & boundaryMesh() const
Return boundary mesh.
Ostream & endl(Ostream &os)
Add newline and flush stream.
T get(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
bool foundObject(const word &name, const bool recursive=false) const
Is the named Type found?
makePatchTypeField(fvPatchScalarField, alphatFixedDmdtWallBoilingWallFunctionFvPatchScalarField)
#define forAll(list, i)
Loop across all elements in list.
wordList patchTypes(nPatches)
static const dictionary null
An empty dictionary, which is also the parent for all dictionaries.
List< word > wordList
A List of words.
void writeEntry(Ostream &os) const
Write sub-dictionary with its dictName as its header.
virtual void autoMap(const fvPatchFieldMapper &)
Map (and resize as needed) from self given a mapping object.
word name(const complex &c)
Return string representation of complex.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
const dictionary & subDict(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a sub-dictionary.
wordList patchNames(nPatches)
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
virtual void write(Ostream &) const
Write.
static autoPtr< polyPatch > New(const word &patchType, const word &name, const label size, const label start, const label index, const polyBoundaryMesh &bm)
Return a pointer to a new patch created on freestore from.
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)
Global function forwards to reuseTmpDimensionedField::New.
thermalBaffleFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
Mixed boundary condition for temperature and radiation heat transfer to be used for in multiregion ca...
const std::string patch
OpenFOAM patch number as a std::string.
Ostream & writeEntry(const keyType &key, const T &value)
Write a keyword/value entry.
const Time & time() const
Return the top-level database.
Foam::fvPatchFieldMapper.
virtual void rmap(const fvPatchScalarField &, const labelList &)
Reverse map the given fvPatchField onto this fvPatchField.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
#define WarningInFunction
Report a warning using Foam::Warning.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const word & name() const
Return reference to name.
virtual void write(Ostream &) const
Write.