35 template<
class Type,
class Stencil>
47 const GeometricField<Type, fvPatchField, volMesh>& vtf,
53 const fvMesh& mesh = vtf.mesh();
61 tmp<GeometricField<GradType, fvPatchField, volMesh>> tlsGrad
73 extrapolatedCalculatedFvPatchField<GradType>::typeName
76 GeometricField<GradType, fvPatchField, volMesh>& lsGrad = tlsGrad.ref();
77 Field<GradType>& lsGradIf = lsGrad;
79 const extendedCentredCellToCellStencil& stencil = lsv.stencil();
80 const List<List<label>>& stencilAddr = stencil.stencil();
81 const List<List<vector>>& lsvs = lsv.vectors();
85 List<Type> flatVtf(stencil.map().constructSize(),
Zero);
90 flatVtf[celli] = vtf[celli];
96 const fvPatchField<Type>& ptf = vtf.boundaryField()[
patchi];
100 - mesh.nInternalFaces()
105 flatVtf[nCompact++] = ptf[i];
110 stencil.map().distribute(flatVtf);
114 forAll(stencilAddr, celli)
116 const labelList& compactCells = stencilAddr[celli];
117 const List<vector>& lsvc = lsvs[celli];
121 lsGradIf[celli] += lsvc[i]*flatVtf[compactCells[i]];
126 lsGrad.correctBoundaryConditions();
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
rDeltaT correctBoundaryConditions()
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
typeOfRank< typename pTraits< arg1 >::cmptType, direction(pTraits< arg1 >::rank)+direction(pTraits< arg2 >::rank) >::type type
Generic GeometricField class.
const dimensionSet dimLength
Mesh data needed to do the Finite Volume discretisation.
virtual tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > calcGrad(const GeometricField< Type, fvPatchField, volMesh > &vsf, const word &name) const
Return the gradient of the given field to the gradScheme::grad.
autoPtr< BasicCompressibleMomentumTransportModel > New(const volScalarField &rho, const volVectorField &U, const surfaceScalarField &phi, const typename BasicCompressibleMomentumTransportModel::transportModel &transport)
List< label > labelList
A List of labels.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
A class for managing temporary objects.