58 const GeometricField<Type, faePatchField, edgeMesh>& ssf,
65 tmp<GeometricField<GradType, faPatchField, areaMesh>> tgGrad =
68 GeometricField<GradType, faPatchField, areaMesh>& gGrad = tgGrad.ref();
70 gGrad -=
n*(
n & gGrad);
71 gGrad.correctBoundaryConditions();
89 const GeometricField<Type, faPatchField, areaMesh>& vsf,
94 typedef GeometricField<GradType, faPatchField, areaMesh> GradFieldType;
96 tmp<GradFieldType> tgGrad
101 *tinterpScheme_().interpolate(vsf)
104 GradFieldType& gGrad = tgGrad.ref();
106 gGrad.correctBoundaryConditions();
131 vsf.
mesh().Le().boundaryField()[patchI]/
132 vsf.
mesh().magLe().boundaryField()[patchI]
135 gGrad.boundaryFieldRef()[patchI] += m*
138 - (m & gGrad.boundaryField()[patchI])
cellMask correctBoundaryConditions()
typeOfRank< typename pTraits< arg1 >::cmptType, direction(pTraits< arg1 >::rank)+direction(pTraits< arg2 >::rank) >::type type
Generic GeometricField class.
faPatchField<Type> abstract base class. This class gives a fat-interface to all derived classes cover...
#define forAll(list, i)
Loop across all elements in list.
Calculate the gradient of the given field.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
const Mesh & mesh() const noexcept
Return mesh.
tmp< GeometricField< Type, faPatchField, areaMesh > > edgeIntegrate(const GeometricField< Type, faePatchField, edgeMesh > &ssf)
virtual tmp< GeometricField< typename outerProduct< vector, Type >::type, faPatchField, areaMesh > > calcGrad(const GeometricField< Type, faPatchField, areaMesh > &vsf, const word &name) const
Return the gradient of the given field to the gradScheme::grad for optional caching.
Mesh data needed to do the Finite Area discretisation.
static tmp< GeometricField< typename outerProduct< vector, Type >::type, faPatchField, areaMesh > > gradf(const GeometricField< Type, faePatchField, edgeMesh > &, const word &name)
Return the gradient of the given field calculated using Gauss' theorem on the given surface field...
static void correctBoundaryConditions(const GeometricField< Type, faPatchField, areaMesh > &, GeometricField< typename outerProduct< vector, Type >::type, faPatchField, areaMesh > &)
Correct the boundary values of the gradient using the patchField.
GeometricField< vector, faPatchField, areaMesh > areaVectorField
const Boundary & boundaryField() const noexcept
Return const-reference to the boundary field.