17 #ifndef INTEGRALWEIGHT_HPP
18 #define INTEGRALWEIGHT_HPP
50 :
IntegralWeight( [val](const
Cell &T, const Eigen::Vector3d &x)->double {return val;}, [](
const Cell &T)->
size_t {
return 0;} )
57 :
IntegralWeight( [val](const
Cell &T, const Eigen::VectorXd &x)->double {return val(x);}, [deg](
const Cell &T)->
size_t {
return deg;} )
77 = [weight, r](
const Cell & T,
const Eigen::Vector3d & x)->
double {
return r * weight.
value(T,x);};
87 = [weight1, weight2](
const Cell & T,
const Eigen::Vector3d & x)->
double
88 {
return weight1.
value(T,x) + weight2.
value(T,x);};
90 = [weight1, weight2](
const Cell & T)->
size_t
91 {
return std::max(weight1.
deg(T), weight2.
deg(T)); };
std::function< double(const Cell &, const Eigen::Vector3d &)> IntegralWeightValueType
Definition: integralweight.hpp:30
IntegralWeight(const std::function< double(const VectorRd &)> &val, const size_t °)
Constructor when the dependency on the cell T is not explicit in the value (and degree is constant)
Definition: integralweight.hpp:56
IntegralWeight(const IntegralWeightValueType _value, const IntegralWeightDegreeType _deg)
Generic constructor.
Definition: integralweight.hpp:38
std::function< size_t(const Cell &)> IntegralWeightDegreeType
Definition: integralweight.hpp:31
IntegralWeight(const std::function< double(const VectorRd &)> &val)
Constructor when the dependency on the cell T is not explicit in the value, and degree is not provide...
Definition: integralweight.hpp:63
IntegralWeight operator*(double const &r, IntegralWeight const &weight)
Operator to multiply an IntegralWeight by a number.
Definition: integralweight.hpp:74
IntegralWeightValueType value
Definition: integralweight.hpp:69
IntegralWeight(double val)
Constructor for constant weights.
Definition: integralweight.hpp:49
IntegralWeight operator+(IntegralWeight const &weight1, IntegralWeight const &weight2)
Operator to add an IntegralWeight to another one.
Definition: integralweight.hpp:84
IntegralWeightDegreeType deg
Definition: integralweight.hpp:70
Definition: ddr-magnetostatics.hpp:40
MeshND::VectorRd< 2 > VectorRd
Definition: Mesh2D.hpp:14
MeshND::Cell< 2 > Cell
Definition: Mesh2D.hpp:13
Structure for weights (scalar, at the moment) in integral.
Definition: integralweight.hpp:36