|
HArD::Core3D
Hybrid Arbitrary Degree::Core 3D - Library to implement 3D schemes with vertex, edge, face and cell polynomials as unknowns
|
Class definition: polynomial bases and operators. More...
#include <vhhospace.hpp>


Classes | |
| struct | CellBases |
| Structure to store element bases. More... | |
| struct | FaceBases |
| Structure to store face bases. More... | |
| struct | LocalOperators |
| A structure to store local operators (gradient, potential, stabilisation) More... | |
Public Types | |
| typedef Family< MonomialScalarBasisCell > | PolyBasisCellType |
| typedef TensorizedVectorFamily< PolyBasisCellType, dimspace > | PolydBasisCellType |
| typedef MatrixFamily< PolyBasisCellType, dimspace > | PolydxdBasisCellType |
| typedef Family< MonomialScalarBasisFace > | PolyBasisFaceType |
| typedef Family< TensorizedVectorFamily< PolyBasisFaceType, dimspace > > | PolydBasisFaceType |
| typedef std::function< VectorRd(const VectorRd &)> | FunctionType |
Public Member Functions | |
| VHHOSpace (const Mesh &mesh, size_t K, const CellSelection &BoundaryStab, bool use_threads=true, std::ostream &output=std::cout) | |
| Constructor (with function to select cells in which boundary faces are used in the stabilisation) | |
| VHHOSpace (const Mesh &mesh, size_t K, bool use_threads=true, std::ostream &output=std::cout) | |
| Overloaded constructor when the selection of boundary stabilisation is not entered (all boundary faces are then used) | |
| const Mesh & | mesh () const |
| Return a const reference to the mesh. | |
| const size_t & | degree () const |
| Return the polynomial degree (common face and elements) | |
| const CellSelection & | boundaryStab () const |
| Return the function to select the cells with boundary stabilisation. | |
| Eigen::VectorXd | interpolate (const FunctionType &q, const int doe_cell=-1, const int doe_face=-1) const |
| Interpolator of a continuous function. | |
| const CellBases & | cellBases (size_t iT) const |
| Return cell bases for element iT. | |
| const CellBases & | cellBases (const Cell &T) const |
| Return cell bases for cell T. | |
| const FaceBases & | faceBases (size_t iF) const |
| Return face bases for face iF. | |
| const FaceBases & | faceBases (const Face &F) const |
| Return cell bases for face F. | |
| const LocalOperators & | operators (size_t iT) const |
| Return operators for the cell of index iT. | |
| const LocalOperators & | operators (const Cell &T) const |
| Return cell operators for cell T. | |
| std::vector< std::pair< double, double > > | computeNorms (const std::vector< Eigen::VectorXd > &list_dofs) const |
| Computes the discrete L2 (cell unknowns only) and H1 norms of a list of vectors. | |
| std::vector< VectorRd > | computeVertexValues (const Eigen::VectorXd &u) const |
| Computes the values of the potential reconstruction at the mesh vertices. | |
Public Member Functions inherited from HArDCore3D::GlobalDOFSpace | |
| GlobalDOFSpace (const Mesh &mesh, size_t n_local_vertex_dofs, size_t n_local_edge_dofs, size_t n_local_face_dofs, size_t n_local_cell_dofs) | |
| Constructor. | |
| size_t | globalOffset (const Vertex &V) const |
| Return the global offset for the unknowns on the vertex V. | |
| size_t | globalOffset (const Edge &E) const |
| Return the global offset for the unknowns on the edge E. | |
| size_t | globalOffset (const Face &F) const |
| Return the global offset for the unknowns on the face F. | |
| size_t | globalOffset (const Cell &T) const |
| Return the global offset for the unknowns on the cell T. | |
| size_t | globalOffset (size_t d, size_t i) const |
| Return the global offset for the unknows on the i-th element of dimension d. | |
| Eigen::VectorXd | restrictEdge (size_t iE, const Eigen::VectorXd &vh) const |
| Restrict to the edge (including its vertices) of index iE. | |
| Eigen::VectorXd | restrictFace (size_t iF, const Eigen::VectorXd &vh) const |
| Restrict to the face (including vertices and edges) of index iF. | |
| Eigen::VectorXd | restrictCell (size_t iT, const Eigen::VectorXd &vh) const |
| Restrict to the cell (including vertices, edges and faces) of index iT. | |
| Eigen::VectorXd | restrict (const Edge &E, const Eigen::VectorXd vh) const |
| Restrict to an edge. | |
| Eigen::VectorXd | restrict (const Face &F, const Eigen::VectorXd vh) const |
| Restrict to a face. | |
| Eigen::VectorXd | restrict (const Cell &T, const Eigen::VectorXd vh) const |
| Restrict to a cell. | |
| Eigen::MatrixXd | extendOperator (const Cell &T, const Face &F, const Eigen::MatrixXd &opF) const |
| Eigen::MatrixXd | extendOperator (const Cell &T, const Edge &E, const Eigen::MatrixXd &opE) const |
| Extend an edge operator to a cell. | |
| Eigen::MatrixXd | extendOperator (const Face &F, const Edge &E, const Eigen::MatrixXd &opE) const |
| Extend an edge operator to a face. | |
| Eigen::MatrixXd | extendOperator (size_t d1, size_t i1, size_t d2, size_t i2, const Eigen::MatrixXd &op) const |
| Generic extension operator from the i2-th d2-cell to the i1-th d1-cell. | |
| void | addInnerProductContribution (const Cell &T, const Face &F, Eigen::MatrixXd &prodT, const Eigen::MatrixXd &prodF) const |
| Takes an inner product prodF on a face F, and adds its contributions to the inner product prodT on the element T (distributes the contributions according to the DOFs as seen from T) | |
| std::vector< size_t > | globalDOFIndices (const Cell &T) const |
| Returns a vector listing the global DOFs attached to the element T: vertex DOFs, edge DOFs, face DOFs and element DOFs. | |
| std::vector< size_t > | globalDOFIndices (const Face &F) const |
| Returns a vector listing the global DOFs attached to the face F: vertex DOFs, edge DOFs, face DOFs. | |
Public Member Functions inherited from HArDCore3D::LocalDOFSpace | |
| LocalDOFSpace (const Mesh &mesh, size_t n_local_vertex_dofs, size_t n_local_edge_dofs, size_t n_local_face_dofs, size_t n_local_cell_dofs) | |
| Constructor. | |
| const Mesh & | mesh () const |
| Returns the mesh. | |
| size_t | numLocalDofsVertex () const |
| Returns the number of local vertex DOFs. | |
| size_t | numLocalDofsEdge () const |
| Returns the number of local edge DOFs. | |
| size_t | numLocalDofsFace () const |
| Returns the number of local face DOFs. | |
| size_t | numLocalDofsCell () const |
| Returns the number of local cell DOFs. | |
| size_t | numLocalDofs (size_t d) const |
| Returns the number of local d-cell DOFs. | |
| size_t | dimension () const |
| Returns the dimension of the global space (all DOFs for all geometric entities) | |
| size_t | dimensionVertex (const Vertex &V) const |
| Returns the dimension of the local space on the vertex V. | |
| size_t | dimensionVertex (size_t iV) const |
| Returns the dimension of the local space on the vertex of index iV. | |
| size_t | dimensionEdge (const Edge &E) const |
| Returns the dimension of the local space on the edge E (including vertices) | |
| size_t | dimensionEdge (size_t iE) const |
| Returns the dimension of the local space on the edge of index iE (including vertices) | |
| size_t | dimensionFace (const Face &F) const |
| Returns the dimension of the local space on the face F (including edges and vertices) | |
| size_t | dimensionFace (size_t iF) const |
| Returns the dimension of the local space on the face of index iF (including edges and vertices) | |
| size_t | dimensionCell (const Cell &T) const |
| Returns the dimension of the local space on the cell T (including faces, edges and vertices) | |
| size_t | dimensionCell (size_t iT) const |
| Returns the dimension of the local space on the cell of index iT (including faces, edges and vertices) | |
| size_t | dimension (size_t d, size_t i) const |
| Returns the dimension of the local space on the d-cell of index i (including its boundary) | |
| size_t | localOffset (const Edge &E, const Vertex &V) const |
| Returns the local offset of the vertex V with respect to the edge E. | |
| size_t | localOffset (const Edge &E) const |
| Returns the local offset of the unknowns attached to the edge E. | |
| size_t | localOffset (const Face &F, const Vertex &V) const |
| Returns the local offset of the vertex V with respect to the face F. | |
| size_t | localOffset (const Face &F, const Edge &E) const |
| Returns the local offset of the edge E with respect to the face F. | |
| size_t | localOffset (const Face &F) const |
| Returns the local offset of the unknowns attached to the face F. | |
| size_t | localOffset (const Cell &T, const Vertex &V) const |
| Returns the local offset of the vertex V with respect to the cell T. | |
| size_t | localOffset (const Cell &T, const Edge &E) const |
| Returns the local offset of the edge E with respect to the cell T. | |
| size_t | localOffset (const Cell &T, const Face &F) const |
| Returns the local offset of the face F with respect to the cell T. | |
| size_t | localOffset (const Cell &T) const |
| Returns the local offset of the unknowns attached to the element T. | |
Additional Inherited Members | |
Protected Attributes inherited from HArDCore3D::LocalDOFSpace | |
| const Mesh & | m_mesh |
| size_t | m_n_local_vertex_dofs |
| size_t | m_n_local_edge_dofs |
| size_t | m_n_local_face_dofs |
| size_t | m_n_local_cell_dofs |
Class definition: polynomial bases and operators.