7 virtual Eigen::Vector<double,1>
B (
size_t map_id,
const Eigen::Vector<double,2> &) = 0;
8 virtual Eigen::Vector<double,2>
E (
size_t map_id,
const Eigen::Vector<double,2> &) = 0;
9 virtual Eigen::Vector<double,1>
dE (
size_t map_id,
const Eigen::Vector<double,2> &) = 0;
10 virtual Eigen::Vector<double,1>
rho (
size_t map_id,
const Eigen::Vector<double,2> &) = 0;
11 virtual Eigen::Vector<double,2>
J (
size_t map_id,
const Eigen::Vector<double,2> &) = 0;
19 Eigen::Vector<double,1>
B (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
21 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
22 const double X = x[0], Y = x[1];
23 const double w = (X <
_t - 0.5) ? 1 : ((X >
_t + 0.5) ? -1 : 0);
24 return Eigen::Vector<double,1>{2. + (Y-0.5)*(Y-0.5) + (X -
_t + w)*(X -
_t + w)};
26 Eigen::Vector<double,2>
E (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
28 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
29 const double X = x[0];
30 const double w = (X <
_t - 0.5) ? 1 : ((X >
_t + 0.5) ? -1 : 0);
31 return Eigen::Vector<double,2>{0., (X -
_t + w)*(X -
_t + w)};
33 Eigen::Vector<double,1>
dE (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
35 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
36 const double X = x[0];
37 const double w = (X <
_t - 0.5) ? 1 : ((X >
_t + 0.5) ? -1 : 0);
38 return Eigen::Vector<double,1>{2.*(X -
_t + w)};
40 Eigen::Vector<double,1>
rho (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
42 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
43 return Eigen::Vector<double,1>{0.};
45 Eigen::Vector<double,2>
J (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
47 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
48 const double Y = x[1];
49 return Eigen::Vector<double,2>{2*Y - 1.,0};
Definition: sphere_ref.hpp:16
Eigen::Vector< double, 1 > dE(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:33
Eigen::Vector< double, 2 > J(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:45
Eigen::Vector< double, 1 > B(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:19
Eigen::Vector< double, 2 > E(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:26
Eigen::Vector< double, 1 > rho(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:40
Definition: sphere_ref.hpp:6
virtual Eigen::Vector< double, 2 > J(size_t map_id, const Eigen::Vector< double, 2 > &)=0
virtual Eigen::Vector< double, 1 > rho(size_t map_id, const Eigen::Vector< double, 2 > &)=0
virtual Eigen::Vector< double, 2 > E(size_t map_id, const Eigen::Vector< double, 2 > &)=0
double _t
Definition: sphere_ref.hpp:12
virtual ~Solution()
Definition: torus_ref.hpp:13
virtual Eigen::Vector< double, 1 > dE(size_t map_id, const Eigen::Vector< double, 2 > &)=0
virtual Eigen::Vector< double, 1 > B(size_t map_id, const Eigen::Vector< double, 2 > &)=0