积分一个函数得到一个函数
Integrating a function to get a function
我有一个接受字典和 returns 加速度 a
的函数。
我在该字典中放入了某个参数的数据列表(我们称之为 alpha
),该函数返回了一个包含 100 个结果的数组(相对于 alpha)。
现在我想一个一个地整合这些值,让我们说一个关于参数 alpha
的数组速度 v
(这样我就可以在 matplotlib 中绘制这些值)。
编辑:
实际上我有一个机械问题。梯子靠墙放置,由于 friction coefficient
太小,它开始滑动。
所以我写了一个函数,其中 returns 那个梯子的 acceleration
对于任何 angle between 30° and 90°
(30 是起始角度,90 是梯子在地面上的时候)。
无论如何,我已经计算出 acceleration
与角度 alpha
的关系。我将数据存储在数组 a
中。
我试过 scipy.integrate.simps()
但那个方法 returns 最终速度 v
。我也试过 scipy.integrate.quad()
但 returns 结果相同。
我想生成一个速度数组 v
,它将包含每个角度的值,就像在加速度数组中一样 - a
听起来您想对一组值执行累积求积。那样的话,scipy.integrate.cumtrapz
应该会如你所愿。这将使用提供的数组上的梯形规则执行累积积分,从而产生与输入大小相同的输出数组。如果它是 non-zero.
,您可以通过单独的参数控制初始值
我有一个接受字典和 returns 加速度 a
的函数。
我在该字典中放入了某个参数的数据列表(我们称之为 alpha
),该函数返回了一个包含 100 个结果的数组(相对于 alpha)。
现在我想一个一个地整合这些值,让我们说一个关于参数 alpha
的数组速度 v
(这样我就可以在 matplotlib 中绘制这些值)。
编辑:
实际上我有一个机械问题。梯子靠墙放置,由于 friction coefficient
太小,它开始滑动。
所以我写了一个函数,其中 returns 那个梯子的 acceleration
对于任何 angle between 30° and 90°
(30 是起始角度,90 是梯子在地面上的时候)。
无论如何,我已经计算出 acceleration
与角度 alpha
的关系。我将数据存储在数组 a
中。
我试过 scipy.integrate.simps()
但那个方法 returns 最终速度 v
。我也试过 scipy.integrate.quad()
但 returns 结果相同。
我想生成一个速度数组 v
,它将包含每个角度的值,就像在加速度数组中一样 - a
听起来您想对一组值执行累积求积。那样的话,scipy.integrate.cumtrapz
应该会如你所愿。这将使用提供的数组上的梯形规则执行累积积分,从而产生与输入大小相同的输出数组。如果它是 non-zero.