51 const GeometricField<Type, fvsPatchField, surfaceMesh>& ssf
56 const fvMesh&
mesh = ssf.mesh();
58 tmp<GeometricField<GradType, fvPatchField, volMesh> > tgGrad
60 new GeometricField<GradType, fvPatchField, volMesh>
64 "grad("+ssf.name()+
')',
75 pTraits<GradType>::zero
77 zeroGradientFvPatchField<GradType>::typeName
80 GeometricField<GradType, fvPatchField, volMesh>& gGrad = tgGrad();
86 Field<GradType>& igGrad = gGrad;
87 const Field<Type>& issf = ssf;
91 GradType Sfssf = Sf[facei]*issf[facei];
93 igGrad[owner[facei]] += Sfssf;
94 igGrad[neighbour[facei]] -= Sfssf;
100 mesh.boundary()[
patchi].faceCells();
104 const fvsPatchField<Type>& pssf = ssf.boundaryField()[
patchi];
108 igGrad[pFaceCells[facei]] += pSf[facei]*pssf[facei];
114 gGrad.correctBoundaryConditions();
130 const GeometricField<Type, fvPatchField, volMesh>& vsf
135 tmp<GeometricField<GradType, fvPatchField, volMesh> > tgGrad
139 GeometricField<GradType, fvPatchField, volMesh>& gGrad = tgGrad();
141 gGrad.rename(
"grad(" + vsf.name() +
')');
166 gGrad.boundaryField()[
patchi] += n *
169 - (n & gGrad.boundaryField()[
patchi])