--- Rachel Alcraft, Bioinformatics ---
Home
~ Citing
~ PsuBirkbeck
~ PsuGeometry
~ PsuDensity
~ DensityFlight
~ PsuMultivarse
Psu Multivarse
A multivariate interpolation library
Library Description
This library provides a simple interface to multivariate interpolation for values and partial derivatives. Two methods are employed:
- Multivariate fitting which has a bottleneck in matrix size.
- Tri-directional tri-polynomial interpolation, this has no bottleneck in degree but at very high degree, as a recursive function, can be slow
The speed that these algorithms work at is: Linear time?? Quadratic time?? How do I calculate that?
The problem
Interpolating sequences and data in 3d cubes eg electron density. Creating an f(x,y,z). Finding the partial derivatives.
Theorem 1: There is an invariant solution for a polynomial fitting a given degree and dimension
Conclusion: The constant matrices can be precalculated making a time efficient solution to interpolation.
Partial differentiation
The coefficients matrix can be differentiated by a simple matrix manipulation
Theorem 2: Partial differentation of the multivariate function is equivalent to differentiation of a tri-polynomial solution
Conclusion: The dimensional problem inherent in matrices can be solved by using a tri-directional polynomial fit.
Some of the invariant matrices
Code documentation
MatrixInvariant.py This calculates the invariant matrix only once per session by a singleton pattern
MultiSolver.py This uses the matrix solution, creating a multivariate function
PolySolver.py This uses a recursive 1 dimensional solution to calculate 3 polynomials for each point.
References
Contact Rachel by
email.
- Return to Rachel's
home page -
Notes on citations here