Defines a face between two finite elements in two-dimensions (i.e., an interval). More...
#include <ptems/finiteelement.hpp>
Public Types | |
| typedef LegacyRandomAccessIterator< const std::size_t > | iterator |
| Type for an iterator over the list of vertex indices for the face. More... | |
| typedef iterator | const_iterator |
| Type for a const iterator over the list of vertex indices for the face. More... | |
| typedef std::reverse_iterator< iterator > | reverse_iterator |
| Type for an iterator over the list of vertex indices for the face, iterating in reverse. More... | |
| typedef std::reverse_iterator< reverse_iterator > | const_reverse_iterator |
| Type for a const iterator over the list of vertex indices for the face, iterating in reverse. More... | |
Public Member Functions | |
| std::shared_ptr< FiniteElement< 2 > > | Left () const |
| Pointer to "left" neighbour of the face. More... | |
| std::shared_ptr< FiniteElement< 2 > > | Right () const |
| Pointer to "right" neighbour of the face; or null if the face is on the boundary. More... | |
| bool | IsInterior () const |
| Gets if the face represents an interior face (has right neighbour) More... | |
| bool | IsBoundary () const |
| Gets if the face represents a boundary face (no right neighbour) More... | |
| void | Right (const std::shared_ptr< FiniteElement< 2 > > &right) |
| Sets the right neighbour of the face. More... | |
| const std::size_t & | operator[] (std::size_t i) const |
| Returns the global index of the ith vertex of the face. More... | |
| const std::size_t & | VertexIndex (std::size_t i) const |
| Returns the global index of the ith vertex of the face. More... | |
| std::size_t | VertexCount () const |
| Gets the number of vertices in the face. More... | |
| iterator | begin () const |
| Gets the begin iterator for iterating over the vertex indices of the face. More... | |
| iterator | end () const |
| Gets the end iterator for iterating over the vertex indices of the face. More... | |
| const_iterator | cbegin () const |
| Gets the const begin iterator for iterating over the vertex indices of the face. More... | |
| const_iterator | cend () const |
| Gets the const end iterator for iterating over the vertex indices of the face. More... | |
| reverse_iterator | rbegin () const |
| Gets the begin iterator for iterating over the vertex indices of the face in reverse. More... | |
| reverse_iterator | rend () const |
| Gets the end iterator for iterating over the vertex indices of the face in reverse. More... | |
| const_reverse_iterator | crbegin () const |
| Gets the const begin iterator for iterating over the vertex indices of the face in reverse. More... | |
| const_reverse_iterator | crend () const |
| Gets the const end iterator for iterating over the vertex indices of the face in reverse. More... | |
| double | Diameter () const |
| Gets the diameter of the face. More... | |
| double | Volume () const |
| Gets the volume of the face. More... | |
| Vector< 2 > | Normal () const |
| Gets the normal to the face. More... | |
| bool | IsEqual (const std::shared_ptr< FEFace< 2 >> &rhs) const |
| Checks if the specified face is equal to this face (has same vertices), even if vertices are in different order (e.g., Normal() may be different). More... | |
| bool | IsEqual (const FEFace< 2 > &rhs) const |
| Checks if the specified face is equal to this face (has same vertices), even if vertices are in different order (e.g., Normal() may be different). More... | |
| Vector< 2 > | Barycentre () const |
| Gets the barycentre of the face. More... | |
| const std::array< ReferenceMapping< 1, 2 >, 1 > & | ReferenceMappings () const |
| Gets the mapping between the local coordinates for the left element and the reference interval for the face. More... | |
| Vector< 2 > | LocalToGlobal (const Vector< 1 > &pt) |
| Converts a local point on the element (value in interval \([0,1]\)) into a global point. More... | |
| template<typename ALGO > | |
| QuadraturePoints< 1 > | ComputeQuadraturePoints (ALGO algorithm, std::size_t order) |
| Computes the quadrature points for the face. More... | |
| T | shared_from_this (T... args) |
| T | weak_from_this (T... args) |
Friends | |
| class | FiniteElement< 2 > |
| class | FEMesh< 2 > |
Defines a face between two finite elements in two-dimensions (i.e., an interval).
| typedef iterator ptems::FEFace< 2 >::const_iterator |
Type for a const iterator over the list of vertex indices for the face.
| typedef std::reverse_iterator<reverse_iterator> ptems::FEFace< 2 >::const_reverse_iterator |
Type for a const iterator over the list of vertex indices for the face, iterating in reverse.
| typedef LegacyRandomAccessIterator< const std::size_t > ptems::FEFace< 2 >::iterator |
Type for an iterator over the list of vertex indices for the face.
| typedef std::reverse_iterator<iterator> ptems::FEFace< 2 >::reverse_iterator |
Type for an iterator over the list of vertex indices for the face, iterating in reverse.
|
inline |
Gets the barycentre of the face.
|
inline |
Gets the begin iterator for iterating over the vertex indices of the face.
|
inline |
Gets the const begin iterator for iterating over the vertex indices of the face.
|
inline |
Gets the const end iterator for iterating over the vertex indices of the face.
| QuadraturePoints< 1 > ptems::FEFace< 2 >::ComputeQuadraturePoints | ( | ALGO | algorithm, |
| std::size_t | order | ||
| ) |
Computes the quadrature points for the face.
The points are in local face coordinates, and weights are for the global integration.
| ALGO | Type of an algorithm for generating quadrature points on a reference element |
| algorithm | An algorithm for generating quadrature points on a reference element |
| order | The order of the quadrature |
|
inline |
Gets the const begin iterator for iterating over the vertex indices of the face in reverse.
|
inline |
Gets the const end iterator for iterating over the vertex indices of the face in reverse.
|
inline |
Gets the diameter of the face.
|
inline |
Gets the end iterator for iterating over the vertex indices of the face.
|
inline |
Gets if the face represents a boundary face (no right neighbour)
|
inline |
Checks if the specified face is equal to this face (has same vertices), even if vertices are in different order (e.g., Normal() may be different).
| rhs | The face to check if equal to this |
|
inline |
Checks if the specified face is equal to this face (has same vertices), even if vertices are in different order (e.g., Normal() may be different).
| rhs | The face to check if equal to this |
|
inline |
Gets if the face represents an interior face (has right neighbour)
|
inline |
Pointer to "left" neighbour of the face.
|
inline |
Converts a local point on the element (value in interval \([0,1]\)) into a global point.
| pt | The local point to map |
|
inline |
Gets the normal to the face.
The normal is the outward normal w.r.t. the left neighbour, and the inward normal w.r.t the right neighbour.
|
inline |
Returns the global index of the ith vertex of the face.
| i | The index of the vertex to get. |
| std::out_of_range | If i is not less than VertexCount() |
|
inline |
Gets the begin iterator for iterating over the vertex indices of the face in reverse.
|
inline |
Gets the mapping between the local coordinates for the left element and the reference interval for the face.
|
inline |
Gets the end iterator for iterating over the vertex indices of the face in reverse.
|
inline |
Pointer to "right" neighbour of the face; or null if the face is on the boundary.
|
inline |
Sets the right neighbour of the face.
| right | The right hand neighbour, or null for no neighbour. |
|
inline |
Gets the number of vertices in the face.
|
inline |
Returns the global index of the ith vertex of the face.
| i | The index of the vertex to get. |
| std::out_of_range | If i is not less than VertexCount() |
|
inline |
Gets the volume of the face.