HArD::Core3D
Hybrid Arbitrary Degree::Core 3D - Library to implement 3D schemes with vertex, edge, face and cell polynomials as unknowns
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
HArDCore3D::SerendipityProblem Class Reference

Construct all polynomial spaces for the DDR sequence. More...

#include <serendipity_problem.hpp>

Public Types

typedef RestrictedBasis< DDRCore::PolyBasisFaceTypePolylBasisFaceType
 
typedef RestrictedBasis< DDRCore::PolyBasisCellTypePolylBasisCellType
 
typedef RestrictedBasis< DDRCore::RolyComplBasisFaceTypeRolyCompllpoBasisFaceType
 
typedef RestrictedBasis< DDRCore::RolyComplBasisCellTypeRolyCompllpoBasisCellType
 
typedef Eigen::FullPivLU< Eigen::MatrixXd > InverseProblem
 Type for inverses of matrix for serendipity problem.
 

Public Member Functions

 SerendipityProblem (const DDRCore &ddrcore, bool use_threads=true, std::ostream &output=std::cout, bool use_serendipity=true)
 Constructor.
 
const std::vector< size_t > & serendipityEdges (size_t iF) const
 Return the list of serendipity edges in a face.
 
const int n_serendipityEdges (size_t iF) const
 Return the number of serendipity edges in a face.
 
const int serDegreeFace (size_t iF) const
 Return the serendipity degree ell_F in a face.
 
const std::vector< size_t > & serendipityFaces (size_t iT) const
 Return the list of serendipity face in a cell.
 
const int n_serendipityFaces (size_t iT) const
 Return the number of serendipity faces in a cell.
 
const int serDegreeCell (size_t iT) const
 Return the serendipity degree ell_T in a cell.
 
size_t dimFacePolyl (size_t iF) const
 Return the dimension of P^l on face of index iF.
 
size_t dimFacePolyl (const Face &F) const
 Return the dimension of P^{l+1} on face F.
 
const PolylBasisFaceTypefaceBasisPolyl (size_t iF) const
 Return the basis of P^l on face of index iF.
 
const PolylBasisFaceTypefaceBasisPolyl (const Face &F) const
 Return the basis of P^l on face F.
 
size_t dimCellPolyl (size_t iT) const
 Return the dimension of P^l on cell of index iT.
 
size_t dimCellPolyl (const Cell &T) const
 Return the dimension of P^l on cell T.
 
const PolylBasisCellTypecellBasisPolyl (size_t iT) const
 Return the basis of P^l on cell of index iT.
 
const PolylBasisCellTypecellBasisPolyl (const Cell &T) const
 Return the basis of P^l on cell T.
 
Eigen::VectorXi nDOFs_faces_SXGrad () const
 Number of DOFs on faces for serendipity XGrad space.
 
Eigen::VectorXi nDOFs_cells_SXGrad () const
 Number of DOFs on cells for serendipity XGrad space.
 
size_t dimFaceRolyCompllpo (size_t iF) const
 Return the dimension of R^{c,l+1} on face of index iF.
 
size_t dimFaceRolyCompllpo (const Face &F) const
 Return the dimension of R^{c,l+1} on face F.
 
const RolyCompllpoBasisFaceTypefaceBasisRolyCompllpo (size_t iF) const
 Return the basis of R^{c,l+1} on face of index iF.
 
const RolyCompllpoBasisFaceTypefaceBasisRolyCompllpo (const Face &F) const
 Return the basis of R^{c,l+1} on face F.
 
size_t dimCellRolyCompllpo (size_t iT) const
 Return the dimension of R^{c,l+1} on cell of index iT.
 
size_t dimCellRolyCompllpo (const Cell &T) const
 Return the dimension of R^{c,l+1} on cell T.
 
const RolyCompllpoBasisCellTypecellBasisRolyCompllpo (size_t iT) const
 Return the basis of R^{c,l+1} on cell of index iT.
 
const RolyCompllpoBasisCellTypecellBasisRolyCompllpo (const Cell &T) const
 Return the basis of R^{c,l+1} on cell T.
 
Eigen::VectorXi nDOFs_faces_SXCurl () const
 Number of DOFs on faces for serendipity XCurl space.
 
Eigen::VectorXi nDOFs_cells_SXCurl () const
 Number of DOFs on cells for serendipity XCurl space.
 
const Eigen::MatrixXd SerendipityOperatorFace (const size_t iF, const Eigen::MatrixXd &LF) const
 Compute the serendipity operator on the face of index iF.
 
const Eigen::MatrixXd SerendipityOperatorFace (const Face &F, const Eigen::MatrixXd &LF) const
 Compute the serendipity operator on the face F.
 
const Eigen::MatrixXd SerendipityOperatorCell (const size_t iT, const Eigen::MatrixXd &LT) const
 Compute the serendipity operator on the cell of index iT.
 
const Eigen::MatrixXd SerendipityOperatorCell (const Cell &T, const Eigen::MatrixXd &LT) const
 Compute the serendipity operator on the Cell T.
 
const Meshmesh () const
 Return a const reference to the mesh.
 
const DDRCoreddrCore () const
 Return a const reference to the underlying DDR core.
 

Detailed Description

Construct all polynomial spaces for the DDR sequence.


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