1 #ifndef EXERCISE_3_ERRORMEASUREMENTS_H_ 2 #define EXERCISE_3_ERRORMEASUREMENTS_H_ 13 template<
typename ConfiguratorType >
22 static const int dim = 3;
24 std::unique_ptr<typename ConfiguratorType::VectorType>
_dof;
25 std::unique_ptr<shellFE::DiscreteVectorFunctionDefaultShellFE<ConfiguratorType>>
_x;
32 _numericalSolution(this->
_config, numericalSolution)
38 for (
int i = 0; i < numGlobalDofs; ++i) {
39 for (
int c = 0; c <
dim; ++c) {
40 (*_dof)[c*numGlobalDofs + i] = grid.
getVertex(i)[c];
58 template<
typename ConfiguratorType>
68 static const int dim = 3;
70 std::unique_ptr<typename ConfiguratorType::VectorType>
_dof;
71 std::unique_ptr<shellFE::DiscreteVectorFunctionDefaultShellFE<ConfiguratorType>>
_x;
78 _numericalSolution(this->
_config, numericalSolution)
84 for (
int i = 0; i < numGlobalDofs; ++i) {
85 for (
int c = 0; c <
dim; ++c) {
86 (*_dof)[c*numGlobalDofs + i] = grid.
getVertex(i)[c];
const shellFE::DiscreteFunctionDefaultShellFE< ConfiguratorType > _numericalSolution
Helper class to evaluate a discrete nodal function on a given mesh.
DataTypeContainer::VectorType VectorType
ConfiguratorType::TangentVecType TangentVecType
std::unique_ptr< shellFE::DiscreteVectorFunctionDefaultShellFE< ConfiguratorType > > _x
const Point3DType & getVertex(const int num) const
Calculates the norm of the difference between exact and numerical solution.
ConfiguratorType::DomVecType DomVecType
ConfiguratorType::VectorType VectorType
DataTypeContainer::DomVecType DomVecType
DataTypeContainer::RealType RealType
UnitTriangleFENonlinIntegrationScalarIntegratorShellFE(const ConfiguratorType &Config)
std::unique_ptr< typename ConfiguratorType::VectorType > _dof
const shellFE::DiscreteFunctionDefaultShellFE< ConfiguratorType > _numericalSolution
H1NormSqrDiff(const ConfiguratorType &conf, const VectorType &numericalSolution)
ConfiguratorType::VectorType VectorType
Helper class to evaluate a discrete vector-valued nodal function on a given mesh. ...
DataTypeContainer::TangentVecType TangentVecType
ConfiguratorType::RealType RealType
RealType evaluateIntegrand(const typename ConfiguratorType::ElementType &el, int q) const
std::unique_ptr< typename ConfiguratorType::VectorType > _dof
const InitType & getInitializer() const
Returns the mesh.
L2NormSqrDiff(const ConfiguratorType &conf, const VectorType &numericalSolution)
int getNumGlobalDofs() const
Returns the number of global degrees of freedom.
Calculates the norm of the difference between exact and numerical solution.
RealType evaluateIntegrand(const typename ConfiguratorType::ElementType &el, int q) const
std::unique_ptr< shellFE::DiscreteVectorFunctionDefaultShellFE< ConfiguratorType > > _x
ConfiguratorType::RealType RealType
Base classes for integration type operators defined using the unit triangle.
Configurator for Finite Elements.
Integrator to compute , where is the argument of the operator.
Triangle which has a tangent space at each node.
const ConfiguratorType & _config
ConfiguratorType::TangentVecType TangentVecType