Go to the documentation of this file.
33 const label regionPatchi,
34 const label nbrPatchi,
39 int oldTag = UPstream::msgType();
40 UPstream::msgType() = oldTag + 1;
43 interRegionAMI(nbrRegion, regionPatchi, nbrPatchi, flip);
47 UPstream::msgType() = oldTag;
58 const word& fieldName,
59 const label regionPatchi,
67 if (nbrRegionMesh.
foundObject<fieldType>(fieldName))
69 const label nbrPatchi = nbrCoupledPatchID(nbrRegion, regionPatchi);
71 int oldTag = UPstream::msgType();
72 UPstream::msgType() = oldTag + 1;
75 interRegionAMI(nbrRegion, regionPatchi, nbrPatchi, flip);
77 const fieldType& nbrField =
80 const Field<Type>& nbrFieldp = nbrField.boundaryField()[nbrPatchi];
84 UPstream::msgType() = oldTag;
90 const polyPatch&
p = regionMesh().boundaryMesh()[regionPatchi];
102 const word& fieldName,
103 const label regionPatchi,
111 if (nbrRegionMesh.
foundObject<fieldType>(fieldName))
113 const label nbrPatchi = nbrCoupledPatchID(nbrRegion, regionPatchi);
115 int oldTag = UPstream::msgType();
116 UPstream::msgType() = oldTag + 1;
119 interRegionAMI(nbrRegion, regionPatchi, nbrPatchi, flip);
121 const fieldType& nbrField =
125 nbrField.boundaryField()[nbrPatchi];
132 UPstream::msgType() = oldTag;
138 const polyPatch&
p = regionMesh().boundaryMesh()[regionPatchi];
148 const label regionPatchi,
152 forAll(intCoupledPatchIDs_, i)
154 if (intCoupledPatchIDs_[i] == regionPatchi)
157 refCast<const mappedPatchBase>
167 <<
"Region patch ID " << regionPatchi <<
" not found in region mesh"
175 const label regionPatchi,
179 forAll(intCoupledPatchIDs_, i)
181 if (intCoupledPatchIDs_[i] == regionPatchi)
184 refCast<const mappedPatchBase>
194 <<
"Region patch ID " << regionPatchi <<
" not found in region mesh"
199 template<
class Type,
class CombineOp>
202 const label regionPatchi,
207 forAll(intCoupledPatchIDs_, i)
209 if (intCoupledPatchIDs_[i] == regionPatchi)
212 refCast<const mappedPatchBase>
222 <<
"Region patch ID " << regionPatchi <<
" not found in region mesh"
227 template<
class Type,
class CombineOp>
230 const label regionPatchi,
235 forAll(intCoupledPatchIDs_, i)
237 if (intCoupledPatchIDs_[i] == regionPatchi)
240 refCast<const mappedPatchBase>
250 <<
"Region patch ID " << regionPatchi <<
" not found in region mesh"
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
A class for handling words, derived from Foam::string.
A class for managing temporary objects.
static constexpr const zero Zero
Global zero (0)
Determines a mapping between patch face centres and mesh cell or face centres and processors they're ...
bool foundObject(const word &name, const bool recursive=false) const
Is the named Type found?
#define forAll(list, i)
Loop across all elements in list.
Base class for region models.
void toPrimary(const label regionPatchi, List< Type > ®ionField) const
Convert a local region field to the primary region.
void interpolateToSource(const UList< Type > &fld, const CombineOp &cop, List< Type > &result, const UList< Type > &defaultValues=UList< Type >::null()) const
Generic templated field type.
A patch is a list of labels that address the faces in the global face list.
void distribute(List< Type > &lst) const
Wrapper around map/interpolate data distribution.
const fvMesh & regionMesh() const
Return the region mesh database.
const Type & lookupObject(const word &name, const bool recursive=false) const
tmp< Field< Type > > mapRegionPatchInternalField(const regionModel &nbrRegion, const word &fieldName, const label regionPatchi, const bool flip=false) const
Map patch internal field from another region model to local.
Mesh data needed to do the Finite Volume discretisation.
errorManip< error > abort(error &err)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
tmp< Foam::Field< Type > > mapRegionPatchField(const regionModel &nbrRegion, const label regionPatchi, const label nbrPatchi, const Field< Type > &nbrField, const bool flip=false) const
Map patch field from another region model to local patch.
Interpolation class dealing with transfer of data between two primitive patches with an arbitrary mes...
Addressing for all faces on surface of mesh. Can either be read from polyMesh or from triSurface....
void toRegion(const label regionPatchi, List< Type > &primaryFieldField) const
Convert a primary region field to the local region.
void reverseDistribute(List< Type > &lst) const
Wrapper around map/interpolate data distribution.