pars.extend(np.zeros(len(pixs)))
pars = np.array(pars)

parinfo = []
for par in pars:
    parinfo.append({"fixed": 0, "value": par})

pl.ion()
y = Wavelength.beta_model(pars, pixs)

parinfo[0]["fixed"] = 1
parinfo[1]["fixed"] = 1
parinfo[2]["fixed"] = 1
parinfo[3]["fixed"] = 1
merit_fun = Fit.mpfit_residuals(Wavelength.beta_model)
lsf = Fit.mpfit_do(merit_fun, pixs, all_betas, parinfo)
parinfo = []
for param in lsf.params:
    parinfo.append({"fixed": 0, "value": param})
lsf = Fit.mpfit_do(merit_fun, pixs, all_betas, parinfo)
print lsf


pl.figure(2)
pl.clf()
pl.plot(all_pixs, all_betas, '.')
y = Wavelength.beta_model(lsf.params, pixs)
d = np.abs(np.diff(y))
rois = np.where(d>0.01)[0]
prev = 0
for roi in rois: