|
FEAT 3
Finite Element Analysis Toolbox
|
IndexTuple interface for adaptive meshes. More...
#include <adaptive_mesh_layer.hpp>
Public Types | |
| using | AdaptiveMeshType = AdaptiveMeshType_ |
| Type of underlying adaptive mesh. More... | |
Public Member Functions | |
| AdaptiveIndexTuple (AdaptiveIndexTuple &&other)=default | |
| AdaptiveIndexTuple (const AdaptiveIndexTuple &other)=default | |
| AdaptiveIndexTuple (std::shared_ptr< AdaptiveMeshType > mesh, Layer layer, Index entity_idx) | |
| Constructor. More... | |
| AdaptiveIndexTuple & | operator= (AdaptiveIndexTuple &&other)=default |
| AdaptiveIndexTuple & | operator= (const AdaptiveIndexTuple &other)=default |
| Index | operator[] (int idx) const |
| access operator More... | |
| void | permute_map (const Adjacency::Permutation &inv_perm) |
| Permute this index tuple. More... | |
Static Public Attributes | |
| static constexpr int | num_indices = Shape::FaceTraits<Shape::Hypercube<cell_dim_>, face_dim_>::count |
| Number of indices per tuple. More... | |
Private Attributes | |
| Index | _entity_idx |
| Index of entity this tuple refers to. More... | |
| std::optional< Adjacency::Permutation > | _inv_perm |
| Permutation of this tuple. More... | |
| Layer | _layer |
| Layer this tuple refers to. More... | |
| std::shared_ptr< AdaptiveMeshType > | _mesh |
| Pointer to underlying mesh. More... | |
IndexTuple interface for adaptive meshes.
This class template is a compatability layer between the AdaptiveMesh class and the rest of FEAT. It presents a normal IndexTuple interface for a single layer of an AdaptiveMesh. This allows using the AdaptiveMeshLayer like any other mesh class.
Definition at line 187 of file adaptive_mesh_layer.hpp.
| using FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::AdaptiveMeshType = AdaptiveMeshType_ |
Type of underlying adaptive mesh.
Definition at line 191 of file adaptive_mesh_layer.hpp.
|
inline |
Constructor.
| [in] | mesh | Underlying mesh |
| [in] | layer | Layer this tuple refers to |
| [in] | entity_idx | Entity this tuple refers to |
Definition at line 216 of file adaptive_mesh_layer.hpp.
|
inline |
access operator
Definition at line 231 of file adaptive_mesh_layer.hpp.
References FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::_entity_idx, FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::_inv_perm, FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::_layer, FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::_mesh, ASSERT, and FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::num_indices.
|
inline |
Permute this index tuple.
Definition at line 254 of file adaptive_mesh_layer.hpp.
References FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::_inv_perm, and FEAT::Adjacency::Permutation::clone().
|
private |
Index of entity this tuple refers to.
Definition at line 199 of file adaptive_mesh_layer.hpp.
Referenced by FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::operator[]().
|
private |
Permutation of this tuple.
Definition at line 201 of file adaptive_mesh_layer.hpp.
Referenced by FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::operator[](), and FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::permute_map().
|
private |
Layer this tuple refers to.
Definition at line 197 of file adaptive_mesh_layer.hpp.
Referenced by FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::operator[]().
|
private |
Pointer to underlying mesh.
Definition at line 195 of file adaptive_mesh_layer.hpp.
Referenced by FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::operator[]().
|
staticconstexpr |
Number of indices per tuple.
Definition at line 207 of file adaptive_mesh_layer.hpp.
Referenced by FEAT::Geometry::AdaptiveIndexTuple< AdaptiveMeshType_, cell_dim_, face_dim_ >::operator[]().