逝者如斯,不舍昼夜

尘世中一个迷途小书童,读书太少,想得太多
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

MATLAB中trapz和cumtrapz函数

Posted on 2015-04-03 14:36  SteveWang  阅读(23172)  评论(0编辑  收藏  举报

  

  这两个函数都是MATLAB中的内置函数,是基于梯形法则的数值积分公式

  例如我们有函数y=x^3-2x-3,为了计算在[0,1]上的积分,可以这么做:

    

  其中x和y分别是自变量和对应的值,trapz其实就是trapezoidal(梯形的简写),cumtrapz函数和trapz函数使用方法类似,但是返回的结果不一样。前面的cum是cumulation的意思,也就是累积,相当于是不断地从第一个值累积到当前的结果。

 

  我们知道这个函数是可以直接使用经典积分理论计算的,精确值为 -15/4=-3.75,误差为0.016%,可积函数用这个并没有太大的意义,但是对于复杂的函数,使用起来就有用的多了。