A package for N dimensions B-splines.
Project description
bsplyne
bsplyne is a Python library for working with N-dimensional B-splines. It implements the Cox-de Boor algorithm for basis evaluation, order elevation, knot insertion, and provides a connectivity class for multi-patch structures. Additionally, it includes visualization tools with export capabilities to Paraview.
Installation
Since bsplyne is not yet on PyPI, you can install it locally as follows:
git clone https://github.com/Dorian210/bsplyne
cd bsplyne
pip install -e .
Dependencies
Make sure you have the following dependencies installed:
numpynumbascipymatplotlibmeshiotqdm
Main Modules
-
BSplineBasis
Implements B-spline basis function evaluation using the Cox-de Boor recursion formula. -
BSpline
Provides methods for creating and manipulating N-dimensional B-splines, including order elevation and knot insertion. -
MultiPatchBSplineConnectivity
Manages the connectivity between multiple N-dimensional B-spline patches. -
CouplesBSplineBorder (less documented)
Handles coupling between B-spline borders.
Examples
Several example scripts demonstrating the usage of bsplyne can be found in the examples/ directory. These scripts cover:
- Basis evaluation on a curved line
- Plotting with Matplotlib
- Order elevation
- Knot insertion
- Surface examples
- Exporting to Paraview
Documentation
The full API documentation is available in the docs/ directory of the project or via the online documentation portal.
Contributions
At the moment, I am not actively reviewing contributions. However, if you encounter issues or have suggestions, feel free to open an issue.
License
This project is licensed under the CeCILL License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bsplyne-1.0.0.tar.gz.
File metadata
- Download URL: bsplyne-1.0.0.tar.gz
- Upload date:
- Size: 59.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
606a21a9bd14906006eecb7b9f8ab308e57cb1a562e993285205bece794b9fad
|
|
| MD5 |
1607835cf908c9662b9237aafe25957a
|
|
| BLAKE2b-256 |
93e18593f02e58378caeaaccc1e6ec13afba8d8dd85ecc019ee5b5ccc702a891
|
File details
Details for the file bsplyne-1.0.0-py3-none-any.whl.
File metadata
- Download URL: bsplyne-1.0.0-py3-none-any.whl
- Upload date:
- Size: 55.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e52ae69804ce281d51d5b62264d041fa59c30e33239c9062aa38e22388cd5818
|
|
| MD5 |
efcc68bb9dc04e44e7f9437b1817dd3b
|
|
| BLAKE2b-256 |
342c6683f21cdc5cb668b6ff1b83311850f3731a27371776cd9c12cce7c0b908
|