ElementFamily

Trait ElementFamily 

Source
pub trait ElementFamily {
    type T: RlstScalar;
    type CellType: Debug + PartialEq + Eq + Clone + Copy + Hash;
    type FiniteElement: FiniteElement<T = Self::T, CellType = Self::CellType> + 'static;

    // Required method
    fn element(&self, cell_type: Self::CellType) -> Self::FiniteElement;
}
Expand description

A family of finite elements defined on various cell types, with appropriate continuity between different cell types.

Required Associated Types§

Source

type T: RlstScalar

The scalar type

Source

type CellType: Debug + PartialEq + Eq + Clone + Copy + Hash

Cell type

Source

type FiniteElement: FiniteElement<T = Self::T, CellType = Self::CellType> + 'static

The finite element type

Required Methods§

Source

fn element(&self, cell_type: Self::CellType) -> Self::FiniteElement

Create an element for the given cell type.

Implementors§

Source§

impl<T: RlstScalar + Getrf + Getri, TGeo: RlstScalar> ElementFamily for LagrangeElementFamily<T, TGeo>

Source§

impl<T: RlstScalar + Getrf + Getri, TGeo: RlstScalar> ElementFamily for NedelecFirstKindElementFamily<T, TGeo>

Source§

impl<T: RlstScalar + Getrf + Getri, TGeo: RlstScalar> ElementFamily for RaviartThomasElementFamily<T, TGeo>