मैं पाइथन में एक प्रोग्राम लिख रहा हूं जो कुछ दिए गए अनुनाद डेटा में गॉसियन और लोरेंटेज आकार को फिट करेगा। मैंने मूल रूप से scipy.optimize.leastsq
का उपयोग शुरू किया लेकिन कॉन्वर्स मैट्रिक्स से अनुकूलित पैरामीटर में त्रुटियों को पुनर्प्राप्त करने में कठिनाइयों के बाद optimize.curve_fit
का उपयोग करने के लिए बदल दिया।scipy.optimize.curve_fit का उपयोग कर अतिरिक्त तर्क पारित करना?
मैं एक समारोह को परिभाषित किया है गाऊसी और Lorentzian की राशि फिट करने के लिए:
def mix(x,*p):
ng = numg
p1 = p[:3*ng]
p2 = p[3*ng:]
a = sumarray(gaussian(x,p1),lorentzian(x,p2))
return a
जहां p
फिट मापदंडों पर प्रारंभिक अनुमान की एक सरणी है।
leastsq,covar = opt.curve_fit(mix,energy,intensity,inputtot)
पल numg
(गाऊसी आकार की संख्या) पर एक वैश्विक चर है: यहाँ उदाहरण है जहां यह curve_fit
का उपयोग कर कहा जाता है। क्या कोई तरीका है कि इसे curve_fit
में अतिरिक्त तर्क के रूप में शामिल किया जा सकता है, जैसा कि leastsq
के साथ किया जा सकता है?
धन्यवाद इतना! पूरी तरह से काम किया –