https://github.com/swvanbuuren/cubinterpp
Multidimensional cubic and linear interpolation in modern C++ with Python support
https://github.com/swvanbuuren/cubinterpp
1d-interpolation 2d-interpolation 3d-interpolation akima cpp cpp23 cubic-interpolation header-only interpolation linear-interpolation mdspan multi-dimensional-interpolation multidimensional-interpolation multivariate-interpolation piecewise-polynomial pybind11 python spline spline-interpolation submdspan
Last synced: 27 days ago
JSON representation
Multidimensional cubic and linear interpolation in modern C++ with Python support
- Host: GitHub
- URL: https://github.com/swvanbuuren/cubinterpp
- Owner: swvanbuuren
- License: mit
- Created: 2022-12-26T18:45:29.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2026-01-20T19:43:22.000Z (about 1 month ago)
- Last Synced: 2026-01-21T04:43:57.604Z (about 1 month ago)
- Topics: 1d-interpolation, 2d-interpolation, 3d-interpolation, akima, cpp, cpp23, cubic-interpolation, header-only, interpolation, linear-interpolation, mdspan, multi-dimensional-interpolation, multidimensional-interpolation, multivariate-interpolation, piecewise-polynomial, pybind11, python, spline, spline-interpolation, submdspan
- Language: C++
- Homepage: https://swvanbuuren.github.io/cubinterpp/
- Size: 1.87 MB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# cubinterpp
`N`-dimensional cubic and linear interpolation in modern C++ with Python
support.
|  |
|:--:|
| *1D interpolation* |
|  |  |
|:--:|:--:|
| *2D Linear interpolation* | *2D Monotonic cubic spline interpolation* |
|  |  |
|:--:|:--:|
| *2D Akima spline interpolation* | *2D Natural spline interpolation* |
## Introduction
This C++ header library features tools for piecewise linear and cubic
interpolation in `N` dimensions.
For cubic piecewise interpolation, the library features three types:
- Monotone cubic interpolation
- Akima spline interpolation
- Natural cubic spline interpolation
All classes are templatized and support the STL's vector types.
The accompanying python script in [cubinterpp ](cubinterpp ) compares the
interpolation types.
Refer to the [documentation](https://swvanbuuren.github.io/cubinterpp/) for:
- [Requirements](https://swvanbuuren.github.io/cubinterpp/requirements/)
- [Usage instructions](https://swvanbuuren.github.io/cubinterpp/usage/)
- [Single header file](https://swvanbuuren.github.io/cubinterpp/usage#single-header-library)
- [Build from source](https://swvanbuuren.github.io/cubinterpp/usage#build-from-source)
- [Mathematical background](https://swvanbuuren.github.io/cubinterpp/theory/)
- [Code reference](https://swvanbuuren.github.io/cubinterpp/reference/)
## License
An MIT style license applies for cubinterpp, see the [LICENSE](LICENSE) file for
more details.