33 template <
class weightType>
39 const bool resetInternalFaces
49 forAll(resetPoints, pointI)
51 if (resetPoints[pointI])
54 pointDisplacement[pointI] = vector::zero;
60 template <
class weightType>
64 Field<weightType>& weights,
72 plusEqOp<weightType>(),
73 pTraits<weightType>::zero
84 autoPtr<PackedBoolList> averagePointsPtr
86 pointsToMove(facesToMove,
true)
91 forAll(averagePoints, pointI)
96 && weights[pointI] != pTraits<weightType>::zero
99 pointDisplacement[pointI] /= weights[pointI];
A traits class, which is primarily used for primitives and vector-space.
#define forAll(list, i)
Loop across all elements in list.
Generic templated field type.
autoPtr< PackedBoolList > pointsToMove(const labelList &facesToMove, const bool moveInternalFaces) const
Get a boolean list of the points to be moved.
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
void reset(const labelList &facesToMove, Field< weightType > &weights, vectorField &pointDisplacement, const bool resetInternalFaces=true) const
Reset the relevant weights and displacements to zero.
Field< vector > vectorField
Specialisation of Field<T> for vector.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
void average(const labelList &facesToMove, Field< weightType > &weights, vectorField &pointDisplacement) const
Average the displacements using the weights provided.
List< label > labelList
A List of labels.