Skip to main content

A tricubic interpolation module for python.

Project description

pytricubic

pytricubic is a simple Python wrapper for the tricubic interpolation algorithm by Lekien and Marsden based on the implementation by David Kirkby (https://github.com/deepzot/likely). Performance compared to the reference implementation has been improved drastically by doing the matrix multiplication with the linear algebra template library Eigen.

The tricubic interpolation scheme is described in:

Lekien, F. and Marsden, J.: Tricubic interpolation in three dimensions. In: International Journal for Numerical Methods in Engineering (2005), No. 63, p. 455-471

Installing pytricubic only requires CMake being installed and typing:

pip install tricubic

A manual build process is not necessary if you just want to use library.

0. Building manually

This chapter assumes that you are working in a standard Linux environment with tools like g++ and cmake already installed. The template libraries Eigen3 for linear algebra and pybind11 for binding to Python are now included in the thirdparty subfolder. Threfore, no external requirements exist.

Installing pytricubic is as easy as:

git clone git://github.com/danielguterding/pytricubic.git  
cd pytricubic  
mkdir build  
cd build  
cmake ../  
make  

1. Usage

An example of how to use the interpolator class is given in example.py. Only Python lists are supported as inputs. Numpy arrays first have to be converted to Python lists.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tricubic-1.0.5.tar.gz (3.7 MB view details)

Uploaded Source

File details

Details for the file tricubic-1.0.5.tar.gz.

File metadata

  • Download URL: tricubic-1.0.5.tar.gz
  • Upload date:
  • Size: 3.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tricubic-1.0.5.tar.gz
Algorithm Hash digest
SHA256 203c96a4d20c889b14d95077938595315340be56345252d4f81cffaa71615af5
MD5 e0913b66352dce83564eacae82398d6e
BLAKE2b-256 37603fed9c9149cf64132b9f74bdf014b64fb7024924cd542496b2b3de61d912

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page