44 #ifndef Foam_faFieldDecomposer_H 45 #define Foam_faFieldDecomposer_H 77 label sizeBeforeMapping_;
89 const label addressingOffset
97 return directAddressing_.
size();
102 return sizeBeforeMapping_;
117 return directAddressing_;
123 class processorAreaPatchFieldDecomposer
129 label sizeBeforeMapping_;
138 const label nTotalFaces,
157 return addressing_.
size();
162 return sizeBeforeMapping_;
192 label sizeBeforeMapping_;
210 return addressing_.
size();
215 return sizeBeforeMapping_;
260 processorAreaPatchFieldDecomposerPtrs_;
263 processorEdgePatchFieldDecomposerPtrs_;
296 const faMesh& completeMesh,
307 const label nTotalFaces,
338 const label nTotalFaces,
363 template<
class GeoField>
373 template<
class>
class PatchField,
381 const bool readOldTime
385 template<
class Mesh,
class GeoField>
407 std::unique_ptr<privateCache> cache_;
454 const bitSet& haveMeshOnProc,
bool direct() const
Is it a direct (non-interpolating) mapper?
Finite area mesh (used for 2-D non-Euclidian finite area method) defined using a patch of faces on a ...
const labelListList & addressing() const
Return the interpolation addressing.
void size(const label n)
Older name for setAddressableSize.
virtual bool hasUnmapped() const
Any unmapped values?
Finite Area area and edge field decomposer.
List of IOobjects with searching and retrieving facilities. Implemented as a HashTable, so the various sorted methods should be used if traversing in parallel.
virtual label sizeBeforeMapping() const
~faFieldDecomposer()=default
Destructor.
void readAllFields(const faMesh &mesh, const IOobjectList &objects)
Read all fields given mesh and objects.
Holds a reference to the original mesh (the baseMesh) and optionally to a subset of that mesh (the su...
Generic GeometricField class.
const labelListList & addressing() const
Return the interpolation addressing.
processorEdgePatchFieldDecomposer(label sizeBeforeMapping, const labelUList &addressingSlice)
Construct given addressing.
void decomposeFields(const PtrList< GeoField > &fields) const
const scalarListList & weights() const
Return the interpolation weights.
multivariateSurfaceInterpolationScheme< scalar >::fieldTable fields
virtual bool hasUnmapped() const
Any unmapped values?
bool direct() const
Is it a direct (non-interpolating) mapper?
virtual bool hasUnmapped() const
Any unmapped values?
static void readFields(const typename GeoMesh::Mesh &mesh, const IOobjectList &objects, PtrList< GeometricField< Type, PatchField, GeoMesh >> &fields, const bool readOldTime)
Read the fields and store on the pointer list.
void reset(const faMesh &completeMesh)
Reset mappers using information from the complete mesh.
fieldsCache()
Default construct.
virtual label sizeBeforeMapping() const
label size() const
The size of the mapper.
patchFieldDecomposer(const label sizeBeforeMapping, const labelUList &addressingSlice, const label addressingOffset)
Construct given addressing.
virtual label sizeBeforeMapping() const
const scalarListList & weights() const
Return the interpolation weights.
Patch field decomposer class.
void clear()
Remove all mappers.
bool empty() const
No fields.
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers...
static const Field< scalar > & null()
Return nullObject reference Field.
bool empty() const
True if no mappers have been allocated.
label size() const
The size of the mapper.
A class representing the concept of 0 (zero) that can be used to avoid manipulating objects known to ...
~fieldsCache()
Destructor.
label size() const
The size of the mapper.
Generic mesh wrapper used by volMesh, surfaceMesh, pointMesh etc.
A class for managing temporary objects.
A FieldMapper for finite-area patch fields.
label size() const
Number of fields.
processorAreaPatchFieldDecomposer(const label nTotalFaces, const labelUList &edgeOwner, const labelUList &edgeNeigbour, const labelUList &addressingSlice, const scalarField &edgeWeights=scalarField::null())
Construct addressing from details.
tmp< GeometricField< Type, faPatchField, areaMesh > > decomposeField(const GeometricField< Type, faPatchField, areaMesh > &field) const
Decompose area field.
bool direct() const
Is it a direct (non-interpolating) mapper?
const labelUList & directAddressing() const
Return the direct addressing values.
void decomposeAllFields(const faFieldDecomposer &decomposer, bool report=false) const
Decompose and write all fields.
Processor patch field decomposer class.