Crates.io MIT/Apache docs.rs ci

Rust implementation of Inverse Laplace Transform with Concentrated Matrix-Exponential Functions.

Source: https://inverselaplace.org

Usage

Approximate a sine function where $x = 1$ with a maximum of 50 function evaluations.

The Laplace transform of sine is $h^*(s) = 1 / (s^2 + 1)$.

rust fn main() { let result = iltcme::laplace_inversion(|s| 1.0 / (s.powi(2) + 1.0), 1.0, 50); approx::relative_eq!(result, 1.0_f64.sin(), epsilon = 0.001); }

Implementation details

This crate parses a large list of precomputed parameters from a JSON file and converts them to a Rust file which is internally used. The effect of this is that the build time might be slow, no runtime penalty should be paid though.