IBAMR  IBAMR version 0.19.
Classes | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
IBTK::FEValues< dim, spacedim > Class Template Reference

#include <ibtk/FEValues.h>

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

Classes

struct  ReferenceValues
 

Public Member Functions

 FEValues (libMesh::QBase *qrule, const libMesh::FEType fe_type, const FEUpdateFlags update_flags)
 
virtual void reinit (const libMesh::Elem *elem) override
 
const std::vector< double > & getJxW () const
 
const std::vector< libMesh::Point > & getQuadraturePoints () const
 
const std::vector< std::vector< double > > & getShapeValues () const
 
const std::vector< std::vector< libMesh::VectorValue< double > > > & getShapeGradients () const
 

Static Public Member Functions

static std::unique_ptr< FEValuesBasebuild (const int dim, const int spacedim, libMesh::QBase *qrule, const libMesh::FEType fe_type, const FEUpdateFlags update_flags)
 

Protected Attributes

libMesh::QBase * d_qrule
 
const libMesh::FEType d_fe_type
 
std::map< libMesh::ElemType, std::unique_ptr< FEMapping< dim, spacedim > > > d_mappings
 
std::map< libMesh::ElemType, ReferenceValuesd_reference_values
 
FEUpdateFlags d_update_flags
 
libMesh::ElemType d_last_elem_type = libMesh::ElemType::INVALID_ELEM
 
std::vector< doubled_JxW
 
std::vector< libMesh::Point > d_quadrature_points
 
std::vector< std::vector< double > > d_shape_values
 
std::vector< std::vector< libMesh::VectorValue< double > > > d_shape_gradients
 

Detailed Description

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

Class like libMesh::FE for element shape function calculations, but optimized for isoparametric Lagrange finite elements.

Constructor & Destructor Documentation

◆ FEValues()

template<int dim, int spacedim = dim>
IBTK::FEValues< dim, spacedim >::FEValues ( libMesh::QBase *  qrule,
const libMesh::FEType  fe_type,
const FEUpdateFlags  update_flags 
)

Member Function Documentation

◆ reinit()

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

Implements IBTK::FEValuesBase.

◆ getJxW()

const std::vector<double>& IBTK::FEValuesBase::getJxW ( ) const
inlineinherited

◆ getQuadraturePoints()

const std::vector<libMesh::Point>& IBTK::FEValuesBase::getQuadraturePoints ( ) const
inlineinherited

◆ getShapeValues()

const std::vector<std::vector<double> >& IBTK::FEValuesBase::getShapeValues ( ) const
inlineinherited

◆ getShapeGradients()

const std::vector<std::vector<libMesh::VectorValue<double> > >& IBTK::FEValuesBase::getShapeGradients ( ) const
inlineinherited

◆ build()

static std::unique_ptr<FEValuesBase> IBTK::FEValuesBase::build ( const int  dim,
const int  spacedim,
libMesh::QBase *  qrule,
const libMesh::FEType  fe_type,
const FEUpdateFlags  update_flags 
)
staticinherited

Member Data Documentation

◆ d_qrule

template<int dim, int spacedim = dim>
libMesh::QBase* IBTK::FEValues< dim, spacedim >::d_qrule
protected

◆ d_fe_type

template<int dim, int spacedim = dim>
const libMesh::FEType IBTK::FEValues< dim, spacedim >::d_fe_type
protected

◆ d_mappings

template<int dim, int spacedim = dim>
std::map<libMesh::ElemType, std::unique_ptr<FEMapping<dim, spacedim> > > IBTK::FEValues< dim, spacedim >::d_mappings
protected

◆ d_reference_values

template<int dim, int spacedim = dim>
std::map<libMesh::ElemType, ReferenceValues> IBTK::FEValues< dim, spacedim >::d_reference_values
protected

◆ d_update_flags

template<int dim, int spacedim = dim>
FEUpdateFlags IBTK::FEValues< dim, spacedim >::d_update_flags
protected

◆ d_last_elem_type

template<int dim, int spacedim = dim>
libMesh::ElemType IBTK::FEValues< dim, spacedim >::d_last_elem_type = libMesh::ElemType::INVALID_ELEM
protected

Last element type. We can avoid reinitializing some things if this matches the current element type.

◆ d_JxW

std::vector<double> IBTK::FEValuesBase::d_JxW
protectedinherited

◆ d_quadrature_points

std::vector<libMesh::Point> IBTK::FEValuesBase::d_quadrature_points
protectedinherited

◆ d_shape_values

std::vector<std::vector<double> > IBTK::FEValuesBase::d_shape_values
protectedinherited

◆ d_shape_gradients

std::vector<std::vector<libMesh::VectorValue<double> > > IBTK::FEValuesBase::d_shape_gradients
protectedinherited

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