Go to the documentation of this file.
29 #ifndef MapConsistentVolFields_H
30 #define MapConsistentVolFields_H
45 Boundary& fldBf =
fld.boundaryFieldRef();
61 tgtField.type() == tgtField.
patch().
patch().type()
85 tgtField.type() == tgtField.
patch().
patch().type()
96 fld.mesh().globalData().patchSchedule();
98 forAll(patchSchedule, patchEvali)
100 label patchi = patchSchedule[patchEvali].patch;
105 tgtField.type() == tgtField.
patch().
patch().type()
109 if (patchSchedule[patchEvali].init)
123 template<
class Type,
class CombineOp>
140 selectedFields.empty()
145 for (
const word& fieldName : fieldNames)
147 const fieldType fieldSource(*(objects[fieldName]), meshSource,
false);
157 if (targetIO.typeHeaderOk<fieldType>(
true))
159 Info<<
" interpolating onto existing field "
160 << fieldName <<
endl;
162 fieldType fieldTarget(targetIO, meshTarget,
false);
172 Info<<
" creating new field "
173 << fieldName <<
endl;
182 fieldType fieldTarget(targetIO, tfieldTarget);
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
Defines the attributes of an object for which implicit objectRegistry management is supported,...
A class for handling words, derived from Foam::string.
A class for managing temporary objects.
static bool & parRun()
Is this a parallel run?
static word timeName(const scalar t, const int precision=precision_)
wordList sortedNames() const
The sorted names of the IOobjects.
static void waitRequests(const label start=0)
Wait until all requests (from start onwards) have finished.
Ostream & endl(Ostream &os)
Add newline and flush stream.
static commsTypes defaultCommsType
Default commsType.
virtual void initEvaluate(const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
Initialise the evaluation of the patch field.
void mapSrcToTgt(const UList< Type > &srcFld, const CombineOp &cop, List< Type > &result) const
Map field from src to tgt mesh with defined operation.
#define forAll(list, i)
Loop across all elements in list.
Class to calculate the cell-addressing between two overlapping meshes.
messageStream Info
Information stream (uses stdout - output is on the master only)
virtual void evaluate(const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
Evaluate the patch field, sets Updated to false.
gmvFile<< "tracers "<< particles.size()<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().x()<< ' ';}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().y()<< ' ';}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().z()<< ' ';}gmvFile<< nl;for(const word &name :lagrangianScalarNames){ IOField< scalar > fld(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
static bool constraintType(const word &pt)
Return true if the given type is a constraint type.
const polyMesh & srcRegion() const
Return const access to the source mesh.
Mesh data needed to do the Finite Volume discretisation.
List of IOobjects with searching and retrieving facilities.
void MapVolFields(const IOobjectList &objects, const meshToMesh0 &meshToMesh0Interp, const meshToMesh0::order &mapOrder, const CombineOp &cop)
static label nRequests()
Get number of outstanding requests.
A List of wordRe with additional matching capabilities.
const polyMesh & tgtRegion() const
Return const access to the target mesh.
const polyPatch & patch() const
Return the polyPatch.
const Time & time() const
Return the top-level database.
void evaluateConstraintTypes(GeometricField< Type, fvPatchField, volMesh > &fld)
const fvPatch & patch() const
Return patch.