IBAMR  IBAMR version 0.19.
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
IBTK::FEMapping< dim, spacedim > Class Template Referenceabstract

#include <ibtk/FEMapping.h>

Inheritance diagram for IBTK::FEMapping< dim, spacedim >:
Inheritance graph
[legend]

Public Types

using key_type = quadrature_key_type
 

Public Member Functions

virtual void reinit (const libMesh::Elem *elem)=0
 
virtual const std::vector< double > & getJxW () const =0
 
virtual const std::vector< libMesh::Point > & getQuadraturePoints () const =0
 
virtual const std::vector< Eigen::Matrix< double, spacedim, dim > > & getContravariants () const =0
 
virtual const std::vector< Eigen::Matrix< double, spacedim, dim > > & getCovariants () const =0
 
virtual ~FEMapping ()=default
 
std::unique_ptr< FEMapping< 2, 2 > > build (const key_type key, const FEUpdateFlags update_flags)
 
std::unique_ptr< FEMapping< 3, 3 > > build (const key_type key, const FEUpdateFlags update_flags)
 

Static Public Member Functions

static std::unique_ptr< FEMapping< dim, spacedim > > build (const key_type key, const FEUpdateFlags update_flags)
 

Protected Member Functions

virtual void fillTransforms (const libMesh::Elem *elem)=0
 
virtual void fillJacobians ()=0
 
virtual void fillJxW ()=0
 
virtual void fillQuadraturePoints (const libMesh::Elem *elem)=0
 

Detailed Description

template<int dim, int spacedim = dim>
class IBTK::FEMapping< dim, spacedim >

Abstract class defining the interface to a finite element mapping.

Member Typedef Documentation

◆ key_type

template<int dim, int spacedim = dim>
using IBTK::FEMapping< dim, spacedim >::key_type = quadrature_key_type

Standard 'quadrature key' alias - all the information to completely define a libMesh quadrature rule.

Constructor & Destructor Documentation

◆ ~FEMapping()

template<int dim, int spacedim = dim>
virtual IBTK::FEMapping< dim, spacedim >::~FEMapping ( )
virtualdefault

Member Function Documentation

◆ reinit()

template<int dim, int spacedim = dim>
virtual void IBTK::FEMapping< dim, spacedim >::reinit ( const libMesh::Elem *  elem)
pure virtual

◆ getJxW()

template<int dim, int spacedim = dim>
virtual const std::vector<double>& IBTK::FEMapping< dim, spacedim >::getJxW ( ) const
pure virtual

Get the current jacobian times quadrature weight (JxW) values.

◆ getQuadraturePoints()

template<int dim, int spacedim = dim>
virtual const std::vector<libMesh::Point>& IBTK::FEMapping< dim, spacedim >::getQuadraturePoints ( ) const
pure virtual

Get the positions of the quadrature points on the current element.

◆ getContravariants()

template<int dim, int spacedim = dim>
virtual const std::vector<Eigen::Matrix<double, spacedim, dim> >& IBTK::FEMapping< dim, spacedim >::getContravariants ( ) const
pure virtual

Get the contravariants.

◆ getCovariants()

template<int dim, int spacedim = dim>
virtual const std::vector<Eigen::Matrix<double, spacedim, dim> >& IBTK::FEMapping< dim, spacedim >::getCovariants ( ) const
pure virtual

Get the covariants.

◆ build() [1/3]

template<int dim, int spacedim = dim>
static std::unique_ptr<FEMapping<dim, spacedim> > IBTK::FEMapping< dim, spacedim >::build ( const key_type  key,
const FEUpdateFlags  update_flags 
)
static

Return a pointer to the correct mapping for a given quadrature key and update flags object.

◆ fillTransforms()

template<int dim, int spacedim = dim>
virtual void IBTK::FEMapping< dim, spacedim >::fillTransforms ( const libMesh::Elem *  elem)
protectedpure virtual

◆ fillJacobians()

template<int dim, int spacedim = dim>
virtual void IBTK::FEMapping< dim, spacedim >::fillJacobians ( )
protectedpure virtual

◆ fillJxW()

template<int dim, int spacedim = dim>
virtual void IBTK::FEMapping< dim, spacedim >::fillJxW ( )
protectedpure virtual

◆ fillQuadraturePoints()

template<int dim, int spacedim = dim>
virtual void IBTK::FEMapping< dim, spacedim >::fillQuadraturePoints ( const libMesh::Elem *  elem)
protectedpure virtual

◆ build() [2/3]

std::unique_ptr< FEMapping< 2, 2 > > IBTK::FEMapping< 2, 2 >::build ( const key_type  key,
const FEUpdateFlags  update_flags 
)

◆ build() [3/3]

std::unique_ptr< FEMapping< 3, 3 > > IBTK::FEMapping< 3, 3 >::build ( const key_type  key,
const FEUpdateFlags  update_flags 
)

The documentation for this class was generated from the following file: