libMesh
Classes | Namespaces | Typedefs | Functions
fe.h File Reference

Go to the source code of this file.

Classes

class  libMesh::InfFE< Dim, T_radial, T_map >
 A specific instantiation of the FEBase class. More...
 
struct  libMesh::FEOutputType< T >
 Most finite element types in libMesh are scalar-valued. More...
 
struct  libMesh::FEOutputType< LAGRANGE_VEC >
 Specialize for non-scalar-valued elements. More...
 
struct  libMesh::FEOutputType< L2_LAGRANGE_VEC >
 
struct  libMesh::FEOutputType< HIERARCHIC_VEC >
 
struct  libMesh::FEOutputType< L2_HIERARCHIC_VEC >
 
struct  libMesh::FEOutputType< NEDELEC_ONE >
 
struct  libMesh::FEOutputType< MONOMIAL_VEC >
 
struct  libMesh::FEOutputType< RAVIART_THOMAS >
 
struct  libMesh::FEOutputType< L2_RAVIART_THOMAS >
 
class  libMesh::FE< Dim, T >
 A specific instantiation of the FEBase class. More...
 
class  libMesh::FEClough< Dim >
 Clough-Tocher finite elements. More...
 
class  libMesh::FEHermite< Dim >
 Hermite finite elements. More...
 
class  libMesh::FESubdivision
 
class  libMesh::FEHierarchic< Dim >
 Hierarchic finite elements. More...
 
class  libMesh::FEL2Hierarchic< Dim >
 Discontinuous Hierarchic finite elements. More...
 
class  libMesh::FELagrange< Dim >
 Lagrange finite elements. More...
 
class  libMesh::FEL2Lagrange< Dim >
 Discontinuous Lagrange finite elements. More...
 
class  libMesh::FEMonomial< Dim >
 Monomial finite elements. More...
 
class  libMesh::FEScalar< Dim >
 The FEScalar class is used for working with SCALAR variables. More...
 
class  libMesh::FEXYZ< Dim >
 XYZ finite elements. More...
 
class  libMesh::FELagrangeVec< Dim >
 FELagrangeVec objects are used for working with vector-valued finite elements. More...
 
class  libMesh::FEL2LagrangeVec< Dim >
 FEL2LagrangeVec objects are used for working with vector-valued finite elements. More...
 
class  libMesh::FEHierarchicVec< Dim >
 FEHierarchicVec objects are used for working with vector-valued high-order finite elements. More...
 
class  libMesh::FEL2HierarchicVec< Dim >
 FEHierarchicVec objects are used for working with vector-valued high-order piecewise-continuous finite elements. More...
 
class  libMesh::FENedelecOne< Dim >
 FENedelecOne objects are used for working with vector-valued Nedelec finite elements of the first kind. More...
 
class  libMesh::FEMonomialVec< Dim >
 FEMonomialVec objects are used for working with vector-valued discontinuous finite elements. More...
 
class  libMesh::FERaviartThomas< Dim >
 FERaviartThomas objects are used for working with vector-valued Raviart-Thomas finite elements. More...
 
class  libMesh::FEL2RaviartThomas< Dim >
 FEL2RaviartThomas objects are used for working with vector-valued discontinuous Raviart-Thomas finite elements, e.g. More...
 

Namespaces

 libMesh
 The libMesh namespace provides an interface to certain functionality in the library.
 
 libMesh::FiniteElements
 Provide Typedefs for various element types.
 

Typedefs

typedef FEClough< 2 > libMesh::FiniteElements::FEClough2D
 Convenient definition for a 2D Clough-Tocher finite element. More...
 
typedef FE< 1, HIERARCHIC > libMesh::FiniteElements::FEHierarchic1D
 Convenient definition for a 1D Hierarchic finite element. More...
 
typedef FE< 2, HIERARCHIC > libMesh::FiniteElements::FEHierarchic2D
 Convenient definition for a 2D Hierarchic finite element. More...
 
typedef FE< 3, HIERARCHIC > libMesh::FiniteElements::FEHierarchic3D
 Convenient definition for a 3D Hierarchic finite element. More...
 
typedef FE< 1, L2_HIERARCHIC > libMesh::FiniteElements::FEL2Hierarchic1D
 Convenient definition for a 1D Discontinuous Hierarchic finite element. More...
 
typedef FE< 2, L2_HIERARCHIC > libMesh::FiniteElements::FEL2Hierarchic2D
 Convenient definition for a 2D Discontinuous Hierarchic finite element. More...
 
typedef FE< 3, L2_HIERARCHIC > libMesh::FiniteElements::FEL2Hierarchic3D
 Convenient definition for a 3D Discontinuous Hierarchic finite element. More...
 
typedef FE< 1, LAGRANGE > libMesh::FiniteElements::FELagrange1D
 Convenient definition for a 1D Lagrange finite element. More...
 
typedef FE< 2, LAGRANGE > libMesh::FiniteElements::FELagrange2D
 Convenient definition for a 2D Lagrange finite element. More...
 
typedef FE< 3, LAGRANGE > libMesh::FiniteElements::FELagrange3D
 Convenient definition for a 3D Lagrange finite element. More...
 
typedef FE< 1, L2_LAGRANGE > libMesh::FiniteElements::FEL2Lagrange1D
 Convenient definition for a 1D Discontinuous Lagrange finite element. More...
 
typedef FE< 2, L2_LAGRANGE > libMesh::FiniteElements::FEL2Lagrange2D
 Convenient definition for a 2D Discontinuous Lagrange finite element. More...
 
typedef FE< 3, L2_LAGRANGE > libMesh::FiniteElements::FEL2Lagrange3D
 Convenient definition for a 3D Discontinuous Lagrange finite element. More...
 
typedef FE< 1, MONOMIAL > libMesh::FiniteElements::FEMonomial1D
 Convenient definition for a 1D Monomial finite element. More...
 
typedef FE< 2, MONOMIAL > libMesh::FiniteElements::FEMonomial2D
 Convenient definition for a 2D Monomial finite element. More...
 
typedef FE< 3, MONOMIAL > libMesh::FiniteElements::FEMonomial3D
 Convenient definition for a 3D Monomial finite element. More...
 

Functions

template<typename OutputShape >
OutputShape libMesh::fe_fdm_deriv (const Elem *elem, const Order order, const unsigned int i, const unsigned int j, const Point &p, const bool add_p_level, OutputShape(*shape_func)(const Elem *, const Order, const unsigned int, const Point &, const bool))
 Helper functions for finite differenced derivatives in cases where analytical calculations haven't been done yet. More...
 
template<typename OutputShape >
OutputShape libMesh::fe_fdm_deriv (const ElemType type, const Order order, const unsigned int i, const unsigned int j, const Point &p, OutputShape(*shape_func)(const ElemType, const Order, const unsigned int, const Point &))
 
template<typename OutputShape >
OutputShape libMesh::fe_fdm_deriv (const ElemType type, const Order order, const Elem *elem, const unsigned int i, const unsigned int j, const Point &p, OutputShape(*shape_func)(const ElemType type, const Order, const Elem *, const unsigned int, const Point &))
 
template<typename OutputShape >
OutputShape libMesh::fe_fdm_second_deriv (const Elem *elem, const Order order, const unsigned int i, const unsigned int j, const Point &p, const bool add_p_level, OutputShape(*deriv_func)(const Elem *, const Order, const unsigned int, const unsigned int, const Point &, const bool))
 
template<typename OutputShape >
OutputShape libMesh::fe_fdm_second_deriv (const ElemType type, const Order order, const unsigned int i, const unsigned int j, const Point &p, OutputShape(*deriv_func)(const ElemType, const Order, const unsigned int, const unsigned int, const Point &))
 
template<typename OutputShape >
OutputShape libMesh::fe_fdm_second_deriv (const ElemType type, const Order order, const Elem *elem, const unsigned int i, const unsigned int j, const Point &p, OutputShape(*deriv_func)(const ElemType, const Order, const Elem *, const unsigned int, const unsigned int, const Point &))
 
void libMesh::lagrange_nodal_soln (const Elem *elem, const Order order, const std::vector< Number > &elem_soln, std::vector< Number > &nodal_soln, bool add_p_level=true)
 Helper functions for Lagrange-based basis functions. More...
 
unsigned int libMesh::monomial_n_dofs (const ElemType t, const Order o)
 Helper functions for Discontinuous-Pn type basis functions. More...
 
unsigned int libMesh::monomial_n_dofs (const Elem *e, const Order o)
 
void libMesh::rational_fe_weighted_shapes (const Elem *elem, const FEType underlying_fe_type, std::vector< std::vector< Real >> &shapes, const std::vector< Point > &p, const bool add_p_level)
 Helper functions for rational basis functions. More...
 
void libMesh::rational_fe_weighted_shapes_derivs (const Elem *elem, const FEType fe_type, std::vector< std::vector< Real >> &shapes, std::vector< std::vector< std::vector< Real >>> &derivs, const std::vector< Point > &p, const bool add_p_level)
 
Real libMesh::rational_fe_shape (const Elem &elem, const FEType underlying_fe_type, const unsigned int i, const Point &p, const bool add_p_level)
 
Real libMesh::rational_fe_shape_deriv (const Elem &elem, const FEType underlying_fe_type, const unsigned int i, const unsigned int j, const Point &p, const bool add_p_level)
 
Real libMesh::rational_fe_shape_second_deriv (const Elem &elem, const FEType underlying_fe_type, const unsigned int i, const unsigned int j, const Point &p, const bool add_p_level)
 
void libMesh::rational_all_shapes (const Elem &elem, const FEType underlying_fe_type, const std::vector< Point > &p, std::vector< std::vector< Real >> &v, const bool add_p_level)
 
template<typename OutputShape >
void libMesh::rational_all_shape_derivs (const Elem &elem, const FEType underlying_fe_type, const std::vector< Point > &p, std::vector< std::vector< OutputShape >> *comps[3], const bool add_p_level)