shards  Version of the Day
 All Classes Functions Variables Typedefs Enumerations Enumerator Groups
shards::CellTopologyTraits< Dimension, Number_Vertex, Number_Node, EdgeList, EdgeMaps, FaceList, FaceMaps, PermutationMaps, PermutationPolarity >::permutation< Perm, J > Struct Template Reference

Node permutations for proper subcells. More...

#include <Shards_CellTopologyTraits.hpp>

Public Types

enum  
 
enum  { polarity = IndexListAt< PermutationPolarity , Perm >::value }
 

Detailed Description

template<unsigned Dimension, unsigned Number_Vertex, unsigned Number_Node, class EdgeList = TypeListEnd, class EdgeMaps = TypeListEnd, class FaceList = TypeListEnd, class FaceMaps = TypeListEnd, class PermutationMaps = TypeListEnd, class PermutationPolarity = IndexList<>>
template<unsigned Perm, unsigned J = 0>
struct shards::CellTopologyTraits< Dimension, Number_Vertex, Number_Node, EdgeList, EdgeMaps, FaceList, FaceMaps, PermutationMaps, PermutationPolarity >::permutation< Perm, J >

Node permutations for proper subcells.

ParentCell and SubCell are connected if every node of SubCell is also a node of ParentCell. However, the connection may be permuted.

Let ParentCell be dimension D and SubCell be dimension dim < D. Let SubCell be connected as subcell Ord with permutation P.

Then ParentCell.node(K) == SubCell.node(J) where:

  • SubCellTopology == ParentCellTopology::subcell<dim,Ord>::topology
  • K = ParentCellTopology::subcell<dim,Ord,JP>::node
  • JP = SubCellTopology::permutation<P,J>::node
  • J = SubCellTopology::permutation_inverse<P,JP>::node

The permutation map for P == 0 is required to be identity.

Definition at line 390 of file Shards_CellTopologyTraits.hpp.


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