31 GeometricField<Type, fvPatchField, volMesh>&
fld,
32 const List<List<Type>>&
values 37 auto& vfbf =
fld.boundaryFieldRef();
42 const auto& finalAgglom = coarseMesh.patchFaceAgglomeration();
46 const labelList& agglom = finalAgglom[patchi];
48 if (agglom.empty())
continue;
50 label nAgglom =
max(agglom) + 1;
53 coarseMesh.patchFaceMap()[patchi];
57 const label coarseFacei = coarsePatchFace[i];
58 const labelList& fineFaces = coarseToFine[coarseFacei];
59 const Type sumValues =
sum(
values[compacti]);
61 for (
const label fineFacei : fineFaces)
63 vfbf[patchi][fineFacei] = sumValues;
75 auto& vfp = vfbf[patchi];
dimensioned< Type > sum(const DimensionedField< Type, GeoMesh > &f1)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
List< labelList > labelListList
List of labelList.
#define forAll(list, i)
Loop across all elements in list.
List< T > values(const HashTable< T, Key, Hash > &tbl, const bool doSort=false)
List of values from HashTable, optionally sorted.
void interpolate(GeometricField< Type, fvPatchField, volMesh > &fld, const List< List< Type >> &values) const
Interpolate field.
labelListList invertOneToMany(const label len, const labelUList &map)
Invert one-to-many map. Unmapped elements will be size 0.
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))
autoPtr< singleCellFvMesh > agglomMeshPtr_
Agglomerated mesh representation.
List< label > labelList
A List of labels.
labelList patchIDs_
List of participating patch IDs.