我一直在試圖找出藍峯的全峯半峯值(FWHM)(見圖)。綠色峯值和品紅色峯值組合成藍色峯值。我一直在使用以下等式來找到綠色和品紅色峯的FWHM:fwhm = 2*np.sqrt(2*(math.log(2)))*sd
其中sd =標準偏差。我創建了綠色和洋紅色的峯值,我知道標準偏差,這就是爲什麼我可以使用該公式。找到一個峯的半峯全寬
我用下面的代碼創建的綠色和紅色峯:
def make_norm_dist(self, x, mean, sd):
import numpy as np
norm = []
for i in range(x.size):
norm += [1.0/(sd*np.sqrt(2*np.pi))*np.exp(-(x[i] - mean)**2/(2*sd**2))]
return np.array(norm)
如果我不知道沒藍峯由兩個峯,我只是在我的數據有藍峯,怎麼會我找到了FWHM?
我一直在使用這個代碼,以找到頂部峯:
peak_top = 0.0e-1000
for i in x_axis:
if i > peak_top:
peak_top = i
我可以除以2 peak_top
找到一半的高度,然後試圖找到對應的y值半高,但如果沒有完全匹配半高的x值,我會遇到麻煩。
我很確定有一個更優雅的解決方案,我正在嘗試。
爲什麼不計算藍色峯值的標準偏差,並使用將FWHM與標準偏差相關的方程? –