BOUT-dev
BOUT-dev copied to clipboard
Split out `XZPetscHermiteSpline`
Includes #3200 for testing
- Split out
XZPetscHermiteSplineas a separate implementation, this allows us to remove all the#ifdefmess - Move all the
XZInterpolationsinto the more usualimpls/directory layout
I unified all the HermiteSpline interpolations, because they have a fair bit in common, it is much easier to keep the different versions aligned.
Maybe we should move some of the #ifdef to if constexpr + templates?
Ok, I can make XZHermiteSpline a base class of XZPetscHermiteSpline too to avoid the duplication of the basis calculations. We could also add XZPetscMonotonicHermiteSpline by simply doing the interpolation and clipping afterwards