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

Class storing multiple IBTK::FEMapping objects. We assume that quadrature rules are uniquely determined by the element type, quadrature type, and approximation order. There are several places in IBTK where we make this assumption, e.g., we will use data from two quadrature rules assumed to be equal (by this metric) to initialize different libMesh objects. More...

#include <ibtk/FEMappingCache.h>

Public Types

using key_type = quadrature_key_type
 
using value_type = FEMapping< dim, spacedim >
 

Public Member Functions

 FEMappingCache (const FEUpdateFlags update_flags)
 
value_typeoperator[] (const key_type &quad_key)
 
void clear ()
 

Protected Attributes

const FEUpdateFlags d_update_flags
 
std::map< key_type, std::unique_ptr< FEMapping< dim, spacedim > > > d_mappings
 

Detailed Description

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

This class essentially provides a wrapper around std::map to manage IBTK::FEMapping (and classes inheriting from it) objects.

Member Typedef Documentation

◆ key_type

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

Key type. Completely describes (excepting p-refinement) a libMesh quadrature rule.

◆ value_type

template<int dim, int spacedim = dim>
using IBTK::FEMappingCache< dim, spacedim >::value_type = FEMapping<dim, spacedim>

Type of values stored by this class that are accessible through operator[].

Constructor & Destructor Documentation

◆ FEMappingCache()

template<int dim, int spacedim>
IBTK::FEMappingCache< dim, spacedim >::FEMappingCache ( const FEUpdateFlags  update_flags)

Constructor.

Member Function Documentation

◆ operator[]()

template<int dim, int spacedim = dim>
FEMappingCache< dim, spacedim >::value_type & IBTK::FEMappingCache< dim, spacedim >::operator[] ( const key_type quad_key)
inline

Return a reference to a jacobian calculator object that matches the specified quadrature rule type and order.

Parameters
quad_keya tuple of enums that completely describes a libMesh quadrature rule.

◆ clear()

template<int dim, int spacedim = dim>
void IBTK::FEMappingCache< dim, spacedim >::clear ( )
inline

Clear the cache.

Member Data Documentation

◆ d_update_flags

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

Update Flags to use when creating mappings.

◆ d_mappings

template<int dim, int spacedim = dim>
std::map<key_type, std::unique_ptr<FEMapping<dim, spacedim> > > IBTK::FEMappingCache< dim, spacedim >::d_mappings
protected

Managed IBTK::FEMapping objects.


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