1#ifndef PRECICE_NO_GINKGO
24#define doLocalCode(Type, function, polynomial, EXECUTOR, SOLVER) \
26 MappingConfiguration::GinkgoParameter gpm; \
27 gpm.executor = EXECUTOR; \
29 gpm.solver = SOLVER; \
30 gpm.maxIterations = 100; \
31 gpm.usePreconditioner = false; \
32 RadialBasisFctMapping<GinkgoRadialBasisFctSolver<Type>, MappingConfiguration::GinkgoParameter> consistentMap2D(Mapping::CONSISTENT, 2, function, {{false, false, false}}, polynomial, gpm); \
33 perform2DTestConsistentMapping(consistentMap2D); \
34 RadialBasisFctMapping<GinkgoRadialBasisFctSolver<Type>, MappingConfiguration::GinkgoParameter> consistentMap2DVector(Mapping::CONSISTENT, 2, function, {{false, false, false}}, polynomial, gpm); \
35 perform2DTestConsistentMappingVector(consistentMap2DVector); \
36 RadialBasisFctMapping<GinkgoRadialBasisFctSolver<Type>, MappingConfiguration::GinkgoParameter> consistentMap3D(Mapping::CONSISTENT, 3, function, {{false, false, false}}, polynomial, gpm); \
37 perform3DTestConsistentMapping(consistentMap3D); \
38 RadialBasisFctMapping<GinkgoRadialBasisFctSolver<Type>, MappingConfiguration::GinkgoParameter> scaledConsistentMap2D(Mapping::SCALED_CONSISTENT_SURFACE, 2, function, {{false, false, false}}, polynomial, gpm); \
39 perform2DTestScaledConsistentMapping(scaledConsistentMap2D); \
40 RadialBasisFctMapping<GinkgoRadialBasisFctSolver<Type>, MappingConfiguration::GinkgoParameter> scaledConsistentMap3D(Mapping::SCALED_CONSISTENT_SURFACE, 3, function, {{false, false, false}}, polynomial, gpm); \
41 perform3DTestScaledConsistentMapping(scaledConsistentMap3D); \
42 RadialBasisFctMapping<GinkgoRadialBasisFctSolver<Type>, MappingConfiguration::GinkgoParameter> conservativeMap2D(Mapping::CONSERVATIVE, 2, function, {{false, false, false}}, polynomial, gpm); \
43 perform2DTestConservativeMapping(conservativeMap2D); \
44 RadialBasisFctMapping<GinkgoRadialBasisFctSolver<Type>, MappingConfiguration::GinkgoParameter> conservativeMap2DVector(Mapping::CONSERVATIVE, 2, function, {{false, false, false}}, polynomial, gpm); \
45 perform2DTestConservativeMappingVector(conservativeMap2DVector); \
46 RadialBasisFctMapping<GinkgoRadialBasisFctSolver<Type>, MappingConfiguration::GinkgoParameter> conservativeMap3D(Mapping::CONSERVATIVE, 3, function, {{false, false, false}}, polynomial, gpm); \
47 perform3DTestConservativeMapping(conservativeMap3D); \
24#define doLocalCode(Type, function, polynomial, EXECUTOR, SOLVER) \ …
50#define TEST_FOR_ALL_RBFS(EXECUTOR, SOLVER) \
51 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
52 BOOST_AUTO_TEST_CASE(MapThinPlateSplines) \
55 ThinPlateSplines fct; \
56 doLocalCode(ThinPlateSplines, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
58 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
59 BOOST_AUTO_TEST_CASE(MapMultiquadrics) \
62 Multiquadrics fct(1e-3); \
63 doLocalCode(Multiquadrics, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
65 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
66 BOOST_AUTO_TEST_CASE(MapInverseMultiquadrics) \
69 InverseMultiquadrics fct(1e-3); \
70 doLocalCode(InverseMultiquadrics, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
72 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
73 BOOST_AUTO_TEST_CASE(MapVolumeSplines) \
77 doLocalCode(VolumeSplines, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
79 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
80 BOOST_AUTO_TEST_CASE(MapGaussian) \
84 doLocalCode(Gaussian, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
86 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
87 BOOST_AUTO_TEST_CASE(MapCompactThinPlateSplinesC2) \
90 double supportRadius = 1.2; \
91 CompactThinPlateSplinesC2 fct(supportRadius); \
92 doLocalCode(CompactThinPlateSplinesC2, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
94 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
95 BOOST_AUTO_TEST_CASE(MapCompactPolynomialC0) \
98 double supportRadius = 1.2; \
99 CompactPolynomialC0 fct(supportRadius); \
100 doLocalCode(CompactPolynomialC0, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
102 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
103 BOOST_AUTO_TEST_CASE(MapCompactPolynomialC2) \
106 double supportRadius = 1.2; \
107 CompactPolynomialC2 fct(supportRadius); \
108 doLocalCode(CompactPolynomialC2, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
110 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
111 BOOST_AUTO_TEST_CASE(MapCompactPolynomialC4) \
114 double supportRadius = 1.2; \
115 CompactPolynomialC4 fct(supportRadius); \
116 doLocalCode(CompactPolynomialC4, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
118 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
119 BOOST_AUTO_TEST_CASE(MapCompactPolynomialC6) \
122 double supportRadius = 1.2; \
123 CompactPolynomialC6 fct(supportRadius); \
124 doLocalCode(CompactPolynomialC6, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
126 PRECICE_TEST_SETUP(1_rank, Require::Ginkgo) \
127 BOOST_AUTO_TEST_CASE(MapCompactPolynomialC8) \
130 double supportRadius = 1.2; \
131 CompactPolynomialC8 fct(supportRadius); \
132 doLocalCode(CompactPolynomialC8, fct, Polynomial::SEPARATE, EXECUTOR, SOLVER); \
50#define TEST_FOR_ALL_RBFS(EXECUTOR, SOLVER) \ …
139#ifdef PRECICE_WITH_OPENMP
145#ifdef PRECICE_WITH_CUDA
151#ifdef PRECICE_WITH_CUDA
157#ifdef PRECICE_WITH_HIP
163#ifdef PRECICE_WITH_HIP
169#undef TEST_FOR_ALL_RBFS
gko::solver::Gmres<> gmres
#define TEST_FOR_ALL_RBFS(EXECUTOR, SOLVER)
BOOST_AUTO_TEST_SUITE(PreProcess)
BOOST_AUTO_TEST_SUITE_END()
contains data mapping from points to meshes.
provides Mesh, Data and primitives.
contains the testing framework.
Main namespace of the precice library.