Closed j042 closed 4 months ago
The recent updates span multiple modules, focusing on improving spline handling in the splinepy
library. The changes optimize and extend functionality for spline manipulation, introduce enhancements in file exports, elevate dependency versions, and refine integration and extraction methods. Significant upgrades include renaming a key element, refining periodic dimension support, optimizing calculations using Einstein summation, and enhancing dependency and version controls for better compatibility and performance.
Files/Modules | Change Summary |
---|---|
splinepy/io/cats.py |
Renamed knot vector key, improved support for periodic dimensions, added rational NURBS export option |
tests/io/test_cats.py |
Updated tests for XML structure, indentation, added test for rational NURBS export |
splinepy/helpme/integrate.py |
Replaced _np.sum with _np.einsum in parametric_function for optimization |
tests/helpme/test_integrate.py |
Modified volume_function to incorporate a new scaling factor |
splinepy/helpme/extract.py |
Changed split_plane handling to 1D array for better validation |
pyproject.toml |
Updated description, dependencies, and Python version requirements |
CMakeLists.txt |
Updated minimum CMake version and project version |
splinepy/_version.py |
Incremented version number to 0.1.1 |
sequenceDiagram
participant User
participant Splinepy
participant ExportModule
participant IntegrateModule
User->>Splinepy: Call export() for NURBS
Splinepy->>ExportModule: Prepare splines for NURBS export
ExportModule-->Splinepy: Return NURBS-formed data
Splinepy-->>User: Export complete
User->>Splinepy: Call parametric_function()
Splinepy->>IntegrateModule: Invoke with new einsum logic
IntegrateModule-->Splinepy: Return optimized result
Splinepy-->>User: Return optimized integration result
The spline paths shift and bend, New formats now we send, With periodic grace, And functions in their place, They integrate and blend. NURBS shall sail, On optimized eddies, we prevail! 🐇✨
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
I think dependency update belong to a minor release, but as we forgot to update that last time, we will call it a bugfix
Overview
version update with bug fixes
Summary
Bugfix
Compatibility Updates
Version Updates
Related
funi
v0.1.0 solved CI tests - solved issues regarding numpy 2.0