FEAT 3
Finite Element Analysis Toolbox
Loading...
Searching...
No Matches
FEAT::Geometry::SchneidersData Class Reference

Public Types

using CellMap = TemplateMapByDim< 3 >
 Type of map from cell refinement types to raw templates. More...
 
using CellRefinementType = RefinementTypeByDim< 3 >
 Refinement type for cells. More...
 
using EdgeMap = TemplateMapByDim< 1 >
 Type of map from edge refinement types to raw templates. More...
 
using EdgeRefinementType = RefinementTypeByDim< 1 >
 Refinement type for edges. More...
 
using FaceMap = TemplateMapByDim< 2 >
 Type of map from face refinement types to raw templates. More...
 
using FaceRefinementType = RefinementTypeByDim< 2 >
 Refinement type for faces. More...
 
using MaxShape = Shape::Hypercube< 3 >
 Highest-dimensional shape enabled by this data. More...
 
using RawCellTemplate = RawTemplate< Shape::Hypercube< 3 > >
 Raw cell template type. More...
 
using RawEdgeTemplate = RawTemplate< Shape::Hypercube< 1 > >
 Raw edge template type. More...
 
using RawFaceTemplate = RawTemplate< Shape::Hypercube< 2 > >
 Raw face template type. More...
 
template<int dim_>
using RefinementTypeByDim = StandardRefinementType< Shape::Hypercube< dim_ > >
 Accessor for refinement types used by these templates. More...
 
template<typename Shape__ >
using RefinementTypeByShape = StandardRefinementType< Shape__ >
 Accessor for refinement types used by these templates. More...
 
template<int dim_>
using TemplateMapByDim = std::unordered_map< RefinementTypeByDim< dim_ >, RawTemplate< Shape::Hypercube< dim_ > > >
 Type of map from refinement type to raw templates. More...
 

Static Public Member Functions

template<typename Shape_ >
static constexpr bool is_shape_compatible ()
 Shape compatability test. More...
 
template<int template_dim_, int child_dim_>
static constexpr int max_children ()
 Constexpr function for retrieving maximum number of children for any template of this template set. More...
 
static CellMapraw_cells ()
 Returns the raw templates for cells of this template set. More...
 
static EdgeMapraw_edges ()
 Returns the raw templates for edges of this template set. More...
 
static FaceMapraw_faces ()
 Returns the raw templates for faces of this template set. More...
 
template<int dim_>
static TemplateMapByDim< dim_ > & raw_templates ()
 Accessor for raw template maps. More...
 

Detailed Description

Definition at line 14 of file schneiders_data.hpp.

Member Typedef Documentation

◆ CellMap

Type of map from cell refinement types to raw templates.

Definition at line 51 of file schneiders_data.hpp.

◆ CellRefinementType

Refinement type for cells.

Definition at line 44 of file schneiders_data.hpp.

◆ EdgeMap

Type of map from edge refinement types to raw templates.

Definition at line 47 of file schneiders_data.hpp.

◆ EdgeRefinementType

Refinement type for edges.

Definition at line 40 of file schneiders_data.hpp.

◆ FaceMap

Type of map from face refinement types to raw templates.

Definition at line 49 of file schneiders_data.hpp.

◆ FaceRefinementType

Refinement type for faces.

Definition at line 42 of file schneiders_data.hpp.

◆ MaxShape

Highest-dimensional shape enabled by this data.

Definition at line 18 of file schneiders_data.hpp.

◆ RawCellTemplate

Raw cell template type.

Definition at line 25 of file schneiders_data.hpp.

◆ RawEdgeTemplate

Raw edge template type.

Definition at line 21 of file schneiders_data.hpp.

◆ RawFaceTemplate

Raw face template type.

Definition at line 23 of file schneiders_data.hpp.

◆ RefinementTypeByDim

Accessor for refinement types used by these templates.

Definition at line 29 of file schneiders_data.hpp.

◆ RefinementTypeByShape

Accessor for refinement types used by these templates.

Definition at line 33 of file schneiders_data.hpp.

◆ TemplateMapByDim

template<int dim_>
using FEAT::Geometry::SchneidersData::TemplateMapByDim = std::unordered_map<RefinementTypeByDim<dim_>, RawTemplate<Shape::Hypercube<dim_> >>

Type of map from refinement type to raw templates.

Definition at line 37 of file schneiders_data.hpp.

Member Function Documentation

◆ is_shape_compatible()

template<typename Shape_ >
static constexpr bool FEAT::Geometry::SchneidersData::is_shape_compatible ( )
inlinestaticconstexpr

Shape compatability test.

This template set is compatible with quadrilateral and hexahedral meshes.

Template Parameters
Shape_Mesh shape this template set is to be applied to
Returns
True, if the template set is compatible with the mesh shape, false otherwise.

Definition at line 63 of file schneiders_data.hpp.

◆ max_children()

template<int template_dim_, int child_dim_>
static constexpr int FEAT::Geometry::SchneidersData::max_children ( )
inlinestaticconstexpr

Constexpr function for retrieving maximum number of children for any template of this template set.

Template Parameters
template_dim_Dimension of the template
child_dim_Dimension of the children for which the maximum number should be returned
Note
This is used by the AdaptiveMesh to determine the required storage for child entities. The results of this function must be at least the maximum. Larger values are allowed, but inefficient.

Definition at line 79 of file schneiders_data.hpp.

◆ raw_cells()

static CellMap & FEAT::Geometry::SchneidersData::raw_cells ( )
inlinestatic

Returns the raw templates for cells of this template set.

Definition at line 246 of file schneiders_data.hpp.

References FEAT::Geometry::rotate_template_xaxis(), FEAT::Geometry::rotate_template_yaxis(), and FEAT::Geometry::rotate_template_zaxis().

Referenced by raw_templates().

◆ raw_edges()

static EdgeMap & FEAT::Geometry::SchneidersData::raw_edges ( )
inlinestatic

Returns the raw templates for edges of this template set.

Definition at line 116 of file schneiders_data.hpp.

Referenced by raw_templates().

◆ raw_faces()

static FaceMap & FEAT::Geometry::SchneidersData::raw_faces ( )
inlinestatic

Returns the raw templates for faces of this template set.

Definition at line 146 of file schneiders_data.hpp.

References FEAT::Geometry::rotate_template_2d().

Referenced by raw_templates().

◆ raw_templates()

template<int dim_>
static TemplateMapByDim< dim_ > & FEAT::Geometry::SchneidersData::raw_templates ( )
inlinestatic

Accessor for raw template maps.

Template Parameters
dim_Dimension of template to access

Definition at line 98 of file schneiders_data.hpp.

References raw_cells(), raw_edges(), raw_faces(), FEAT::stringify(), and XABORTM.


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