我正在尝试从 np.array(值列表)获取积分值。不是函数下的表面,而是值。我有加速度值并且想要获得速度值。 假设我有一个像这样的 arry:
a_x = np.array([111.2, 323.2, 123.3, 99.38, 65.23, -0.19, -34.67])
我尝试从该数组中获取积分值以获取速度值。
如果我使用 simps、quad、trapz,我会得到一个数字(表面)。
那么如何整合 np.array 值并获得可以存储在列表中的整合值?
你无法按照你想要的方式去做,因为你不了解其背后的流程。如果给定加速度,则使用以下等式:
你只能求不定积分,你知道加速度,但你不知道起始条件,因此你的解不能为空。
由于每个问题的解决方案是:“计算给定加速度的速度”,那么解决方案将是 v(t)=a(t)dt+c 的积分,其中加速度是恒定的,因此它不会依赖 t,它可以写成 v(t)=at+c,但是我们仍然不知道加速持续了多长时间以及起始条件是什么。
但是回答有关获取可以存储在列表中的值的问题 - 您可以通过索引 np.array 的值来做到这一点:
import numpy as np
a_x = np.array([111.2,323.2,123.3])
#Gets first value
print(a_x[0])
如果我使用 simps、quad、trapz,我会得到一个数字(表面)。
因为quad、simps或trapz是对给定点使用的方法,它们用相应的方法返回与给定点的积分值,例如:
numpy.trapz(y, x=None, dx=1.0, axis=- 1)
如果未指定 x (如您的情况),则假定您要使用梯形来估计给定点的值 y 下的场,其中 x 等于 x 的分布。它必须给出一个值。