Go to the documentation of this file.
37 Foam::sampledPatchInternalField::sampleOnFaces
42 const auto& vField = sampler.
psi();
46 auto&
values = tvalues.ref();
52 mappers_[i].
map().distribute(interpVals);
57 i < patchStart().size()-1
59 : patchFaceLabels().size()
62 for (label triI = patchStart()[i]; triI <
end; triI++)
64 values[triI] = interpVals[patchFaceLabels()[triI]];
74 Foam::sampledPatchInternalField::sampleOnPoints
82 sz +=
mesh().boundaryMesh()[patchIDs()[i]].size();
117 SubList<Type>(allPatchVals, patchVals.size(), sz) = patchVals;
118 sz += patchVals.size();
124 labelList meshFaceLabels(allPatchVals.size());
126 for (
const label
patchId : patchIDs())
131 meshFaceLabels[sz++] = pp.
start()+i;
A class for managing temporary objects.
List< T > values(const HashTable< T, Key, Hash > &tbl, const bool doSort=false)
List of values from HashTable, optionally sorted.
A List obtained as a section of another List.
#define forAll(list, i)
Loop across all elements in list.
const GeometricField< Type, fvPatchField, volMesh > & psi() const
Return the field to be interpolated.
void map(const UList< Type > &mapF, const labelUList &mapAddressing)
1 to 1 map from the given field
Generic templated field type.
A patch is a list of labels that address the faces in the global face list.
Class containing processor-to-processor mapping information.
A List with indirect addressing.
scalarField samples(nIntervals, Zero)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
void distribute(List< T > &fld, const bool dummyTransform=true, const int tag=UPstream::msgType()) const
Distribute data using default commsType.
Abstract base class for interpolation.
constexpr auto end(C &c) -> decltype(c.end())
Return iterator to the end of the container c.
label start() const
Return start label of this patch in the polyMesh face list.
tmp< Field< Type > > faceToPointInterpolate(const Field< Type > &ff) const
Interpolate from faces to points.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
Interpolation class within a primitive patch. Allows interpolation from points to faces and vice vers...
void reverseDistribute(const label constructSize, List< T > &, const bool dummyTransform=true, const int tag=UPstream::msgType()) const
Reverse distribute data using default commsType.
virtual Type interpolate(const vector &position, const label celli, const label facei=-1) const =0
Interpolate field to the given point in the given cell.
A list of faces which address into the list of points.