1

その形状に寄与している n 個の曲線を持つ曲線があるとしましょう。NMR ピークを扱う私の基本的な例では、3 つのピークが定義されています。

NMR ピーク適合

ここでは、これら 3 つのピークを一度にフィッティングするために次の方法を使用しました。

def lor_3(x, R1, F1, R2, F2, R3, F3):
return (R1) / (R1**2 + 4 * np.pi**2 * (x-F1)**2) +\
    (R2) / (R2**2 + 4 * np.pi**2 * (x-F2)**2) +\
    (R3) / (R3**2 + 4 * np.pi**2 * (x-F3)**2)

popt, pcov = optimize.curve_fit(lor_3, X, y, p0=[11, 750, 5.5, 800, 11, 850])

この種のピークにうまく適合するコード。ただし、より複雑なケースがある場合:

NMRロットピーク

その後、状況はそれほど簡単ではありません。ケースに応じて、1、2、3、6、または合計曲線に寄与する任意のピークを使用して、多くの関数を定義する必要があります。

scipy.optimize.curve_fit または他の Python ツールを使用して N - 曲線の適合を実行する最適な方法はありますか?

ありがとう!

4

1 に答える 1