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.4.tar.gz (3.0 MB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: tricubic-1.0.4.tar.gz
  • Upload date:
  • Size: 3.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.0rc1

File hashes

Hashes for tricubic-1.0.4.tar.gz
Algorithm Hash digest
SHA256 02f6320f47032d89d5d71a70c6d67802110a2980fe235d830c2cbc9ce8e63bcf
MD5 7909eb2ef6ca9fd0ea27c6377b18f4da
BLAKE2b-256 67d195f8ce690f07b70eb16912cd6f3d5f2af523c886a5bae085d72b3f5dacb4

See more details on using hashes here.

Supported by

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