|
HArD::Core2D
Hybrid Arbitrary Degree::Core 2D - Library to implement 2D schemes with edge and cell polynomials as unknowns
|
Assemble a Kirchhoff-Love plate problem. More...
#include <ddr-klplate.hpp>
Public Types | |
| typedef Eigen::SparseMatrix< double > | SystemMatrixType |
| typedef std::function< double(const Eigen::Vector2d &)> | ForcingTermType |
| typedef std::function< double(const Eigen::Vector2d &)> | DeflectionType |
| typedef std::function< Eigen::Vector2d(const Eigen::Vector2d &)> | GradientDeflectionType |
| typedef std::function< Eigen::Matrix2d(const Eigen::Vector2d &)> | MomentTensorType |
| typedef std::function< double(const Eigen::Vector2d &, const Edge &)> | MomentTensorEdgeDerivativeType |
| typedef XDivDiv::ConstitutiveLawType | ConstitutiveLawType |
| typedef Eigen::SparseMatrix< double > | SystemMatrixType |
| typedef std::function< double(const Eigen::Vector2d &)> | ForcingTermType |
| typedef std::function< double(const Eigen::Vector2d &)> | DeflectionType |
| typedef std::function< Eigen::Matrix2d(const Eigen::Vector2d &)> | MomentTensorType |
| typedef std::function< double(const Eigen::Vector2d &, const Edge &)> | MomentTensorEdgeDerivativeType |
Public Member Functions | |
| KirchhoffLove (const PlatesCore &platescore, const ConstitutiveLawType &law, bool use_threads, std::ostream &output=std::cout) | |
| Constructor. | |
| size_t | dimensionSpace () const |
| Returns the dimension of the moment + deflection space. | |
| size_t | nbSCDOFs () const |
| Returns the number of statically condensed DOFs (here, the cell moments DOFs) | |
| size_t | sizeSystem () const |
| Returns the size of the statically condensed system. | |
| const XDivDiv & | xDivDiv () const |
| Returns the space XDivDiv. | |
| const GlobalDOFSpace | polykm2Th () const |
| Returns the space \(\mathbb{P}^{k-2}(\mathcal{T}_h)\). | |
| const SystemMatrixType & | systemMatrix () const |
| Returns the linear system matrix. | |
| SystemMatrixType & | systemMatrix () |
| Returns the linear system matrix. | |
| const Eigen::VectorXd & | systemVector () const |
| Returns the linear system right-hand side vector. | |
| Eigen::VectorXd & | systemVector () |
| Returns the linear system right-hand side vector. | |
| const SystemMatrixType & | scMatrix () const |
| Returns the static condensation recovery operator. | |
| Eigen::VectorXd & | scVector () |
| Returns the static condensation rhs. | |
| const double & | stabilizationParameter () const |
| Returns the stabilization parameter. | |
| double & | stabilizationParameter () |
| Returns the stabilization parameter. | |
| void | assembleLinearSystem (const ForcingTermType &f, const DeflectionType &u, const GradientDeflectionType &grad_u) |
| Assemble the global system. | |
| Eigen::VectorXd | interpolateDeflection (const DeflectionType &u, int deg_quad=-1) const |
| Interpolate deflection. | |
| double | computeNorm (const Eigen::VectorXd &v) const |
| Compute the discrete norm. | |
| KirchhoffLove (const PlatesCore &platescore, bool use_threads, std::ostream &output=std::cout) | |
| Constructor. | |
| size_t | dimensionSpace () const |
| Returns the dimension of the rotation + displacement space (with BC) | |
| const XDivDiv & | xDivDiv () const |
| Returns the space XDivDiv. | |
| const SystemMatrixType & | systemMatrix () const |
| Returns the linear system matrix. | |
| SystemMatrixType & | systemMatrix () |
| Returns the linear system matrix. | |
| const Eigen::VectorXd & | systemVector () const |
| Returns the linear system right-hand side vector. | |
| Eigen::VectorXd & | systemVector () |
| Returns the linear system right-hand side vector. | |
| const double & | stabilizationParameter () const |
| Returns the stabilization parameter. | |
| double & | stabilizationParameter () |
| Returns the stabilization parameter. | |
Assemble a Kirchhoff-Love plate problem.
| typedef std::function<double(const Eigen::Vector2d &)> HArDCore2D::KirchhoffLove::DeflectionType |
| typedef std::function<double(const Eigen::Vector2d &)> HArDCore2D::KirchhoffLove::ForcingTermType |
| typedef std::function<double(const Eigen::Vector2d &, const Edge &)> HArDCore2D::KirchhoffLove::MomentTensorEdgeDerivativeType |
| typedef std::function<Eigen::Matrix2d(const Eigen::Vector2d &)> HArDCore2D::KirchhoffLove::MomentTensorType |
| typedef Eigen::SparseMatrix<double> HArDCore2D::KirchhoffLove::SystemMatrixType |
| KirchhoffLove::KirchhoffLove | ( | const PlatesCore & | platescore, |
| bool | use_threads, | ||
| std::ostream & | output = std::cout |
||
| ) |
Constructor.
| platescore | Core for the DDR space sequence |
| use_threads | True for parallel execution, false for sequential execution |
| output | Output stream to print status messages |
|
inline |
Returns the dimension of the rotation + displacement space (with BC)
|
inline |
Returns the stabilization parameter.
|
inline |
Returns the stabilization parameter.
|
inline |
Returns the linear system matrix.
|
inline |
Returns the linear system matrix.
|
inline |
Returns the linear system right-hand side vector.
|
inline |
Returns the linear system right-hand side vector.