LinearLSQFitter

class astropy.modeling.fitting.LinearLSQFitter[source]

Bases: object

A class performing a linear least square fitting.

Uses numpy.linalg.lstsq to do the fitting. Given a model and data, fits the model to the data and changes the model’s parameters. Keeps a dictionary of auxiliary fitting information.

Notes

Note that currently LinearLSQFitter does not support compound models.

Attributes Summary

supported_constraints
supports_masked_input

Methods Summary

__call__(self, model, x, y[, z, weights, rcond]) Fit data to this model.

Attributes Documentation

supported_constraints = ['fixed']
supports_masked_input = True

Methods Documentation

__call__(self, model, x, y, z=None, weights=None, rcond=None)[source]

Fit data to this model.

Parameters:
model : FittableModel

model to fit to x, y, z

x : array

Input coordinates

y : array_like

Input coordinates

z : array_like, optional

Input coordinates. If the dependent (y or z) co-ordinate values are provided as a numpy.ma.MaskedArray, any masked points are ignored when fitting. Note that model set fitting is significantly slower when there are masked points (not just an empty mask), as the matrix equation has to be solved for each model separately when their co-ordinate grids differ.

weights : array, optional

Weights for fitting. For data with Gaussian uncertainties, the weights should be 1/sigma.

rcond : float, optional

Cut-off ratio for small singular values of a. Singular values are set to zero if they are smaller than rcond times the largest singular value of a.

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.

Returns:
model_copy : FittableModel

a copy of the input model with parameters set by the fitter