0

let's take this example:

we use X and Y data corresponding to the known polynomial f (x) = 0.25 - x + x2. Using POLY_FIT to compute a second degree polynomial fit returns the exact coefficients (to within machine accuracy).

; Define an 11-element vector of independent variable data:
X = [0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0]
; Define an 11-element vector of dependent variable data:
Y = [0.25, 0.16, 0.09, 0.04, 0.01, 0.00, 0.01, 0.04, 0.09, $
   0.16, 0.25]
; Define a vector of measurement errors: 
measure_errors = REPLICATE(0.01, 11)
; Compute the second degree polynomial fit to the data:
result = POLY_FIT(X, Y, 2, MEASURE_ERRORS=measure_errors, $
   SIGMA=sigma)
; Print the coefficients:
PRINT, 'Coefficients: ', result
PRINT, 'Standard errors: ', sigma

this example prints,

Coefficients:    0.250000    -1.00000    1.00000

Standard errors:    0.00761853    0.0354459    0.0341395

that works as expected, but let say I already know the coefficient 0.25, how can I pass to POLY_FIT that coefficient ? or maybe I have to use some other FIT function ?


source: http://www.exelisvis.com/docs/POLY_FIT.html

veda905
  • 782
  • 2
  • 12
  • 32
The Unholy Metal Machine
  • 1,093
  • 2
  • 17
  • 36

1 Answers1

1

Have you looked at MPFIT? It has keywords to pass information about the parameters. Docs.

mgalloy
  • 2,356
  • 1
  • 12
  • 10