33 const fvMesh& completeMesh,
34 const PtrList<fvMesh>& procMeshes,
40 completeMesh_(completeMesh),
41 procMeshes_(procMeshes),
45 passiveParticleCloud completePositions
49 IDLList<passiveParticle>()
55 Cloud<passiveParticle> procPositions
65 const passiveParticle&
p = iter();
66 const label completeCelli = cellProcAddressing[proci][
p.cell()];
67 const label completeFacei =
68 mag(faceProcAddressing[proci][
p.tetFace()]) - 1;
70 completePositions.append
91 IOPosition<Cloud<passiveParticle>>(completePositions).
write();
103 bool Foam::lagrangianFieldReconstructor::reconstructs
106 const HashSet<word>& selectedFields
111 #define DO_LAGRANGIAN_FIELDS_TYPE(Type, nullArg) \
113 || reconstructs<IOField<Type>>(objects, selectedFields) \
114 || reconstructs<IOField<Field<Type>>>(objects, selectedFields) \
115 || reconstructs<CompactIOField<Field<Type>>>(objects, selectedFields);
116 DO_LAGRANGIAN_FIELDS_TYPE(
label, )
118 #undef DO_LAGRANGIAN_FIELDS_TYPE
#define forAll(list, i)
Loop across all elements in list.
#define forAllConstIter(Container, container, iter)
Iterate across all elements in the container object of type.
lagrangianFieldReconstructor(const fvMesh &completeMesh, const PtrList< fvMesh > &procMeshes, const labelListList &faceProcAddressing, const labelListList &cellProcAddressing, const word &cloudName)
Construct from components.
~lagrangianFieldReconstructor()
Destructor.
void write(std::ostream &os, const bool binary, List< floatScalar > &fField)
Write floats ascii or binary.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
List< labelList > labelListList
A List of labelList.
dimensioned< scalar > mag(const dimensioned< Type > &)
FOR_ALL_FIELD_TYPES(makeFieldSourceTypedef)
const word cloudName(propsDict.lookup("cloudName"))