61#ifndef Foam_fvMeshSubset_H
62#define Foam_fvMeshSubset_H
112 void doCoupledPatches
122 void calcFaceFlipMap()
const;
166 const bitSet& selectedCells,
168 const bool syncPar =
true
178 const bool syncPar =
true
188 const bool syncPar =
true
199 const bool syncPar =
true
274 const
bitSet& selectedCells,
276 const
bool syncPar = true
284 const
bool syncPar = true
292 const
bool syncPar = true
301 const
bool syncCouples = true
310 const
bitSet& selectedCells,
312 const
bool syncPar = true
323 const bool syncPar =
true
334 const bool syncPar =
true
346 const bool syncPar =
true
357 static tmp<DimensionedField<Type, volMesh>>
360 const DimensionedField<Type, volMesh>&,
368 static tmp<GeometricField<Type, fvPatchField, volMesh>>
371 const GeometricField<Type, fvPatchField, volMesh>&,
376 const bool allowUnmapped =
false
383 static tmp<GeometricField<Type, fvsPatchField, surfaceMesh>>
386 const GeometricField<Type, fvsPatchField, surfaceMesh>&,
414 const bool allowUnmapped =
false
424 const bool allowUnmapped =
false
435 const bool allowUnmapped =
false
446 const bool allowUnmapped =
false
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Generic GeometricField class.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
void setCellSubset(const label regioni, const labelUList ®ions, const label patchID=-1, const bool syncPar=true)
Use the specified subset of cells. Same as reset().
ClassName("fvMeshSubset")
fvMeshSubset(const fvMeshSubset &)=delete
No copy construct.
static word exposedPatchName
Name for exposed internal faces (default: oldInternalFaces).
const fvMesh & baseMesh() const noexcept
Original mesh.
void setCellSubset(const labelHashSet &selectedCells, const label patchID=-1, const bool syncPar=true)
Use the specified subset of cells. Same as reset().
const labelList & faceMap() const
Return face map.
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvsPatchField, surfaceMesh > &, const fvMesh &sMesh, const labelUList &patchMap, const labelUList &cellMap, const labelUList &faceMap)
Map surface field.
const labelList & cellMap() const
Return cell map.
void setCellSubset(const bitSet &selectedCells, const label patchID=-1, const bool syncPar=true)
Use the specified subset of cells. Same as reset().
void operator=(const fvMeshSubset &)=delete
No copy assignment.
static tmp< GeometricField< Type, pointPatchField, pointMesh > > interpolate(const GeometricField< Type, pointPatchField, pointMesh > &, const pointMesh &sMesh, const labelUList &patchMap, const labelUList &pointMap)
Map point field.
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvsPatchField, surfaceMesh > &, const bool allowUnmapped=false) const
Map surface field.
const labelList & pointPatchMap() const
Return point-patch map. Usually identical to patchMap except if additional patches are added to the p...
bool checkHasSubMesh() const
FatalError if subset has not been performed.
static tmp< DimensionedField< Type, volMesh > > interpolate(const DimensionedField< Type, volMesh > &, const fvMesh &sMesh, const labelUList &cellMap)
Map volume internal (dimensioned) field.
tmp< DimensionedField< Type, volMesh > > interpolate(const DimensionedField< Type, volMesh > &, const bool allowUnmapped=false) const
Map volume internal (dimensioned) field Optional unmapped argument (currently unused).
const labelList & faceFlipMap() const
Return face map with sign to encode flipped faces.
tmp< GeometricField< Type, pointPatchField, pointMesh > > interpolate(const GeometricField< Type, pointPatchField, pointMesh > &, const bool allowUnmapped=false) const
Map point field.
static tmp< GeometricField< Type, fvPatchField, volMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &, const fvMesh &sMesh, const labelUList &patchMap, const labelUList &cellMap, const labelUList &faceMap, const bool allowUnmapped=false)
Map volume field.
tmp< GeometricField< Type, fvPatchField, volMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &, const bool allowUnmapped=false) const
Map volume field.
const fvMesh & subMesh() const
Return reference to subset mesh.
const labelList & patchMap() const
Return patch map.
const labelList & pointMap() const
Return point map.
void setCellSubset(const labelUList &selectedCells, const label patchID=-1, const bool syncPar=true)
Use the specified subset of cells. Same as reset().
const fvMesh & mesh() const noexcept
Return baseMesh or subMesh, depending on the current state.
void clear()
Reset subMesh and all maps.
bool hasSubMesh() const noexcept
Have subMesh?
void reset()
Reset subMesh and all maps. Same as clear().
Mesh data needed to do the Finite Volume discretisation.
Mesh representing a set of points created from polyMesh.
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
A class representing the concept of 0 (zero) that can be used to avoid manipulating objects known to ...
#define ClassName(TypeNameString)
Add typeName information from argument TypeNameString to a class.
List< label > labelList
A List of labels.
HashSet< label, Hash< label > > labelHashSet
A HashSet of labels, uses label hasher.
UList< label > labelUList
A UList of labels.