43 tmp<VolField<typename outerProduct<vector, Type>::type>>
46 const SurfaceField<Type>& ssf
59 tmp<VolField<GradType>> treconField
63 "reconstruct("+ssf.name()+
')',
75 Field<GradType>& rf = treconField();
79 label own = owner[facei];
80 label nei = neighbour[facei];
82 rf[own] += (Cf[facei] -
C[own])*ssf[facei];
83 rf[nei] -= (Cf[facei] -
C[nei])*ssf[facei];
86 const typename SurfaceField<Type>::
87 Boundary& bsf = ssf.boundaryField();
91 const fvsPatchField<Type>& psf = bsf[
patchi];
98 label own = pOwner[pFacei];
99 rf[own] += (pCf[pFacei] -
C[own])*psf[pFacei];
105 treconField().correctBoundaryConditions();
112 tmp<VolField<typename outerProduct<vector, Type>::type>>
115 const tmp<SurfaceField<Type>>& tssf
119 tmp<VolField<GradType>> tvf
#define forAll(list, i)
Loop across all elements in list.
static const char *const typeName
static tmp< GeometricField< Type, GeoMesh, PrimitiveField > > New(const word &name, const Internal &, const PtrList< Patch > &, const HashPtrTable< Source > &=HashPtrTable< Source >())
Return a temporary field constructed from name,.
const volVectorField & C() const
Return cell centres.
const DimensionedField< scalar, volMesh > & V() const
Return cell volumes.
const labelUList & owner() const
Internal face owner.
const fvBoundaryMesh & boundary() const
Return reference to boundary mesh.
const surfaceVectorField & Cf() const
Return face centres.
const labelUList & neighbour() const
Internal face neighbour.
const polyMesh & mesh() const
Return reference to polyMesh.
typeOfRank< typename pTraits< arg1 >::cmptType, direction(pTraits< arg1 >::rank)+direction(pTraits< arg2 >::rank) >::type type
Foam::fvMesh mesh(Foam::IOobject(regionName, runTime.name(), runTime, Foam::IOobject::MUST_READ), false)
Reconstruct volField from a face flux field.
tmp< VolField< typename outerProduct< vector, Type >::type > > reconstruct(const SurfaceField< Type > &ssf)
static const coefficient C("C", dimTemperature, 234.5)
VolField< vector > volVectorField
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Field< vector > vectorField
Specialisation of Field<T> for vector.
const dimensionSet dimArea
SurfaceField< vector > surfaceVectorField
UList< label > labelUList