编程时遇到的问题,以及回答

前期用到了一些函数,但是忘记了整理,从现在开始整理。

1.cumtrapz:用这个函数进行离散数据积分是可行的,但是使用trapz求积分却不行(这里我针对trapz定义了区间,但是出来的线段不对劲),是这两个函数的区别导致的错误吗?还是我trapz使用错误?
答:trapz只有最终值,而cumtrapz是每多一个就有一个的结果,

2.对于数值积分的总结:(摘自mathwork):
trapz:梯形数值积分
https://ww2.mathworks.cn/help/matlab/ref/trapz.html#d120e1202519
Q = trapz(Y) 通过梯形法计算 Y 的近似积分(采用单位间距)。Y 的大小确定求积分所沿用的维度:
如果 Y 为向量,则 trapz(Y) 是 Y 的近似积分。
如果 Y 为矩阵,则 trapz(Y) 对每列求积分并返回积分值的行向量。
如果 Y 为多维数组,则 trapz(Y) 对其大小不等于 1 的第一个维度求积分。该维度的大小变为 1,而其他维度的大小保持不变。
Q = trapz(X,Y) 根据 X 指定的坐标或标量间距对 Y 进行积分。
如果 X 是坐标向量,则 length(X) 必须等于 Y 的大小不等于 1 的第一个维度的大小。
如果 X 是标量间距,则 trapz(X,Y) 等于 X*trapz(Y)。
Q = trapz(___,dim) 使用以前的任何语法沿维度 dim 求积分。必须指定 Y,也可以指定 X。如果指定 X,则它可以是长度等于 size(Y,dim) 的标量或向量。例如,如果 Y 为矩阵,则 trapz(X,Y,2) 对 Y 的每行求积分。
3.cumtrapz:
https://ww2.mathworks.cn/help/matlab/ref/cumtrapz.html

Q = cumtrapz(Y) 通过梯形法按单位间距计算 Y 的近似累积积分。Y 的大小确定求积分所沿用的维度:

如果 Y 是向量,则 cumtrapz(Y) 是 Y 的累积积分。

如果 Y 是矩阵,则 cumtrapz(Y) 是每一列的累积积分。

如果 Y 是多维数组,则 cumtrapz(Y) 对大小不等于 1 的第一个维度求积分。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值