-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Spline Builder2D::operator() has a template parameter Layout, but passing objects with the Layout LayoutStrided leads to an error. The error comes from this line:
| m_spline_builder_deriv1( |
as the 1D version:
ddc/include/ddc/kernels/splines/spline_builder.hpp
Lines 471 to 472 in f664a53
| template <class Layout, class BatchedInterpolationDDom> | |
| void operator()( |
also assumes that the layout is the same for all arguments and therefore does not like the argument created here:
ddc/include/ddc/kernels/splines/spline_builder_2d.hpp
Lines 554 to 555 in f664a53
| ddc::Chunk spline1_deriv_min_alloc( | |
| m_spline_builder_deriv1.batched_spline_domain(batched_interpolation_deriv_domain), |
I am pretty certain that LayoutLeft will have the same problem.
If you are touching this argument then for Gysela it could also be useful to have a different layout for the values and derivatives (e.g. LayoutRight for the values, and LayoutStrided for the derivatives).
This bug was found by @PaulineVidal who has a reproducer if needed