31 const label regionPatchi,
32 const label nbrPatchi,
37 int oldTag = UPstream::msgType();
38 UPstream::msgType() = oldTag + 1;
41 interRegionAMI(nbrRegion, regionPatchi, nbrPatchi, flip);
45 UPstream::msgType() = oldTag;
56 const word& fieldName,
57 const label regionPatchi,
65 if (nbrRegionMesh.
foundObject<fieldType>(fieldName))
67 const label nbrPatchi = nbrCoupledPatchID(nbrRegion, regionPatchi);
69 int oldTag = UPstream::msgType();
70 UPstream::msgType() = oldTag + 1;
73 interRegionAMI(nbrRegion, regionPatchi, nbrPatchi, flip);
75 const fieldType& nbrField =
78 const Field<Type>& nbrFieldp = nbrField.boundaryField()[nbrPatchi];
82 UPstream::msgType() = oldTag;
88 const polyPatch&
p = regionMesh().boundaryMesh()[regionPatchi];
108 const word& fieldName,
109 const label regionPatchi,
117 if (nbrRegionMesh.
foundObject<fieldType>(fieldName))
119 const label nbrPatchi = nbrCoupledPatchID(nbrRegion, regionPatchi);
121 int oldTag = UPstream::msgType();
122 UPstream::msgType() = oldTag + 1;
125 interRegionAMI(nbrRegion, regionPatchi, nbrPatchi, flip);
127 const fieldType& nbrField =
131 nbrField.boundaryField()[nbrPatchi];
138 UPstream::msgType() = oldTag;
144 const polyPatch&
p = regionMesh().boundaryMesh()[regionPatchi];
162 const label regionPatchi,
166 forAll(intCoupledPatchIDs_, i)
168 if (intCoupledPatchIDs_[i] == regionPatchi)
171 refCast<const mappedPatchBase>
173 regionMesh().boundaryMesh()[regionPatchi]
181 <<
"Region patch ID " << regionPatchi <<
" not found in region mesh" 189 const label regionPatchi,
193 forAll(intCoupledPatchIDs_, i)
195 if (intCoupledPatchIDs_[i] == regionPatchi)
198 refCast<const mappedPatchBase>
200 regionMesh().boundaryMesh()[regionPatchi]
208 <<
"Region patch ID " << regionPatchi <<
" not found in region mesh" 213 template<
class Type,
class CombineOp>
216 const label regionPatchi,
221 forAll(intCoupledPatchIDs_, i)
223 if (intCoupledPatchIDs_[i] == regionPatchi)
226 refCast<const mappedPatchBase>
228 regionMesh().boundaryMesh()[regionPatchi]
236 <<
"Region patch ID " << regionPatchi <<
" not found in region mesh" 241 template<
class Type,
class CombineOp>
244 const label regionPatchi,
249 forAll(intCoupledPatchIDs_, i)
251 if (intCoupledPatchIDs_[i] == regionPatchi)
254 refCast<const mappedPatchBase>
256 regionMesh().boundaryMesh()[regionPatchi]
264 <<
"Region patch ID " << regionPatchi <<
" not found in region mesh" #define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
bool foundObject(const word &name) const
Is the named Type found?
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
Generic GeometricField class.
void reverseDistribute(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
Lookup and return the object of the given Type.
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.
Pre-declare SubField and related Field type.
A class for handling words, derived from string.
void distribute(List< Type > &lst) const
Wrapper around map/interpolate data distribution.
void interpolateToSource(const UList< Type > &fld, const CombineOp &cop, List< Type > &result, const UList< Type > &defaultValues=UList< Type >::null()) const
Interpolate from target to source with supplied op.
Determines a mapping between patch face centres and mesh cell or face centres and processors they're ...
errorManip< error > abort(error &err)
void toRegion(const label regionPatchi, List< Type > &primaryFieldField) const
Convert a primary region field to the local region.
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.
void toPrimary(const label regionPatchi, List< Type > ®ionField) const
Convert a local region field to the primary region.
Mesh data needed to do the Finite Volume discretisation.
Interpolation class dealing with transfer of data between two primitive patches with an arbitrary mes...
A class for managing temporary objects.
A patch is a list of labels that address the faces in the global face list.