几种常用数值积分方法的比较(7)

2019-06-05 12:01

贵州师范学院毕业论文(设计)

图 1.1

图 1.2

19

贵州师范学院毕业论文(设计)

图1.3

2 复化梯形求积公式的MATLAB实现

通过f(x)的n?1个等步长节点逼近积分

其中,xk?a?kh,x0?a, 程序二:

function s=trapr1(f,a,b,n) % f是被积函数;

% a,b分别为积分的上下限; % n是子区间的个数; % s是梯形总面积;

20

贵州师范学院毕业论文(设计)

h=(b-a)/n; s=0; for k=1:(n-1) x=a+h*k; s=s+feval('f',x); end format long

s=h*(feval('f',a)+feval('f',b))/2+h*s; 先用M文件定义一个名为f.m的函数:

function y=f(x) if x==0 y=1;

else

y=sin(x)/x;

end

若取子区间的个数

在MATLAB命令窗口中输入

>> trapr1('f',0,1,8) 回车得到 如图2.1

21

贵州师范学院毕业论文(设计)

图2.1

3 复化Simpson求积公式的MATLAB实现 程序三:

function s=simpr1(f,a,b,n) % f是被积函数;

% a,b分别为积分的上下限; % n是子区间的个数;

% s是梯形总面积,即所求积分数值; h=(b-a)/(2*n); s1=0; s2=0; for k=1:n

x=a+h*(2*k-1); s1=s1+feval('f',x);

end

22

贵州师范学院毕业论文(设计)

for k=1:(n-1) x=a+h*2*k; s2=s2+feval('f',x);

end

s=h*(feval('f',a)+feval('f',b)+4*s1+2*s2)/3; 先用M文件定义一个名为f.m的函数:

function y=f(x) if x==0 y=1;

else

y=sin(x)/x;

end 若取子区间个数

在MATLAB命令窗口中输入

>> simpr1('f',0,1,8) 回车得到 如图3.1

图3.1

23


几种常用数值积分方法的比较(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:国务院在京各部门因解决干部夫妻两地分居从京外调(迁)入人员审批

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: