【问题标题】:Efficient integral function in MatlabMatlab中的高效积分函数
【发布时间】:2012-04-18 14:56:32
【问题描述】:

我有一个 a*x + b 形式的函数,我想将该函数从 0 集成到 t,其中 t 将重复设置为一个非常大(长度为 100000)向量的值。我在 for 循环中使用了 quad 函数,但计算向量中每个值的积分需要太多时间。在 Matlab 中是否有任何有效的方法来实现这一点?

【问题讨论】:

  • 这不是归结为计算向量的所有元素 t 的 1/2 * att + b*t 吗?

标签: matlab integral


【解决方案1】:

其实你不需要自己实现, 您可以使用“matlab 数值积分函数”进行搜索...

我首先想到的功能是;

Trapezoidal --> trapz(X,Y)

Cumulative Trapezoidal --> cumtrapz(X,Y)

Adaptive Lobatto Quadrature --> quadl

Adaptive Gauss-Kronrod Quadrature --> quadgk

Vectorized Quadrature --> quadv

【讨论】:

    【解决方案2】:

    cumtrapz();

    说真的CumTrapz

    它计算积分的梯形逼近。

    【讨论】:

      猜你喜欢
      • 2016-05-16
      • 2012-02-20
      • 1970-01-01
      • 2015-07-23
      • 1970-01-01
      • 1970-01-01
      • 2010-12-22
      • 1970-01-01
      • 2018-05-09
      相关资源
      最近更新 更多