1#ifndef TATOOINE_THIN_PLATE_SPLINE_H
2#define TATOOINE_THIN_PLATE_SPLINE_H
12 return x * x * gcem::log(x);
16 [](
auto const xx) ->
decltype(xx) {
20 return xx * gcem::log(xx) / 2;
24 return 2 * x * gcem::log(x) + x;
28 return 2 * gcem::log(x) + 3;
35template <std::
size_t N = 1>
37 if constexpr (N == 0) {
39 }
else if constexpr (N == 1) {
41 }
else if constexpr (N == 2) {
43 }
else if constexpr (N == 3) {
48template <std::
size_t N = 1>
50 if constexpr (N == 0) {
52 }
else if constexpr (N == 1) {
54 }
else if constexpr (N == 2) {
59template <std::
size_t N = 1>
61 if constexpr (N == 0) {
63 }
else if constexpr (N == 2) {
Definition: algorithm.h:6
auto constexpr thin_plate_spline_from_squared
Definition: thin_plate_spline.h:15
auto constexpr thin_plate_spline_diff3
Definition: thin_plate_spline.h:31
auto constexpr thin_plate_spline_diff2
Definition: thin_plate_spline.h:27
auto constexpr thin_plate_spline
Definition: thin_plate_spline.h:8
auto constexpr thin_plate_spline_diff1
Definition: thin_plate_spline.h:23
constexpr auto diff(polynomial< Real, Degree > const &f)
Definition: polynomial.h:179