|
IBAMR
IBAMR version 0.19.
|
#include <ibtk/FEMapping.h>

Public Types | |
| using | key_type = quadrature_key_type |
Public Member Functions | |
| Hex27Mapping (const key_type quad_key, const FEUpdateFlags update_flags) | |
| virtual void | reinit (const libMesh::Elem *elem) override |
| virtual const std::vector< double > & | getJxW () const override |
| virtual const std::vector< double > & | getJxW () const=0 |
| virtual const std::vector< libMesh::Point > & | getQuadraturePoints () const override |
| virtual const std::vector< libMesh::Point > & | getQuadraturePoints () const=0 |
| virtual const std::vector< Eigen::Matrix< double, spacedim, dim > > & | getContravariants () const override |
| virtual const std::vector< Eigen::Matrix< double, spacedim, dim > > & | getContravariants () const=0 |
| virtual const std::vector< Eigen::Matrix< double, spacedim, dim > > & | getCovariants () const override |
| virtual const std::vector< Eigen::Matrix< double, spacedim, dim > > & | getCovariants () const=0 |
| 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) override |
| virtual bool | isAffine () const |
| virtual void | fillJacobians () override |
| virtual void | fillJxW () override |
| virtual void | fillQuadraturePoints (const libMesh::Elem *elem) override |
Static Protected Member Functions | |
| static bool | elem_is_trilinear (const libMesh::Elem *elem) |
Protected Attributes | |
| FELagrangeMapping< 3, 3, 8 > | hex8_mapping |
| const int | d_n_nodes |
| boost::multi_array< std::array< double, dim >, 2 > | d_dphi |
| const QuadratureData | d_quadrature_data |
| FEUpdateFlags | d_update_flags |
| std::vector< Eigen::Matrix< double, spacedim, dim > > | d_contravariants |
| std::vector< Eigen::Matrix< double, spacedim, dim > > | d_covariants |
| std::vector< double > | d_Jacobians |
| std::vector< double > | d_JxW |
| std::vector< libMesh::Point > | d_quadrature_points |
| PointMap< dim, spacedim, n_nodes > | d_point_map |
Specialization for HEX27 elements. Since, for most applications and in the reference configuration, most HEX27 elements are actually trilinear, this class tries use the lower degree mapping whenever possible.
Key type. Completely describes (excepting p-refinement) a libMesh quadrature rule.
| IBTK::Hex27Mapping::Hex27Mapping | ( | const key_type | quad_key, |
| const FEUpdateFlags | update_flags | ||
| ) |
Constructor.
|
overridevirtual |
Recalculate relevant quantities for the provided element.
Reimplemented from IBTK::FENodalMapping< dim, spacedim, n_nodes >.
|
staticprotected |
Utility function that determines if the element is trilinear (i.e., all nodes at edge midpoints are averages of corners)
|
overrideprotectedvirtualinherited |
Compute the contravariants and covariants. In general each mapping will have to overload this function.
Implements IBTK::FEMapping< dim, dim >.
|
inlineoverridevirtualinherited |
|
pure virtualinherited |
Get the current jacobian times quadrature weight (JxW) values.
|
inlineoverridevirtualinherited |
|
pure virtualinherited |
Get the positions of the quadrature points on the current element.
|
inlineoverridevirtualinherited |
|
pure virtualinherited |
Get the contravariants.
|
inlineoverridevirtualinherited |
|
pure virtualinherited |
Get the covariants.
|
protectedvirtualinherited |
Boolean indicating that the mapping is affine - if it is we can skip some computations. The default implementation returns false. Inheriting classes should overload this they represent affine mappings.
|
overrideprotectedvirtualinherited |
Compute determinants of contravariants (the Jacobians). The default implementation given here is usually the correct one.
Implements IBTK::FEMapping< dim, dim >.
|
overrideprotectedvirtualinherited |
Compute JxW values. The default implementation given here is usually the correct one.
Implements IBTK::FEMapping< dim, dim >.
|
overrideprotectedvirtualinherited |
Compute the positions of quadrature points on the current element.
Implements IBTK::FEMapping< dim, dim >.
|
staticinherited |
Return a pointer to the correct mapping for a given quadrature key and update flags object.
|
inherited |
|
inherited |
|
protected |
HEX8 mapping that is used whenever the given elem is trilinear.
|
protectedinherited |
Number of nodes for the considered element type.
|
protectedinherited |
Values of shape function gradients on the reference element at quadrature points.
|
protectedinherited |
Information on the relevant quadrature rule.
|
protectedinherited |
Computed update flags for the mapping.
|
protectedinherited |
Array of contravariants.
|
protectedinherited |
Array of covariants (i.e., the transpose of the inverse of the covariants when dim == spacedim)
|
protectedinherited |
Array of Jacobians.
|
protectedinherited |
Array of JxW values.
|
protectedinherited |
Array of mapped quadrature points.
|
protectedinherited |
Object that computes quadrature point locations. This is sufficiently different from the rest of the mapping code that it is implemented in another class.
1.8.17