45 void evaluateIntegrand_impl(
49 Eigen::Dynamic, Eigen::Dynamic> *
intval)
const {
50 auto polynomial_degree =
super_space.get_polynomial_degree();
51 auto polynomial_degree_plus_one_squared =
52 (polynomial_degree + 1) * (polynomial_degree + 1);
55 auto s =
p1.segment<2>(0);
56 auto t =
p2.segment<2>(0);
63 auto x_f =
p1.segment<3>(3);
66 auto y_f =
p2.segment<3>(3);
87 Eigen::Matrix<std::complex<double>, 1, 1> evaluateFMMInterpolation_impl(
90 auto s =
p1.segment<2>(0);
91 auto t =
p2.segment<2>(0);
94 auto x_f =
p1.segment<3>(3);
97 auto y_f =
p2.segment<3>(3);
106 Eigen::Matrix<std::complex<double>, 1, 1>
intval;
116 const Eigen::Vector3d &
y)
const {
118 return std::exp(-std::complex<double>(0., 1.) * wavenumber_ *
r) / 4. /
124 void set_wavenumber(std::complex<double>
wavenumber) {
130 std::complex<double> get_wavenumber() {
return wavenumber_; }
133 std::complex<double> wavenumber_;