This is the v0.3.1 release of Spyral. This is a minor update to address two major edge cases that could cause crashing behavior:
- Spline creation can fail for two major reasons: too few points (less than 5) or the data is not monotonic in z. We now catch these events and drop them, with a warning in the log files.
- On some Linux flavors, multiprocessing defaults to using `fork` instead of `spawn` to start processes. `fork` does not play well with the parallel backend used by polars. So now we strictly require the use of `spawn` to start child processes.
After some testing we also refactored and stabilized the solver_interp code. Unless a revelation occurs, this method most likely will not change dramatically moving forward.
example_analysis.ipynb was also refactored to showcase the use of the vector library bundled as part of spyral-utils.