base class for all geometric entities More...
Inheritance diagram for Feel::GeoEntity< Entity, T, IndexT >:
Collaboration diagram for Feel::GeoEntity< Entity, T, IndexT >:Classes | |
| struct | reference_convex |
| helper class to construct the associated reference convex. More... | |
Typedefs | |
| typedef Entity | super |
| typedef GeoEntity< Entity, T, IndexT > | GeoShape |
| typedef GeoEntity< Entity, T, IndexT > | self_type |
| typedef T | value_type |
| using | index_type = IndexT |
| using | size_type = index_type |
| typedef super::topological_face_type | face_type |
| typedef face_type | GeoBShape |
| typedef Entity::edge_permutation_type | edge_permutation_type |
| typedef Entity::face_permutation_type | face_permutation_type |
| typedef Entity | convex_type |
| template<typename TT = double> | |
| using | reference_convex_type = Reference< Entity, nDim, nOrder, nRealDim, TT > |
| using | marker_type = Marker< flag_type > |
| static const size_type | Shape = super::Shape |
| static const size_type | Geometry = super::Geometry |
| static const uint16_type | nDim = super::nDim |
| static const uint16_type | nOrder = super::nOrder |
| static const uint16_type | nRealDim = super::nRealDim |
| static const uint16_type | numVertices = super::numVertices |
| static const uint16_type | numFaces = super::numFaces |
| static const uint16_type | numGeometricFaces = super::numGeometricFaces |
| static const uint16_type | numTopologicalFaces = super::numTopologicalFaces |
| static const uint16_type | numEdges = super::numEdges |
| static const uint16_type | numNormals = super::numNormals |
| static const uint16_type | numPoints = super::numPoints |
| static const uint16_type | nbPtsPerVertex = super::nbPtsPerVertex |
| static const uint16_type | nbPtsPerEdge = super::nbPtsPerEdge |
| static const uint16_type | nbPtsPerFace = super::nbPtsPerFace |
| static const uint16_type | nbPtsPerVolume = super::nbPtsPerVolume |
| static const bool | is_simplex = super::is_simplex |
| static const bool | is_hypercube = super::is_hypercube |
Methods | |
| class | boost::serialization::access |
| self_type & | addElement (size_type e, int id_in_element=0) |
| add a new element to which the point belongs | |
| size_type | numberOfElements () const |
| std::set< std::pair< size_type, uint16_type > > const & | elements () const |
| std::set< std::pair< size_type, uint16_type > > & | elements () |
| virtual void | setTags (std::vector< int > const &tags) |
| set the tags associated to the points More... | |
| std::map< uint16_type, marker_type > const & | markers () const |
| return all markers | |
| void | setMarkers (std::map< uint16_type, marker_type > const &markers) |
| set all markers | |
| bool | hasMarkerType (uint16_type k) const |
| return true if has marker type id k | |
| bool | hasMarker (uint16_type k) const |
| return true if has marker type id k | |
| marker_type const & | marker (uint16_type k) const |
| return marker with type id k | |
| void | setMarker (uint16_type k, flag_type v) |
| set marker type id k with flag v | |
| void | addMarker (uint16_type k, flag_type v) |
| add flag v to the marker type id k | |
| template<typename TT , std::enable_if_t< is_iterable_of_v< TT, flag_type >, bool > = true> | |
| void | setMarker (uint16_type k, TT const &vs) |
| set marker type id k with flag v | |
| template<typename TT , std::enable_if_t< is_iterable_of_v< TT, flag_type >, bool > = true> | |
| void | addMarker (uint16_type k, TT const &vs) |
| add flags vs to the marker type id k | |
| bool | hasMarker () const |
| marker_type const & | marker () const |
| void | setMarker (flag_type v) |
| void | addMarker (flag_type v) |
| template<typename TT , std::enable_if_t< is_iterable_of_v< TT, flag_type >, bool > = true> | |
| void | setMarker (TT const &vs) |
| template<typename TT , std::enable_if_t< is_iterable_of_v< TT, flag_type >, bool > = true> | |
| void | addMarker (TT const &vs) |
| bool | hasMarker2 () const |
| marker_type const & | marker2 () const |
| void | setMarker2 (flag_type v) |
| bool | hasMarker3 () const |
| marker_type const & | marker3 () const |
| void | setMarker3 (flag_type v) |
| static uint16_type | eToP (uint16_type const __localEdge, uint16_type const __point) |
| eToP(i,j) = localId of jth point on ith local edge | |
| static uint16_type | fToP (uint16_type const __localFace, uint16_type const __point) |
| fToP(i,j) = localId of jth point on ith local edge | |
| static uint16_type | fToE (uint16_type const __localFace, uint16_type const __edge) |
| fToE(i,j) = localId of jth edge on ith local face | |
Constructors, destructor | |
| GeoEntity () | |
| GeoEntity (size_type i, size_type geometry=Geometry, size_type shape=Shape, size_type context=MESH_ENTITY_INTERNAL) | |
| GeoEntity (GeoEntity const &__me)=default | |
| GeoEntity (GeoEntity &&__me) | |
| GeoEntity & | operator= (GeoEntity const &__me)=default |
| GeoEntity & | operator= (GeoEntity &&__me) |
| ~GeoEntity () override | |
Operator overloads | |
| bool | operator== (GeoEntity const &e) const |
| bool | operator< (GeoEntity const &e) const |
| bool | operator< (size_type __i) const |
Accessors | |
| size_type | id () const noexcept |
| constexpr uint16_type | refDim () const |
| the dimension of the reference shape More... | |
| constexpr uint16_type | nPoints () const |
| number of points on the reference shape More... | |
| constexpr uint16_type | nVertices () const |
| number of vertices on the reference shape More... | |
| constexpr uint16_type | nEdges () const |
| number of edges on the reference shape More... | |
| constexpr uint16_type | nFaces () const |
| number of faces on the reference shape More... | |
| constexpr uint16_type | nTopologicalFaces () const |
| number of topological faces on the reference shape More... | |
| constexpr uint16_type | nGeometricFaces () const |
| number of faces on the reference shape More... | |
| constexpr uint16_type | nNormals () const |
| number of normals on the reference shape More... | |
| bool | hasShape (size_type __shape) const |
| bool | isAVolume () const |
| bool | isASurface () const |
| bool | isALine () const |
| bool | isAPoint () const |
| bool | isAPointShape () const |
| bool | isALineShape () const |
| bool | isATriangleShape () const |
| bool | isAQuadrangleShape () const |
| bool | isATetrahedraShape () const |
| bool | isAHexahedraShape () const |
| bool | isLinear () const |
| bool | isBilinear () const |
| bool | isQuadratic () const |
| bool | isInternal () const |
| bool | isOnBoundary () const noexcept |
| Tells if item is on the boundary. More... | |
| uint16_type | boundaryEntityDimension () const noexcept |
| maximum dimension of the entity of the element touching the boundary | |
| bool | isGhostCell () const noexcept |
| rank_type | processId () const noexcept |
| void | setProcessId (rank_type pid) noexcept |
| set the processor id of the entity & More... | |
| rank_type | pidInPartition () const noexcept |
| void | setProcessIdInPartition (rank_type pid) noexcept |
| set the processor id of the entity & More... | |
| rank_type | partitionId () const noexcept |
| rank_type | numberOfPartitions () const noexcept |
| rank_type | numberOfNeighborPartitions () const |
| bool | isLinkedToOtherPartitions () const |
| size_type | idInOthersPartitions (rank_type pid) const |
| std::map< rank_type, size_type > const & | idInOthersPartitions () const noexcept |
| std::map< rank_type, size_type > const & | neighborProcessIds () const noexcept |
| void | clearIdInOthersPartitions () |
| clear id in others partitions container | |
| bool | active () const |
| virtual value_type | measure () const |
Mutators | |
| void | setId (size_type id) |
| void | setOnBoundary (bool b, uint16_type ent_d=invalid_uint16_type_value) |
| set the boundary flag More... | |
| void | setIdInOtherPartitions (rank_type pid, size_type id) |
| set id in a partition pid of the entity | |
| void | setIdInOtherPartitions (std::map< rank_type, size_type > const &iop) |
| set (partition,id) in other partitions of the entity | |
| void | setIdInOtherPartitions (std::map< rank_type, size_type > &&iop) |
| set (partition,id) in other partitions of the entity | |
| template<typename Q > | |
| void | setNeighborProcessIds (Q &&pids) |
| void | setNeighborPartitionIds (std::vector< rank_type > const &npids) |
| void | addNeighborPartitionId (rank_type p) |
base class for all geometric entities
| bool Feel::GeoEntity< Entity, T, IndexT >::active | ( | ) | const |
true if active, false otherwise| std::set< std::pair< size_type, uint16_type > > const & Feel::GeoEntity< Entity, T, IndexT >::elements | ( | ) | const |
| bool Feel::GeoEntity< Entity, T, IndexT >::hasShape | ( | size_type | __shape | ) | const |
__shape, false otherwise
|
noexcept |
| size_type Feel::GeoEntity< Entity, T, IndexT >::idInOthersPartitions | ( | rank_type | pid | ) | const |
| bool Feel::GeoEntity< Entity, T, IndexT >::isAHexahedraShape | ( | ) | const |
| bool Feel::GeoEntity< Entity, T, IndexT >::isALine | ( | ) | const |
References Feel::GEOMETRY_LINE.
| bool Feel::GeoEntity< Entity, T, IndexT >::isALineShape | ( | ) | const |
| bool Feel::GeoEntity< Entity, T, IndexT >::isAPoint | ( | ) | const |
References Feel::GEOMETRY_POINT.
| bool Feel::GeoEntity< Entity, T, IndexT >::isAPointShape | ( | ) | const |
| bool Feel::GeoEntity< Entity, T, IndexT >::isAQuadrangleShape | ( | ) | const |
| bool Feel::GeoEntity< Entity, T, IndexT >::isASurface | ( | ) | const |
References Feel::GEOMETRY_SURFACE.
| bool Feel::GeoEntity< Entity, T, IndexT >::isATetrahedraShape | ( | ) | const |
| bool Feel::GeoEntity< Entity, T, IndexT >::isATriangleShape | ( | ) | const |
| bool Feel::GeoEntity< Entity, T, IndexT >::isAVolume | ( | ) | const |
References Feel::GEOMETRY_VOLUME.
| bool Feel::GeoEntity< Entity, T, IndexT >::isBilinear | ( | ) | const |
|
noexcept |
true if ghost cell, false otherwise | bool Feel::GeoEntity< Entity, T, IndexT >::isInternal | ( | ) | const |
References Feel::MESH_ENTITY_INTERNAL.
| bool Feel::GeoEntity< Entity, T, IndexT >::isLinear | ( | ) | const |
| bool Feel::GeoEntity< Entity, T, IndexT >::isLinkedToOtherPartitions | ( | ) | const |
|
noexcept |
Tells if item is on the boundary.
References Feel::MESH_ENTITY_BOUNDARY.
| bool Feel::GeoEntity< Entity, T, IndexT >::isQuadratic | ( | ) | const |
|
virtual |
Reimplemented in Feel::Geo0D< Dim, T, IndexT >, Feel::Geo0D< Dim, double, uint32_type >, and Feel::Geo0D< 3 >.
|
constexpr |
number of edges on the reference shape
|
constexpr |
number of faces on the reference shape
|
constexpr |
number of faces on the reference shape
|
constexpr |
number of normals on the reference shape
|
constexpr |
number of points on the reference shape
|
constexpr |
number of topological faces on the reference shape
| size_type Feel::GeoEntity< Entity, T, IndexT >::numberOfElements | ( | ) | const |
| rank_type Feel::GeoEntity< Entity, T, IndexT >::numberOfNeighborPartitions | ( | ) | const |
|
noexcept |
|
constexpr |
number of vertices on the reference shape
|
noexcept |
|
noexcept |
Referenced by Feel::GeoEntity< Entity, T, IndexT >::setNeighborPartitionIds().
|
noexcept |
|
constexpr |
the dimension of the reference shape
| void Feel::GeoEntity< Entity, T, IndexT >::setNeighborPartitionIds | ( | std::vector< rank_type > const & | npids | ) |
References Feel::GeoEntity< Entity, T, IndexT >::pidInPartition().
Referenced by Feel::GeoEntity< Entity, T, IndexT >::setTags().
| void Feel::GeoEntity< Entity, T, IndexT >::setOnBoundary | ( | bool | b, |
| uint16_type | ent_d = invalid_uint16_type_value |
||
| ) |
set the boundary flag
| b | true if the item is on the boundary, false otherwise |
References Feel::MESH_ENTITY_BOUNDARY, and Feel::MESH_ENTITY_INTERNAL.
|
noexcept |
set the processor id of the entity &
| pid | processor id |
Referenced by Feel::GeoEntity< Entity, T, IndexT >::setTags().
|
noexcept |
set the processor id of the entity &
| pid | processor id |
|
virtual |
set the tags associated to the points
Reimplemented in Feel::Geo0D< Dim, T, IndexT >, Feel::Geo0D< Dim, double, uint32_type >, and Feel::Geo0D< 3 >.
References Feel::GeoEntity< Entity, T, IndexT >::setNeighborPartitionIds(), and Feel::GeoEntity< Entity, T, IndexT >::setProcessId().