ml-levenberg-marquardt
Version:
Curve fitting method in javascript
18 lines • 1.05 kB
TypeScript
import { Matrix } from 'ml-matrix';
import type { Data2D, ParameterizedFunction } from './types.ts';
/**
* Iteration for Levenberg-Marquardt
*
* @param data - Array of points to fit in the format [x1, x2, ... ], [y1, y2, ... ]
* @param params - Array of previous parameter values
* @param damping - Levenberg-Marquardt parameter
* @param gradientDifference - The step size to approximate the jacobian matrix
* @param centralDifference - If true the jacobian matrix is approximated by central differences otherwise by forward differences
* @param parameterizedFunction - The parameters and returns a function with the independent variable as a parameter
* @param weights - scale the gradient and residual error by weights
*/
export default function step(data: Data2D, params: number[], damping: number, gradientDifference: number[], parameterizedFunction: ParameterizedFunction, centralDifference: boolean, weights?: ArrayLike<number>): {
perturbations: Matrix;
jacobianWeightResidualError: Matrix;
};
//# sourceMappingURL=step.d.ts.map