P1Element.h file
P1 (piecewise linear) finite element implementation.
This file provides the P1Element class template for continuous piecewise linear finite elements. P1 elements have:
- One DOF per vertex
- Linear basis functions: (Lagrange property)
- Constant gradient per element:
P1 elements are the most common finite elements, providing first-order convergence ( for L² norm, for energy norm) and forming the foundation for many FEM applications.
Namespaces
- namespace Rodin
- The Rodin library for finite element methods and shape optimization.
- namespace Rodin::FormLanguage
- Namespace Rodin::
FormLanguage. - namespace Rodin::Variational
- Namespace Rodin::
Variational.
Classes
-
template<class Range>struct Rodin::FormLanguage::Traits<Variational::P1Element<Range>>
- Type traits for
P1Element:exposes the scalar type and the range type of the element. -
template<class Scalar>class Rodin::Variational::P1Element
- Degree 1 Lagrange element.
- class Rodin::Variational::P1Element::LinearForm
- Represents a linear form of a P1 scalar element.
- class Rodin::Variational::P1Element::BasisFunction
- Represents a piecewise linear basis function of a P1 scalar element.
-
template<size_t Order>class Rodin::Variational::P1Element::BasisFunction::DerivativeFunction
- Represents a partial derivative of a P1 basis function.
- class Rodin::Variational::P1Element::BasisFunction::GradientFunction
- Represents the gradient of a P1 basis function.
-
template<class Scalar>class Rodin::Variational::P1Element<Math::SpatialVector<Scalar>>
- Continuous piecewise linear (degree 1) vector Lagrange element.
- class Rodin::Variational::P1Element<Math::SpatialVector<Scalar>>::LinearForm
- Degree-of-freedom functional of the vector-valued P1 element.
- class Rodin::Variational::P1Element<Math::SpatialVector<Scalar>>::BasisFunction
- Basis function of the vector-valued P1 element.
-
template<size_t Order>class Rodin::Variational::P1Element<Math::SpatialVector<Scalar>>::BasisFunction::DerivativeFunction
- Represents a derivative function of a P1 vector element.
- class Rodin::Variational::P1Element<Math::SpatialVector<Scalar>>::BasisFunction::JacobianFunction
- Jacobian of a vector-valued P1 basis function.