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;
20 Eigen::Vector<double,1>
B (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
22 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
23 const double X = x[0], Y = x[1];
24 const double w = (X <
_t - 0.5) ? 1 : ((X >
_t + 0.5) ? -1 : 0);
25 return Eigen::Vector<double,1>{2. + (Y-0.5)*(Y-0.5) + (X -
_t + w)*(X -
_t + w)};
27 Eigen::Vector<double,2>
E (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
29 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
30 const double X = x[0];
31 const double w = (X <
_t - 0.5) ? 1 : ((X >
_t + 0.5) ? -1 : 0);
32 return Eigen::Vector<double,2>{0., (X -
_t + w)*(X -
_t + w)};
34 Eigen::Vector<double,1>
dE (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
36 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
37 const double X = x[0];
38 const double w = (X <
_t - 0.5) ? 1 : ((X >
_t + 0.5) ? -1 : 0);
39 return Eigen::Vector<double,1>{2.*(X -
_t + w)};
41 Eigen::Vector<double,1>
rho (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
43 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
44 return Eigen::Vector<double,1>{0.};
46 Eigen::Vector<double,2>
J (
size_t map_id,
const Eigen::Vector<double,2> &x)
override
48 if (
_t > 1. ||
_t < 0.)
_t -= std::floor(
_t);
49 const double Y = x[1];
50 return Eigen::Vector<double,2>{2*Y - 1.,0};
Definition: sphere_ref.hpp:18
Eigen::Vector< double, 1 > dE(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:34
Eigen::Vector< double, 2 > J(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:46
Eigen::Vector< double, 1 > B(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:20
Eigen::Vector< double, 2 > E(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:27
Eigen::Vector< double, 1 > rho(size_t map_id, const Eigen::Vector< double, 2 > &x) override
Definition: torus_ref.hpp:41
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:14
virtual Eigen::Vector< double, 1 > dE(size_t map_id, const Eigen::Vector< double, 2 > &)=0
bool _JZero
Definition: sphere_ref.hpp:13
virtual Eigen::Vector< double, 1 > B(size_t map_id, const Eigen::Vector< double, 2 > &)=0