numpy δ的导数

fnatzsnv  于 2023-01-30  发布在  其他
关注(0)|答案(1)|浏览(95)

我想用这个公式来计算E,但是我不确定用numpy.diff模块能不能得到结果,它只能导出4个点。

from numpy import diff

x = [395.33, 472.12, 560.45, 652.72, 732.55]
y = [0.17, 0.22, 0.28, 0.34, 0.41]
E = diff(y) / diff(x)

print(E)

输出:

[0.00065113 0.00067927 0.00065027 0.00087686]
af7jpaap

af7jpaap1#

期望仅在连续点之间的中间段上计算导数,因此具有比点的数目少一个的值。
您期望的内容不清楚,是否要计算gradient

import numpy as np

E = np.gradient(y, x)

输出:

array([0.00065113, 0.00066422, 0.00066508, 0.00077175, 0.00087686])

diffgradient之间的区别:

更复杂的示例:
观察绿色曲线如何精确地是每个段的导数(=斜率),而梯度更平滑(取决于前后的点)

相关问题