MATLAB 利用复合梯形公式求解积分

如题所述

可以利用matlab的trapz函数命令
x=0:0.00001:1;%x用来储存积分点
y=(x+1).*sin(x);%y用来求解积分点x处的函数值
I=trapz(x,y)
I
=

0.7608663730793
验证该问题的解析解
syms
x
y=(x+1)*sin(x);%被积函数表达式
II=int(y,0,1)
II
=
sin(1)
-
2*cos(1)
+
1
%II即为该被积函数的解析解
II_E=eval(II)
II_E
=

0.760866373071617
%II的数值解
%可以看出梯形求积公式在步长等于0.00001的情况下,数值积分的解与解析解的数值能达到小数点后11位保持一致
温馨提示:答案为网友推荐,仅供参考