36 #ifndef LagrangianSpScheme_H
37 #define LagrangianSpScheme_H
62 template<
class Type,
class SpType>
177 #define defineLagrangianSpScheme(Type, SpType) \
181 namespace Lagrangian \
183 typedef SpScheme<Type, SpType> Type##SpType##SpScheme; \
185 defineNamedTemplateTypeNameAndDebug \
187 Type##SpType##SpScheme, \
191 defineTemplateRunTimeSelectionTable \
193 Type##SpType##SpScheme, \
200 #define makeLagrangianSpScheme(Type, SpType, SpSchemeType) \
204 namespace Lagrangian \
206 typedef SpScheme<Type, SpType> Type##SpType##SpScheme; \
208 namespace SpSchemes \
210 typedef SpSchemeType<Type, SpType> Type##SpType##SpSchemeType; \
212 defineNamedTemplateTypeNameAndDebug \
214 Type##SpType##SpSchemeType, \
218 addToRunTimeSelectionTable \
220 Type##SpType##SpScheme, \
221 Type##SpType##SpSchemeType, \
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Class containing Lagrangian geometry and topology.
Abstract base class for Lagrangian Sp schemes.
declareRunTimeSelectionTable(tmp, SpScheme, Istream,(const LagrangianMesh &mesh, Istream &is),(mesh, is))
Declare run-time constructor selection tables.
void operator=(const SpScheme &)=delete
Disallow default bitwise assignment.
TypeName("SpScheme")
Runtime type information.
static tmp< SpScheme< Type, SpType > > New(const LagrangianMesh &mesh, Istream &is)
Return a pointer to a new SpScheme.
static tmp< LagrangianSubField< Type > > inner(const LagrangianSubScalarField &Sp, const LagrangianSubSubField< Type > &psi)
Generate the inner product of a scalar coefficient with a field.
SpScheme(const LagrangianMesh &mesh)
Construct from a mesh.
virtual ~SpScheme()
Destructor.
const LagrangianMesh & mesh_
Reference to the mesh.
virtual tmp< LagrangianEqn< Type > > LagrangianmSp(const LagrangianSubField< SpType > &Sp, const LagrangianSubSubField< Type > &psi)=0
Return the source matrix.
const LagrangianMesh & mesh() const
Return mesh reference.
typeOfRank< typename pTraits< arg1 >::cmptType, direction(pTraits< arg1 >::rank)+direction(pTraits< arg2 >::rank) - 2 >::type type
Reference counter for various OpenFOAM components.
A class for managing temporary objects.
const volScalarField & psi
tmp< VolField< Type > > Sp(const volScalarField &sp, const VolField< Type > &vf)
Macros to ease declaration of run-time selection tables.