P1Element.h file
P1 (piecewise linear) finite element implementation.
This file provides the P1Element class template for continuous piecewise first-order finite elements. P1 elements have:
- One DOF per vertex
- Nodal basis functions: (Lagrange property)
- Affine simplex, tensor-product, wedge, or rational pyramid bases
Simplex basis gradients are constant. Tensor-product, wedge, and rational pyramid basis gradients generally depend on the reference point.
Namespaces
- namespace Rodin
- The Rodin library for finite element methods and shape optimization.
- namespace Rodin::FormLanguage
- Typed expressions for constructing variational forms.
- namespace Rodin::Variational
- Finite element spaces, fields, and variational problems.
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.
-
template<class Scalar>class Rodin::Variational::P1Element<Math::SpatialMatrix<Scalar>>
- Matrix-valued reference element built from scalar nodal functionals.
- class Rodin::Variational::P1Element<Math::SpatialMatrix<Scalar>>::BasisFunction
- Matrix basis with one nonzero entry.
- class Rodin::Variational::P1Element<Math::SpatialMatrix<Scalar>>::LinearForm
- Matrix-range finite element or expression specialization.