11 个版本
0.5.1 | 2024年2月26日 |
---|---|
0.5.0 | 2022年12月29日 |
0.4.4 | 2022年12月29日 |
0.4.2 | 2022年10月22日 |
0.2.0 | 2019年11月8日 |
#509 in 数学
52 个每月下载
用于 音高检测器
37KB
638 行
fitting-rs
Rust 的曲线拟合库
更新
查看 CHANGELOG.md
许可证
本项目采用 MIT 许可证。
lib.rs
:
此库提供了 fitting::Gaussian
,它表示高斯函数
详细信息
使用 Gaussian::new
获取表示高斯函数的结构体。
use fitting::Gaussian;
let gaussian = Gaussian::new(5., 3., 1.);
let x = 5.;
let y = gaussian.value(x);
assert_eq!(&y, gaussian.a());
使用 Gaussian::value
和 Gaussian::values
获取函数的值。
use fitting::Gaussian;
let gaussian = Gaussian::new(5., 3., 1.);
let x = 5.;
let y = gaussian.value(x);
assert_eq!(&y, gaussian.a());
使用 Gaussian::fit
将数组拟合到高斯函数。
use fitting::approx::assert_abs_diff_eq;
use fitting::Gaussian;
use fitting::ndarray::{array, Array, Array1};
let gaussian = Gaussian::new(5., 3., 1.);
let x_vec: Array1<f64> = Array::range(1., 10., 1.);
let y_vec: Array1<f64> = gaussian.values(x_vec.clone());
let estimated = Gaussian::fit(x_vec, y_vec).unwrap();
assert_abs_diff_eq!(gaussian, estimated, epsilon = 1e-9);
依赖关系
~1.7–2.4MB
~49K SLoC