要用matlab对一组离散数据(5000个)进行定积分求值,积分范围是1000到2000,数据组成的图像如下。

上面是数据组成的图像大致如上。求大神!该用什么命令进行编程... 上面是数据组成的图像大致如上。求大神!该用什么命令进行编程 展开
 我来答
百川一归大海
2014-03-02 · TA获得超过1547个赞
知道小有建树答主
回答量:4318
采纳率:55%
帮助的人:1020万
展开全部
clc;clear
%复化cotes公式求积分值
%[a,b]为积分区间
%n是等分区间份数

load('C:\Users\baiyanglong\Desktop\n.mat')
a=1000;b=1500;
C=0;
h=4;
n=(b-a)/h;
for i=1:(n-1)
    x0=a+i*h;
    C=C+14*nlp(x0);
end
for k=0:(n-1)
   x0=a+h*k;
   s=32*nlp(x0+h*1/4)+12*nlp(x0+h*1/2)+32*nlp(x0+h*3/4);
   C=C+s;
end
C=C+7*(nlp(a)+nlp(b));
C=C*h/90;
C=double(C);

采用复化cotes公式求积分值
结果积分结果为C=1.7581参考资料查数值分析教程。

其实可以简略试算一下根据梯形公式

sum(nlp(1000:1500))=1.7753

梯形公式误差比较大

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式