73 #ifndef cloudSurfaceDistribution_functionObject_H
74 #define cloudSurfaceDistribution_functionObject_H
83 namespace functionObjects
90 class cloudSurfaceDistribution
92 public LagrangianMeshFunctionObject,
93 public cloudFunctionObject
134 autoPtr<setWriter> formatter_;
137 List<List<scalarField>> sums_;
140 List<List<Pair<scalar>>> ranges_;
151 const dictionary&
dict,
153 const wordList& defaultValue = NullObjectRef<wordList>()
160 const char*
const* componentNames(
const label fieldi)
const;
173 template<
template<
class>
class GeoField>
177 const label weightFieldi,
182 template<
template<
class>
class GeoField,
class Type>
192 void writeDistribution
194 const word& fieldName,
195 const word& componentName,
205 TypeName(
"cloudSurfaceDistribution");
253 virtual bool write();
256 virtual bool clear();
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
readOption
Enumeration defining the read options.
Mesh that relates to a sub-section of a Lagrangian mesh. This is used to construct fields that relate...
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
const word & name() const
Return the name of this functionObject.
Function to generate a plot of the distribution of the values of particles that pass through a face-z...
cloudSurfaceDistribution(const word &name, const Time &runTime, const dictionary &dict)
Construct from Time and dictionary.
selectionType
Selection type enumeration.
void operator=(const cloudSurfaceDistribution &)=delete
Disallow default bitwise assignment.
virtual ~cloudSurfaceDistribution()
Destructor.
static const NamedEnum< selectionType, 3 > selectionTypeNames
Selection type names.
virtual wordList fields() const
Return the list of fields required.
virtual bool executeAtStart() const
Return false so this function does not execute at the start.
virtual void distribute(const polyDistributionMap &)
Redistribute or update using the given distribution map.
virtual void postCrossFaces(const LagrangianSubScalarSubField &fraction)
Hook following face crossings of a specific sub-mesh.
virtual void mapMesh(const polyMeshMap &)
Update from another mesh using the given map.
virtual bool clear()
Clear the number flux.
TypeName("cloudSurfaceDistribution")
Runtime type information.
virtual bool execute()
Do nothing. Everything happens in faces crossing hooks.
virtual void preCrossFaces(const LagrangianSubScalarSubField &fraction)
Hook before face crossings of a specific sub-mesh.
virtual void topoChange(const polyTopoChangeMap &map)
Update topology using the given map.
virtual bool write()
Write the number flux.
virtual bool read(const dictionary &)
Read parameters.
Class containing mesh-to-mesh mapping information after a mesh distribution where we send parts of me...
Class containing mesh-to-mesh mapping information.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
A class for handling words, derived from string.
List< word > wordList
A List of words.
List< label > labelList
A List of labels.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
HashSet< label, Hash< label > > labelHashSet
A HashSet with label keys.