The vmd-rs
crate decomposes a signal according to the Variational Mode Decomposition method.
The implementation is referenced from vmdpy with some slight changes.
[dependencies]
vmd-rs = "0.2.0"
Blas integration is optional. See the blas section of ndarray on how to link to blas providers.
See vmdrs-py for an example.
Maybe build issues, thats it. I don't understand signal processing. I just translated the Python code to Rust and added some optimizations along the way.
Feel free to make a PR for changes you would like to see.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.