38 #ifndef multivariateScheme_H 39 #define multivariateScheme_H 53 template<
class Type,
class Scheme>
57 public Scheme::LimiterType
155 #define makeLimitedMultivariateSurfaceInterpolationScheme(SS, LIMITER) \ 156 typedef multivariateScheme \ 159 LimitedScheme<scalar, LIMITER<NVDTVD>, limitFuncs::magSqr> \ 161 multivariateScheme##LIMITER##_; \ 162 defineTemplateTypeNameAndDebugWithName \ 164 multivariateScheme##LIMITER##_, \ 169 multivariateSurfaceInterpolationScheme<scalar>::addIstreamConstructorToTable \ 174 LimitedScheme<scalar, LIMITER<NVDTVD>, limitFuncs::magSqr> \ 177 addMultivariate##SS##ConstructorToTable_; 180 #define makeLLimitedMultivariateSurfaceInterpolationScheme\ 188 typedef multivariateScheme \ 191 LimitedScheme<scalar, LLIMITER<LIMITER<NVDTVD>>, limitFuncs::LIMFUNC> \ 193 multivariateScheme##LLIMITER##LIMITER##NVDTVD##LIMFUNC##_; \ 194 defineTemplateTypeNameAndDebugWithName \ 196 multivariateScheme##LLIMITER##LIMITER##NVDTVD##LIMFUNC##_, \ 201 multivariateSurfaceInterpolationScheme<scalar>::addIstreamConstructorToTable \ 206 LimitedScheme<scalar, LLIMITER<LIMITER<NVDTVD>>, limitFuncs::LIMFUNC> \ 209 addMultivariate##SS##ConstructorToTable_;
surfaceInterpolationScheme sub-class returned by operator(field)
Generic multi-variate discretisation scheme class which may be instantiated for any of the NVD...
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
const fvMesh & mesh() const
Return mesh reference.
const fieldTable & fields() const
Return fields to be interpolated.
tmp< surfaceScalarField > weights(const GeometricField< Type, fvPatchField, volMesh > &) const
Return the interpolation weighting factors.
TypeName("multivariateScheme")
Runtime type information.
fieldScheme(const GeometricField< Type, fvPatchField, volMesh > &field, const surfaceScalarField &weights)
Mesh data needed to do the Finite Volume discretisation.
Abstract base class for multi-variate surface interpolation schemes.
A class for managing temporary objects.