30template<
class GeoField>
42template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
59template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
65 const bool readOldTime
78 fields.set(i,
new GeoField(fieldObjects[i],
mesh, readOldTime));
83template<
class Mesh,
class GeoField>
99 fields.set(i,
new GeoField(fieldObjects[i],
mesh));
104template<
class GeoField,
class MeshSubsetter>
108 const typename GeoField::Mesh&
mesh,
112 const bool deregister
128 <<
"Objects not synchronised across processors." <<
nl
145 mesh.
thisDb().objectRegistry::template lookupClass<GeoField>()
150 GeoField&
fld =
const_cast<GeoField&
>(*iter.val());
152 if (!
fld.ownedByRegistry())
173 bool decompose =
true;
176 if (haveMeshOnProc[proci])
229 const label nDicts = (subsetterPtr ?
fields.size() : label(0));
238 const auto& subsetter = subsetterPtr();
246 toProcs << tsubfld();
263 fromMaster >> fieldDicts;
314 mesh.
thisDb().objectRegistry::template lookupClass<GeoField>()
319 GeoField&
fld =
const_cast<GeoField&
>(*iter.val());
321 if (!
fld.ownedByRegistry())
Info<< nl<< "Wrote faMesh in vtk format: "<< writer.output().name()<< nl;}{ vtk::lineWriter writer(aMesh.points(), aMesh.edges(), fileName(aMesh.mesh().time().globalPath()/"finiteArea-edges"));writer.writeGeometry();writer.beginCellData(4);writer.writeProcIDs();{ Field< scalar > fld(faMeshTools::flattenEdgeField(aMesh.magLe(), true))
Generic mesh wrapper used by volMesh, surfaceMesh, pointMesh etc.
Generic GeometricField class.
A HashTable similar to std::unordered_map.
List of IOobjects with searching and retrieving facilities.
wordList sortedNames() const
The sorted names of the IOobjects.
IOobjectList lookupClass(const char *clsName) const
The list of IOobjects with the given headerClassName.
UPtrList< const IOobject > sorted() const
The sorted list of IOobjects.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
writeOption writeOpt() const noexcept
The write option.
virtual Ostream & endBlock()
Write end block group.
virtual Ostream & beginBlock(const keyType &kw)
Write begin block group with the given name.
UPstream::rangeType subProcs() const noexcept
Range of sub-processes indices associated with PstreamBuffers.
static void broadcast(Type &value, const label comm=UPstream::worldComm)
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
static word timeName(const scalar t, const int precision=precision_)
void size(const label n)
Older name for setAddressableSize.
static constexpr int masterNo() noexcept
Process index of the master (always 0)
static bool & parRun() noexcept
Test if this a parallel run.
A list of pointers to objects of type <T>, without allocation/deallocation management of the pointers...
label size() const noexcept
The number of elements in the list.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
faMesh Mesh
The mesh type.
static void readField(const IOobject &io, const typename GeoField::Mesh &mesh, const label i, PtrList< GeoField > &fields)
Generic mesh-based field reading.
Reads fields from the time directories and adds them to the mesh database for further post-processing...
virtual const objectRegistry & thisDb() const
Return the object registry - resolve conflict polyMesh/lduMesh.
const Time & time() const
Return the top-level database.
int myProcNo() const noexcept
Return processor number.
splitCell * master() const
A class for managing temporary objects.
@ BEGIN_LIST
Begin list [isseparator].
@ END_LIST
End list [isseparator].
A class for handling words, derived from Foam::string.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
IOobject io("surfaceFilmProperties", mesh.time().constant(), mesh, IOobject::READ_IF_PRESENT, IOobject::NO_WRITE, false)
FlatOutput::OutputAdaptor< Container, Delimiters > flatOutput(const Container &obj, Delimiters delim)
Global flatOutput() function with specified output delimiters.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
errorManipArg< error, int > exit(error &err, const int errNo=1)
constexpr char nl
The newline '\n' character (0x0a)
multivariateSurfaceInterpolationScheme< scalar >::fieldTable fields
#define forAll(list, i)
Loop across all elements in list.
#define forAllConstIters(container, iter)
Iterate across all elements of the container object with const access.