Feel++  0.92.0
Public Member Functions | Protected Attributes
Feel::fem::CrouzeixRaviart< N, RealDim, PolySetType, T, Convex, TheTAG > Class Template Reference

CrouzeixRaviart Finite Element. More...

#include <crouzeixraviart.hpp>

Inheritance diagram for Feel::fem::CrouzeixRaviart< N, RealDim, PolySetType, T, Convex, TheTAG >:
Feel::FiniteElement< mpl::if_< mpl::bool_< Convex< N, 1, N >::is_simplex >, mpl::identity< Feel::detail::OrthonormalPolynomialSet< N, 1, RealDim, PolySetType, T, Convex > >, mpl::identity< fem::detail::RannacherTurekPolynomialSet< N, PolySetType, T > > >::type::type, detail::CrouzeixRaviartDual, PointSetEquiSpaced > type

List of all members.

Public Member Functions

 BOOST_STATIC_ASSERT (N > 1)
Constructors, destructor
 CrouzeixRaviart ()
 CrouzeixRaviart (CrouzeixRaviart const &cr)
 ~CrouzeixRaviart ()
Accessors
reference_convex_type const & referenceConvex () const

Protected Attributes

reference_convex_type _M_refconvex

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 CrouzeixRaviart< N,
RealDim, Scalar, T, Convex
component_basis_type
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 = super::nOrder
static const bool isTransformationEquivalent = true
static const bool isContinuous = true
static const uint16_type TAG = TheTAG
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 bool is_product = true
static const uint16_type nbPtsPerVertex = 0
static const uint16_type nbPtsPerEdge
static const uint16_type nbPtsPerFace
static const uint16_type nbPtsPerVolume = 0
static const uint16_type numPoints

Methods

std::string familyName () const
template<typename ExprType >
static auto isomorphism (ExprType &expr)-> decltype(expr)

Detailed Description

template<uint16_type N, uint16_type RealDim, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, uint16_type TheTAG = 0>
class Feel::fem::CrouzeixRaviart< N, RealDim, PolySetType, T, Convex, TheTAG >

CrouzeixRaviart Finite Element.

Author:
Christophe Prud'homme

Member Typedef Documentation

template<uint16_type N, uint16_type RealDim, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, uint16_type TheTAG = 0>
typedef super::polyset_type Feel::fem::CrouzeixRaviart< N, RealDim, PolySetType, T, Convex, TheTAG >::polyset_type

Member Function Documentation

template<uint16_type N, uint16_type RealDim, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, uint16_type TheTAG = 0>
std::string Feel::fem::CrouzeixRaviart< N, RealDim, PolySetType, T, Convex, TheTAG >::familyName ( ) const [inline, virtual]
template<uint16_type N, uint16_type RealDim, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, uint16_type TheTAG = 0>
reference_convex_type const& Feel::fem::CrouzeixRaviart< N, RealDim, PolySetType, T, Convex, TheTAG >::referenceConvex ( ) const [inline]
Returns:
the reference convex associated with the lagrange polynomials

Member Data Documentation

template<uint16_type N, uint16_type RealDim, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, uint16_type TheTAG = 0>
const uint16_type Feel::fem::CrouzeixRaviart< N, RealDim, PolySetType, T, Convex, TheTAG >::nbPtsPerEdge [static]
Initial value:
 mpl::if_<mpl::equal_to<mpl::int_<nDim>,mpl::int_<2> >,
                             mpl::int_<reference_convex_type::nbPtsPerEdge>,
                             mpl::int_<0> >::type::value
template<uint16_type N, uint16_type RealDim, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, uint16_type TheTAG = 0>
const uint16_type Feel::fem::CrouzeixRaviart< N, RealDim, PolySetType, T, Convex, TheTAG >::nbPtsPerFace [static]
Initial value:
 mpl::if_<mpl::equal_to<mpl::int_<nDim>,mpl::int_<3> >,
                             mpl::int_<reference_convex_type::nbPtsPerFace>,
                             mpl::int_<0> >::type::value
template<uint16_type N, uint16_type RealDim, template< uint16_type Dim > class PolySetType, typename T = double, template< uint16_type, uint16_type, uint16_type > class Convex = Simplex, uint16_type TheTAG = 0>
const uint16_type Feel::fem::CrouzeixRaviart< N, RealDim, PolySetType, T, Convex, TheTAG >::numPoints [static]
Initial value:
 ( reference_convex_type::numGeometricFaces*nbPtsPerFace+
                                           reference_convex_type::numEdges*nbPtsPerEdge )