iltcme 0.1.0

Inverse Laplace transform with concentrated matrix-exponential functions
Documentation

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 / (s2 + 1)$.

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.