簡體   English   中英

計算曲線內的面積

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM