On errors calculated by curve-fitting routines [message #59078] |
Wed, 05 March 2008 19:08  |
Gernot Hassenpflug
Messages: 18 Registered: April 2001
|
Junior Member |
|
|
Hello all,
I'm using IDL 6.1, as well as Maple 11, Mathematica 6.0, Matlab 7.5
and the statistical language R. My goal is to calculate the covariance
matrix of parameters of a second order polynomial curve fit. To
clarify: I refer to this as linear fitting, since the parameters are
linear; however, many books, papers and routines refer to this as
non-linear fitting.
Matlab and Mathematica do not have built-in functions to do this
(Mathematica has an add-on module which my institute has not bought)
so I am comparing the parameter covariance matrix from IDL, Maple, R
and my own programmed output learned from section 15.4 of Numerical
Recipes, 2nd edition, and a paper by Keith Burrell in the American
Journal of Physics Vol. 58, No. 2, pp 160--164 (1990) titled "Error
analysis for parameters determined in nonlinear least-square fits",
both describing the same method which uses the variances of the
dependent data combined with the derivatives of the fitting function
wrt the fitted parameters; i.e., the dependent data values themselves
are not used, apparently.
I find that in IDL the routines POLY_FIT, LMFIT and CURVEFIT can all
calculate the parameter covariance matrix and it is documented that
LMFIT uses the method of Burrell and Numerical Recipes. I cannot tell
what method the other two routines use.
Maple seems to use a different method apparently described on pp
197--198 of David M. Himmelblau's 1970 book titled "Process Analysis
by Statistical Methods", which I have ordered used but not yet
received.
I am hoping that contributors to this list could give their comments
and opinions on what method of parameter variance and covariance is
most sound, and which routines are therefore preferred for a
polynomial fitting case (possibly over-determined).
Many thanks in advance,
Gernot Hassenpflug
--
BOFH excuse #72:
Satan did it
|
|
|