numra-fit
Curve fitting for the Numra workspace — nonlinear least squares (Levenberg-Marquardt), weighted fits, polynomial fit and evaluation.
Fit arbitrary y = f(x, params) models against data using numra-optim's Levenberg-Marquardt under the hood, with optional analytical Jacobians (paired naturally with numra-autodiff) and weighted residuals. Polynomial fits use numra-linalg's SVD for stability on ill-conditioned Vandermonde matrices.
Example
use curve_fit;
// Fit y = a · exp(-b · x) to noisy decay data
let x = vec!;
let y = vec!;
let r = curve_fit.unwrap;
assert!;
assert!;
What's in this crate
curve_fit— nonlinear least squares fory = f(x, params)curve_fit_weighted— weighted residuals for heteroscedastic datacurve_fit_with_jacobian— supply an analytical Jacobian for faster, more accurate fitspolyfit— degree-npolynomial regressionpolyval— evaluate a polynomial at given pointsFitOptions/FitResult— configuration and post-fit diagnostics (parameters, R², residuals)FitError— fit-failure reporting
Composes with
numra-optim— Levenberg-Marquardt backendnumra-autodiff— analytical Jacobians for residual functionsnumra-linalg— SVD-based polynomial regressionnumra-stats— post-fit residual statistics and goodness-of-fit checksnumra-ocp— alternative path for fitting ODE-model parameters when the residual involves an ODE integration
See interop workflows for the verified autodiff → optim → curve-fit workflow.
Install
[]
= "0.1"
Or via the umbrella crate:
[]
= "0.1"
Documentation
- API: https://docs.rs/numra-fit
- Book: Curve fitting
- Source: https://github.com/moussaoutlook/numra-rs/tree/main/numra-fit
License
Numra Academic & Research License (Non-Commercial). Academic and research use is free; commercial use requires a separate license — contact contact@spectralautomata.com. See LICENSE.