1#ifndef TATOOINE_ANALYTICAL_NUMERICAL_COUNTEREXAMPLE_SADLO_H
2#define TATOOINE_ANALYTICAL_NUMERICAL_COUNTEREXAMPLE_SADLO_H
6#include <boost/math/constants/constants.hpp>
11template <
typename Real>
23 const Real xx = x * x;
24 const Real yy = y * y;
25 const Real xxyy = xx + yy;
26 const Real r = (-(1.0 / 80.0) * xxyy * xxyy + 81.0 / 80.0);
27 return tensor_type{r * (-0.5 * x + 0.5 * std::cos(t) - std::sin(t)),
28 r * (0.5 * y - 0.5 * std::sin(t) + std::cos(t))};
47 return length(x) <= 3;
Definition: counterexample_sadlo.h:36
vec< Real, 3 > at(Real t) const
Definition: counterexample_sadlo.h:37
auto operator()(Real t) const
Definition: counterexample_sadlo.h:38
Definition: counterexample_sadlo.h:31
vec< Real, 2 > at(Real t) const
Definition: counterexample_sadlo.h:32
auto operator()(Real t) const
Definition: counterexample_sadlo.h:33
Definition: counterexample_sadlo.h:12
auto bifurcationline() const
Definition: counterexample_sadlo.h:41
constexpr auto in_domain(const pos_type &x, Real) const -> bool
Definition: counterexample_sadlo.h:46
constexpr auto evaluate(const pos_type &p, Real t) const -> tensor_type
Definition: counterexample_sadlo.h:20
constexpr counterexample_sadlo() noexcept
Definition: counterexample_sadlo.h:18
auto bifurcationline_spacetime() const
Definition: counterexample_sadlo.h:42
vec< real_type, NumDimensions > pos_type
Definition: field.h:20
Tensor tensor_type
Definition: field.h:18