Python'da, belirli bir rezonans verisine Gauss ve Lorentzian şekillerine uyan bir program yazıyorum. Orijinal olarak scipy.optimize.leastsq
kullanmaya başladım, ancak kovaryans matrisinden optimize edilmiş parametrelerdeki hataları almayla ilgili zorluklar yaşadıktan sonra optimize.curve_fit
'u kullanmaya başladım.Scipy.optimize.curve_fit kullanarak ek argümanlar iletiliyor mu?
I Gauss ve Lorentz bir miktar uygun bir fonksiyon tanımladık: p
uygun parametreleri başlangıç tahminleri bir dizi olan
def mix(x,*p):
ng = numg
p1 = p[:3*ng]
p2 = p[3*ng:]
a = sumarray(gaussian(x,p1),lorentzian(x,p2))
return a
. Şu numg
(Gauss şekillerin sayısı) At
leastsq,covar = opt.curve_fit(mix,energy,intensity,inputtot)
bir genel değişken olduğu: Burada curve_fit
kullanılarak denir örneğidir. leastsq
ile yapılabildiği gibi, bunun yerine curve_fit
'a ek bir argüman olarak dahil edilebilecek herhangi bir yolu var mı?
Çok teşekkürler! Mükemmel çalıştı –