[英]Calculating area within a curve
我正在測量通過樣品的電流,因為它改變了樣品上的電壓。 結果是這樣的電流電壓 plot
https://content.sciendo.com/view/journals/joeb/9/1/graphic/j_joeb-2018-0023_fig_004.jpg
我想計算前半周期曲線內的面積(第一象限曲線的一部分)。 不確定在 python 中執行此操作的最佳方法是什么。 我試圖編寫一些代碼來查找具有相同 x 坐標的對,並從頂部 y 值中減去底部 y 值,並迭代第一象限中的所有點。
def LobeAreaByPeriod(all_periods_I):
print('Starting Lobe area by period')
LobeArea = []
for period in all_periods_I:
halfperiod = round(len(period)/2)
duration = round(halfperiod/2)
area = 0
for i in range(duration):
area += (period[i] - period[halfperiod - i])
LobeArea.append(area)
return LobeArea
我不確定這對會以這種方式直接位於彼此上方,而且我發現很難檢查答案是否正確。 關於如何做到這一點的任何提示?
要計算曲線內的面積,您將不得不進行某種近似。 根據您對精度的需要,您選擇的方法會有所不同。 我喜歡梯形規則。 Numpy 有一個非常好的實現。
np.trapz
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.