LINFIT is based upon the “fit” and “gammq” routines from Numerical Recipes in C (Second Edition). See section 15.2 of Numerical Recipes in C (Second Edition) for details.
This routine is written in the IDL language. Its source code can be found in the file linfit.pro in the lib subdirectory of the IDL distribution.
; Define two n-element vectors of paired data:
X = [-3.20, 4.49, -1.66, 0.64, -2.43, -0.89, -0.12, 1.41, $
2.95, 2.18, 3.72, 5.26]
Y = [-7.14, -1.30, -4.26, -1.90, -6.19, -3.98, -2.87, -1.66, $
-0.78, -2.61, 0.31, 1.74]
; Define an n-element vector of Poisson measurement errors:
result = LINFIT(X, Y, MEASURE_ERRORS=measure_errors)
The result is a two-element vector containing the linear model parameters [A, B].
An n-element vector containing the independent variable values. X may be of type integer, floating point, or double-precision floating-point.
An n-element integer, single-, or double-precision floating-point vector.
Set this keyword to a named variable that will contain the value of the unreduced chi-square goodness-of-fit statistic.
Set this keyword to a named variable that will contain the covariance matrix of the coefficients.
Note: The COVAR matrix depends only upon the independent variable X and (optionally) the MEASURE_ERRORS. The values do not depend upon Y. See section 15.4 of Numerical Recipes in C (Second Edition) for details.
Set this keyword to force the computation to be done in double-precision arithmetic.
Set this keyword to a vector containing standard measurement errors for each point Y[i]. This vector must be the same length as X and Y. When MEASURE_ERRORS is set, the chi-square error statistic is computed as
where σ represents the measurement error.
Note: For Gaussian errors (e.g., instrumental uncertainties), MEASURE_ERRORS should be set to the standard deviations of each point in Y. For Poisson or statistical weighting, MEASURE_ERRORS should be set to SQRT(ABS(Y)).
Set this keyword to a named variable that will contain the probability that the computed fit would have a value of CHISQ or greater. If PROB is greater than 0.1, the model parameters are “believable”. If PROB is less than 0.1, the accuracy of the model parameters is questionable.
Set this keyword to a named variable that will contain the 1-sigma uncertainty estimates for the returned parameters
Note: If MEASURE_ERRORS is omitted, then you are assuming that a straight line is the correct model for your data, and therefore, no independent goodness-of-fit test is possible. In this case, the values returned in SIGMA are multiplied by
SQRT(CHISQ/(N–M)), where N is the number of points in X, and M is the number of coefficients. See section 15.2 of Numerical Recipes in C (Second Edition) for details.
Set this keyword equal to a named variable that will contain the vector of calculated Y values.
Deprecated the SDEV keyword.
This page has no comments yet. Be the first one!