Logo  0.95.0-final
Finite Element Embedded Library and Language in C++
Feel++ Feel++ on Github Feel++ community
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Feel::fem::Hermite< N, O, PolySetType, T, Convex, Pts > Class Template Reference

#include <hermite.hpp>

Detailed Description

template<uint16_type N, uint16_type O, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, template< class, uint16_type, class > class Pts = PointSetEquiSpaced>
class Feel::fem::Hermite< N, O, PolySetType, T, Convex, Pts >

Hermite polynomial set.

The Hermite polynomial set is parametrized by

  1. dimension of the geometrical space
  2. order of the Hermite polynomials
  3. the numerical type
  4. the geometry it applies to (convexes such as simplices or product of simplices)
Author
Christophe Prud'homme
See Also
+ Inheritance diagram for Feel::fem::Hermite< N, O, PolySetType, T, Convex, Pts >:

Public Member Functions

 BOOST_STATIC_ASSERT ((boost::is_same< PolySetType< N >, Scalar< N > >::value||boost::is_same< PolySetType< N >, Vectorial< N > >::value||boost::is_same< PolySetType< N >, Tensor2< N > >::value))
 
Constructors, destructor
 Hermite ()
 
virtual ~Hermite ()
 
Accessors
reference_convex_type const & referenceConvex () const
 
std::string familyName () const
 
- Public Member Functions inherited from Feel::FiniteElement< detail::OrthonormalPolynomialSet< N, N, O, PolySetType, T, Convex >, details::HermiteDual, Pts >
 FiniteElement (dual_space_type const &pdual)
 
 FiniteElement (FiniteElement const &fe)
 
 ~FiniteElement ()
 
self_typeoperator= (self_type const &fe)
 
value_type operator() (uint16_type i, ublas::vector_expression< AE > const &pt) const
 
value_type operator() (ublas::vector_expression< AE > const &pt) const
 
matrix_type operator() (points_type const &pts) const
 
void domainShape () const
 
uint16_type nbPoints () const
 
primal_space_type const & primal () const
 
dual_space_type const & dual () const
 
points_type const & points () const
 
points_type const & points (uint16_type f) const
 

Static Public Member Functions

Methods
template<typename GMContext , typename PC , typename Phi , typename GPhi , typename HPhi >
static void transform (boost::shared_ptr< GMContext > gmc, boost::shared_ptr< PC > const &pc, Phi &phi_t, GPhi &g_phi_t, const bool do_gradient, HPhi &h_phi_t, const bool do_hessian)
 
template<typename GMContext , typename PC , typename Phi , typename GPhi , typename HPhi >
static void transform (GMContext const &gmc, PC const &pc, Phi &phi_t, GPhi &g_phi_t, const bool do_gradient, HPhi &h_phi_t, const bool do_hessian)
 

Typedefs

typedef super::value_type value_type
 
typedef super::primal_space_type primal_space_type
 
typedef super::dual_space_type dual_space_type
 
typedef Continuous continuity_type
 
typedef super::polyset_type polyset_type
 
typedef Hermite< N, O, Scalar,
T, Convex, Pts > 
component_basis_type
 
typedef mpl::if_
< mpl::equal_to< mpl::int_
< nDim >, mpl::int_
< 1 > >, mpl::identity
< boost::none_t >
, mpl::identity< Hermite< N-1,
O, Scalar, T, Convex, Pts >
> >::type::type 
face_basis_type
 
typedef boost::shared_ptr
< face_basis_type > 
face_basis_ptrtype
 
typedef
dual_space_type::convex_type 
convex_type
 
typedef
dual_space_type::pointset_type 
pointset_type
 
typedef
dual_space_type::reference_convex_type 
reference_convex_type
 
typedef
reference_convex_type::node_type 
node_type
 
typedef
reference_convex_type::points_type 
points_type
 
static const uint16_type nDim = N
 
static const uint16_type nOrder = O
 
static const bool isTransformationEquivalent = false
 
static const bool isContinuous = true
 
static const bool is_tensor2 = polyset_type::is_tensor2
 
static const bool is_vectorial = polyset_type::is_vectorial
 
static const bool is_scalar = polyset_type::is_scalar
 
static const uint16_type nComponents = polyset_type::nComponents
 
static const uint16_type numPoints = reference_convex_type::numPoints
 
static const uint16_type nbPtsPerVertex = reference_convex_type::nbPtsPerVertex
 
static const uint16_type nbPtsPerEdge = reference_convex_type::nbPtsPerEdge
 
static const uint16_type nbPtsPerFace = reference_convex_type::nbPtsPerFace
 
static const uint16_type nbPtsPerVolume = reference_convex_type::nbPtsPerVolume
 
static const uint16_type nLocalDof = super::nLocalDof
 

Member Typedef Documentation

template<uint16_type N, uint16_type O, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, template< class, uint16_type, class > class Pts = PointSetEquiSpaced>
typedef super::polyset_type Feel::fem::Hermite< N, O, PolySetType, T, Convex, Pts >::polyset_type

Polynomial Set type: scalar or vectorial

Member Function Documentation

template<uint16_type N, uint16_type O, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, template< class, uint16_type, class > class Pts = PointSetEquiSpaced>
std::string Feel::fem::Hermite< N, O, PolySetType, T, Convex, Pts >::familyName ( ) const
inlinevirtual
template<uint16_type N, uint16_type O, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, template< class, uint16_type, class > class Pts = PointSetEquiSpaced>
reference_convex_type const& Feel::fem::Hermite< N, O, PolySetType, T, Convex, Pts >::referenceConvex ( ) const
inline
Returns
the reference convex associated with the hermite polynomials

The documentation for this class was generated from the following file:

Generated on Sun Dec 22 2013 13:11:22 for Feel++ by doxygen 1.8.5