p, cov = curve_fit(f, xdata, ydata, p0)
Sobitab funktsiooni f
läbi andmepunktide, mis on antud vektoritega
xdata
ja ydata
. Funktsioon f
peab olema eelnevalt
defineeritud kujul f(x, a, b, ...)
, kus esimene argument on
sõltumatu muutuja ja ülejäänud argumendid on vabad parameetrid. Optimeerimise
käigus varieeritakse vabade parameetrite väärtuseid, kuni hälvete ruutude
summa $$\sum_i\left[y_i-f(x_i, a, b, \ldots)\right]^2$$ saavutab miinimumi.
Parameetrite alglähendid antakse vektoriga p0
. curve_fit
tagastab nii parameetrite optimeeritud väärtused (p
) kui ka
kovariatsioonimaatriksi (cov
). Viimase diagonaalelementide ruutjuured
np.sqrt(np.diag(cov))
väljendavad parameetrite määramatuseid (standardhälbeid).
Funktsioon f
peab olema
vektoriseeritud kujul, nii et sõltumatu muutuja $x$ väärtused saab anda vektorina
ja funktsioon tagastab arvutatud $y$ väärtused samuti vektorina (seega tuleb
kasutada funktsoone moodulist numpy
, mitte math
).
sigma |
Vektor, mis annab $y$ väärtuste määramatused (standardhälbed). Sel juhul andmepunkti $(x_i, y_i)$ võetakse arvesse kaaluga $1/\sigma_i^2$. |