Commit bf451068 authored by ESTERIE Pierre's avatar ESTERIE Pierre

add chebychev in unit.l2p

parent 38108746
......@@ -5,6 +5,7 @@
#include "scalfmm/operators/generic/l2p.hpp"
#include "scalfmm/container/particle.hpp"
#include "scalfmm/container/point.hpp"
#include "scalfmm/interpolation/chebyshev.hpp"
#include "scalfmm/interpolation/uniform.hpp"
#include "scalfmm/matrix_kernels/laplace.hpp"
#include "scalfmm/meta/is_valid.hpp"
......@@ -175,6 +176,31 @@ TEMPLATE_TEST_CASE("l2p-test-3D-3PV", "[l2p-test-3D-3PV]", double, float)
}
}
TEMPLATE_TEST_CASE("cheb", "cheb", double, float)
{
using value_type = TestType;
SECTION("cheb d=3, pv=3", "[l2p-uniform,d=3,pv=3]")
{
using matrix_kernel_type = scalfmm::matrix_kernels::laplace::grad_one_over_r<3>;
using near_field_type = scalfmm::operators::near_field_operator<matrix_kernel_type>;
//
using interpolation_type = scalfmm::interpolation::chebyshev_interpolator<value_type, 3, matrix_kernel_type>;
using far_field_type = scalfmm::operators::far_field_operator<interpolation_type>;
test_l2p<scalfmm::operators::fmm_operators<near_field_type, far_field_type>, value_type>(7);
}
SECTION("cheb d=2, pv=1", "[l2p-uniform,d=2,pv=1]")
{
using matrix_kernel_type = scalfmm::matrix_kernels::laplace::one_over_r;
using near_field_type = scalfmm::operators::near_field_operator<matrix_kernel_type>;
//
using interpolation_type = scalfmm::interpolation::chebyshev_interpolator<value_type, 2, matrix_kernel_type>;
using far_field_type = scalfmm::operators::far_field_operator<interpolation_type>;
test_l2p<scalfmm::operators::fmm_operators<near_field_type, far_field_type>, value_type>(7);
}
}
int main(int argc, char* argv[])
{
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment