avatar
q*z
1
x 和 y 都已经是数值了,想算一个定积分的值。试了一下quad,这个用于函数的,用
不起来。不知道还有什么可以算,谢谢!
avatar
r*y
2
最简单的就是composite trapezoid rule啊,用matlab一行搞定
integral = 0.5 * sum((y(1:end-1) + y(2:end)) .* diff(x))
上底加下底乘高除二,直观明了,管你x是不是equal spacing都适用.虽然
讲运算速度不是最优的,写起来最简单,也最便于检查。
I assume your values in x-vector is monotonically increasing

要是x equal spacing, 更简单了
dx = x(2)-x(1);
integral = (sum(y(2:end-1)) + 0.5 * y(1) + 0.5 * y(end) ) * h

【在 q***z 的大作中提到】
: x 和 y 都已经是数值了,想算一个定积分的值。试了一下quad,这个用于函数的,用
: 不起来。不知道还有什么可以算,谢谢!

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。