import numpy as np
import matplotlib.pyplot as plt
from astropy.modeling import models
from spectractor.tools import fit_moffat1d_outlier_removal
X = np.arange(100)
PSF = models.Moffat1D()
p = (50, 50, 5, 2)
Y = PSF.evaluate(X, *p)
guess = (45, 48, 4, 2)
bounds = ((1, 10, 1, 1), (100, 90, 10, 10))
fit = fit_moffat1d_outlier_removal(X, Y, guess=guess, bounds=bounds, niter=3)
plt.plot(X, Y-fit(X))
plt.show()