Fast, memory efficient radial basis function (RBF) interpolation library
Project description
ferreus_rbf (Python bindings)
Python bindings for the ferreus_rbf Rust crate, providing fast global radial
basis function (RBF) interpolation from Python.
Overview
Direct RBF solvers based on dense linear algebra require O(N²) memory and O(N³) work, which becomes impractical on large datasets. The underlying Rust implementation combines:
- Domain decomposition preconditioning in a Flexible GMRES (FGMRES) solver, and
- A fast multipole method (FMM) evaluator via
ferreus_bbfmm,
to reduce the cost to roughly O(N log N). This makes it possible to build global interpolants and extract isosurfaces on datasets with millions of points from Python.
Limitations
The current isosurface extraction method does not guarantee manifold or watertight meshes. Surfaces may contain trifurcations or self‑intersections and may therefore be unsuitable for downstream boolean or other topology‑ sensitive operations without additional post‑processing.
Install
pip install ferreus_rbf
Then in Python:
import ferreus_rbf
See the docs and examples/ directories in this package for more detailed
usage and API documentation.
Attribution and licensing
This package was developed while the author was working at Maptek and has been approved for open‑source distribution under the terms of the MIT license.
Unless otherwise stated, the following copyright applies:
Copyright (c) 2025 Maptek Pty Ltd.
All rights reserved.
This copyright applies to all files in this repository, whether or not an individual file contains an explicit notice.
The code is released under the MIT License – see the top‑level LICENSE file
for details.
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 Distributions
Built Distributions
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 ferreus_rbf-0.1.1-cp38-abi3-win_amd64.whl.
File metadata
- Download URL: ferreus_rbf-0.1.1-cp38-abi3-win_amd64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.8+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07e7365f2ef5def1fb8e1bb1c655f95c3412a2ae575f2f0040d1dc233df30bbe
|
|
| MD5 |
c8430d6e1ae6ef5c2a788baafd43223c
|
|
| BLAKE2b-256 |
36ab9c71f17fa70cc7d329cb4ad3e42e87713c131481186b631387592fca3c78
|
Provenance
The following attestation bundles were made for ferreus_rbf-0.1.1-cp38-abi3-win_amd64.whl:
Publisher:
publish-py-ferreus-rbf.yml on graphic-goose/ferreus_rbf_rs
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ferreus_rbf-0.1.1-cp38-abi3-win_amd64.whl -
Subject digest:
07e7365f2ef5def1fb8e1bb1c655f95c3412a2ae575f2f0040d1dc233df30bbe - Sigstore transparency entry: 707144232
- Sigstore integration time:
-
Permalink:
graphic-goose/ferreus_rbf_rs@9cf6e00c59b658edf94552ca7574fa05da512397 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/graphic-goose
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-py-ferreus-rbf.yml@9cf6e00c59b658edf94552ca7574fa05da512397 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file ferreus_rbf-0.1.1-cp38-abi3-manylinux_2_39_x86_64.whl.
File metadata
- Download URL: ferreus_rbf-0.1.1-cp38-abi3-manylinux_2_39_x86_64.whl
- Upload date:
- Size: 1.8 MB
- Tags: CPython 3.8+, manylinux: glibc 2.39+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7a494c2fbd1b7f096cb2296e50d5404e79b335b6a0d2570ab7b0b9c48de08a31
|
|
| MD5 |
266ff7bd2c123f24d3fd7fe8ba72eebb
|
|
| BLAKE2b-256 |
9e9bb679d3da3590873859a3554f5510050ec6af81b73e3a29cf7aa412a75517
|
Provenance
The following attestation bundles were made for ferreus_rbf-0.1.1-cp38-abi3-manylinux_2_39_x86_64.whl:
Publisher:
publish-py-ferreus-rbf.yml on graphic-goose/ferreus_rbf_rs
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ferreus_rbf-0.1.1-cp38-abi3-manylinux_2_39_x86_64.whl -
Subject digest:
7a494c2fbd1b7f096cb2296e50d5404e79b335b6a0d2570ab7b0b9c48de08a31 - Sigstore transparency entry: 707144261
- Sigstore integration time:
-
Permalink:
graphic-goose/ferreus_rbf_rs@9cf6e00c59b658edf94552ca7574fa05da512397 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/graphic-goose
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-py-ferreus-rbf.yml@9cf6e00c59b658edf94552ca7574fa05da512397 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file ferreus_rbf-0.1.1-cp38-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: ferreus_rbf-0.1.1-cp38-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.8+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ca6090ef39d00b0ebc66aaad91e056229cb6eb590a78d14cc94153327e83a49
|
|
| MD5 |
5824baa1fe0efb47efb0b16161cbeaaa
|
|
| BLAKE2b-256 |
b5b08a3a39c3f84abef66180397b66a352eaeeae10a5829daea07f4b9a5073d2
|
Provenance
The following attestation bundles were made for ferreus_rbf-0.1.1-cp38-abi3-macosx_11_0_arm64.whl:
Publisher:
publish-py-ferreus-rbf.yml on graphic-goose/ferreus_rbf_rs
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ferreus_rbf-0.1.1-cp38-abi3-macosx_11_0_arm64.whl -
Subject digest:
6ca6090ef39d00b0ebc66aaad91e056229cb6eb590a78d14cc94153327e83a49 - Sigstore transparency entry: 707144242
- Sigstore integration time:
-
Permalink:
graphic-goose/ferreus_rbf_rs@9cf6e00c59b658edf94552ca7574fa05da512397 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/graphic-goose
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-py-ferreus-rbf.yml@9cf6e00c59b658edf94552ca7574fa05da512397 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file ferreus_rbf-0.1.1-cp38-abi3-macosx_10_12_x86_64.whl.
File metadata
- Download URL: ferreus_rbf-0.1.1-cp38-abi3-macosx_10_12_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.8+, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
82a4b40cafdf7bcd9412d5e59bc793c0b310289f9423f347521e967ab40fa76e
|
|
| MD5 |
e5884be9a97667b9aaeab9c8bee575e9
|
|
| BLAKE2b-256 |
6aeea3a1f4782e74c0cfafeb59c9a0d657ff7a60a38ed2e8eca44f99817a7b49
|
Provenance
The following attestation bundles were made for ferreus_rbf-0.1.1-cp38-abi3-macosx_10_12_x86_64.whl:
Publisher:
publish-py-ferreus-rbf.yml on graphic-goose/ferreus_rbf_rs
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ferreus_rbf-0.1.1-cp38-abi3-macosx_10_12_x86_64.whl -
Subject digest:
82a4b40cafdf7bcd9412d5e59bc793c0b310289f9423f347521e967ab40fa76e - Sigstore transparency entry: 707144251
- Sigstore integration time:
-
Permalink:
graphic-goose/ferreus_rbf_rs@9cf6e00c59b658edf94552ca7574fa05da512397 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/graphic-goose
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-py-ferreus-rbf.yml@9cf6e00c59b658edf94552ca7574fa05da512397 -
Trigger Event:
workflow_dispatch
-
Statement type: