# LevMarLSQFitter¶

class astropy.modeling.fitting.LevMarLSQFitter[source]

Bases: object

Levenberg-Marquardt algorithm and least squares statistic.

Notes

The fit_info dictionary contains the values returned by scipy.optimize.leastsq for the most recent fit, including the values from the infodict dictionary it returns. See the scipy.optimize.leastsq documentation for details on the meaning of these values. Note that the x return value is not included (as it is instead the parameter values of the returned model).

Additionally, one additional element of fit_info is computed whenever a model is fit, with the key ‘param_cov’. The corresponding value is the covariance matrix of the parameters as a 2D numpy array. The order of the matrix elements matches the order of the parameters in the fitted model (i.e., the same order as model.param_names).

Attributes: fit_info : dict The scipy.optimize.leastsq result for the most recent fit (see notes).

Attributes Summary

 supported_constraints The constraint types supported by this fitter type.

Methods Summary

 __call__(model, x, y[, z, weights, maxiter, …]) Fit data to this model. objective_function(fps, *args) Function to minimize.

Attributes Documentation

supported_constraints = ['fixed', 'tied', 'bounds']

The constraint types supported by this fitter type.

Methods Documentation

__call__(model, x, y, z=None, weights=None, maxiter=100, acc=1e-07, epsilon=1.4901161193847656e-08, estimate_jacobian=False)[source]

Fit data to this model.

Parameters: model : FittableModel model to fit to x, y, z x : array input coordinates y : array input coordinates z : array (optional) input coordinates weights : array (optional) Weights for fitting. For data with Gaussian uncertainties, the weights should be 1/sigma. maxiter : int maximum number of iterations acc : float Relative error desired in the approximate solution epsilon : float A suitable step length for the forward-difference approximation of the Jacobian (if model.fjac=None). If epsfcn is less than the machine precision, it is assumed that the relative errors in the functions are of the order of the machine precision. estimate_jacobian : bool If False (default) and if the model has a fit_deriv method, it will be used. Otherwise the Jacobian will be estimated. If True, the Jacobian will be estimated in any case. equivalencies : list or None, optional and keyword-only argument List of additional equivalencies that are should be applied in case x, y and/or z have units. Default is None. model_copy : FittableModel a copy of the input model with parameters set by the fitter
objective_function(fps, *args)[source]

Function to minimize.

Parameters: fps : list parameters returned by the fitter args : list [model, [weights], [input coordinates]]