HArD::Core2D
Hybrid Arbitrary Degree::Core 2D - Library to implement 2D schemes with edge and cell polynomials as unknowns
Loading...
Searching...
No Matches
Classes | Namespaces | Variables
ddr-rmplate.hpp File Reference
#include <iostream>
#include <boost/math/constants/constants.hpp>
#include <Eigen/Sparse>
#include <unsupported/Eigen/SparseExtra>
#include <mesh.hpp>
#include <BoundaryConditions/BoundaryConditions.hpp>
#include <BoundaryConditions/BChandlers.hpp>
#include <xgrad.hpp>
#include <excurl.hpp>
Include dependency graph for ddr-rmplate.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  HArDCore2D::RMParameters
 Structure to store model data. More...
 
struct  HArDCore2D::RMNorms
 Structure to store component norms (for rotation, displacement, Kirchoff term and total energy) More...
 
struct  HArDCore2D::ReissnerMindlin
 Assemble a RM problem. More...
 

Namespaces

namespace  HArDCore2D
 

Variables

static const double HArDCore2D::PI = boost::math::constants::pi<double>()
 
static ReissnerMindlin::SolutionRotationType HArDCore2D::constant_theta
 
static ReissnerMindlin::GradientRotationType HArDCore2D::constant_grad_theta
 
static ReissnerMindlin::SolutionDisplacementType HArDCore2D::constant_u
 
static ReissnerMindlin::ForcingTermType HArDCore2D::constant_f
 
static ReissnerMindlin::SolutionRotationType HArDCore2D::polynomial_theta
 
static ReissnerMindlin::GradientRotationType HArDCore2D::polynomial_grad_theta
 
static ReissnerMindlin::SolutionDisplacementType HArDCore2D::polynomial_u
 
static ReissnerMindlin::ForcingTermType HArDCore2D::polynomial_f
 
static std::function< double(const VectorRd &)> HArDCore2D::an_g = [](const VectorRd &x)->double { return sin(PI*x(0))*sin(PI*x(1)); }
 
static std::function< VectorRd(const VectorRd &)> HArDCore2D::an_GRAD_g
 
static std::function< MatrixRd(const VectorRd &)> HArDCore2D::an_HESS_g
 
static std::function< double(const VectorRd &)> HArDCore2D::an_LAPL_g = [](const VectorRd &x)->double { return -2*pow(PI,2)*sin(PI*x(0))*sin(PI*x(1)); }
 
static std::function< double(const VectorRd &)> HArDCore2D::an_V = [](const VectorRd &x)->double { return x(0) * exp(-x(0))*cos(x(1)); }
 
static std::function< VectorRd(const VectorRd &)> HArDCore2D::an_GRAD_V
 
static std::function< MatrixRd(const VectorRd &)> HArDCore2D::an_HESS_V
 
static std::function< double(const VectorRd &)> HArDCore2D::an_LAPL_V = [](const VectorRd &x)->double { return -2.* exp(-x(0))*cos(x(1)); }
 
static ReissnerMindlin::SolutionDisplacementType HArDCore2D::an_v
 
static ReissnerMindlin::SolutionRotationType HArDCore2D::an_GRAD_v
 
static ReissnerMindlin::GradientRotationType HArDCore2D::an_HESS_v
 
static ReissnerMindlin::SolutionDisplacementType HArDCore2D::an_LAPL_v
 
static ReissnerMindlin::SolutionRotationType HArDCore2D::analytical_theta = an_GRAD_v
 
static ReissnerMindlin::GradientRotationType HArDCore2D::analytical_grad_theta = an_HESS_v
 
static ReissnerMindlin::SolutionDisplacementType HArDCore2D::analytical_u
 
static ReissnerMindlin::ForcingTermType HArDCore2D::analytical_f
 
static ReissnerMindlin::SolutionRotationType HArDCore2D::ukn_theta
 
static ReissnerMindlin::GradientRotationType HArDCore2D::ukn_grad_theta
 
static ReissnerMindlin::SolutionDisplacementType HArDCore2D::ukn_u
 
static ReissnerMindlin::ForcingTermType HArDCore2D::ukn_f
 
static ReissnerMindlin::SolutionRotationType HArDCore2D::kir_theta
 
static ReissnerMindlin::GradientRotationType HArDCore2D::kir_grad_theta
 
static ReissnerMindlin::SolutionDisplacementType HArDCore2D::kir_u
 
static ReissnerMindlin::ForcingTermType HArDCore2D::kir_f