数值分析课程设计Word格式文档下载.docx

上传人:b****5 文档编号:20057537 上传时间:2023-01-16 格式:DOCX 页数:11 大小:169.77KB
下载 相关 举报
数值分析课程设计Word格式文档下载.docx_第1页
第1页 / 共11页
数值分析课程设计Word格式文档下载.docx_第2页
第2页 / 共11页
数值分析课程设计Word格式文档下载.docx_第3页
第3页 / 共11页
数值分析课程设计Word格式文档下载.docx_第4页
第4页 / 共11页
数值分析课程设计Word格式文档下载.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

数值分析课程设计Word格式文档下载.docx

《数值分析课程设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数值分析课程设计Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。

数值分析课程设计Word格式文档下载.docx

(1)用几个低阶的Newton-Cotes公式计算积分

的近似值,自己设置不同精度要求,对结果进行比较分析。

(2)用Romberg积分法计算积分

的近似值,自己设置不同精度要求,对结果进行比较分析;

(1)的结果进行比较分析,谈谈你的体会。

①Cotes公式积分计算MatLab代码如下:

functions=cotes(f,a,b,n)

%f:

Ò

ª

Ç

ó

º

¯

Ê

ý

%a,b:

ø

¼

ä

%n:

µ

È

·

Ö

÷

Ó

Ã

¸

ñ

½

£

formatlong%É

è

¾

«

symst

h=(b-a)/n;

Æ

Ë

ã

²

³

¤

C=zeros(1,n+1);

Newton-CotesÏ

j=1;

fork=0:

n

d=1;

J=((-1)^(n-k))/(n*prod(1:

k)*prod(1:

n-k));

fori=0:

ifi~=k

d=d*(t-i);

end

C(j)=J*int(d,0,n);

j=j+1;

¨

»

s=0;

s=s+C(j)*feval(f,a+k*h);

j=j+1;

s=s*(b-a);

ö

á

¹

û

%f=inline('

exp(-x.^2)'

);

%a=0;

b=1;

n=4;

%cotes(f,a,b,n)

运行结果如下图窗口截图:

流程图如下:

②辛普森(Simpson)积分公式求解MatLab代码如下:

functions=simpson(f,a,b,n)

h=(b-a)/(2*n);

s1=0;

s2=0;

fork=1:

x=a+h*(2*k-1);

s1=s1+feval(f,x);

(n-1)

x=a+h*2*k;

s2=s2+feval(f,x);

s=h*(feval(f,a)+feval(f,b)+4*s1+2*s2)/3;

symsx

f=exp(-x.^2);

%simpson(f,0,1,4)

③梯形公式求解MatLab代码如下:

functions=trap(f,a,b,n)

x=a+h*k;

s=s+feval(f,x);

s=h*(feval(f,a)+feval(f,b))/2+h*s;

%trap(f,a,b,4)

龙贝格(Romberg)计算方法MatLab代码如下:

%Romberg»

¡

®

exp(-x.^2)¡

fprintf('

Ï

Â

æ

RombergË

Ä

´

ü

â

¡

\n'

ë

Î

f=input('

±

í

ï

:

'

a=input('

Þ

b=input('

É

epsilon=input('

eps:

Á

¿

õ

h=b-a

k=1

T(1,1)=(h/2)*(subs(f,a)+subs(f,b))

ú

Ì

.

while

(1)

T(k+1,1)=0.5*(T(k,1)+h*sum(subs(f,a+(2*[1:

(2^(k-1))]-1)*h/2)))

form=1:

k

T(k-m+1,m+1)=(4^m*T(k-m+2,m)-T(k-m+1,m))/(4^m-1)

end

ifabs(T(1,k+1)-T(1,k))<

epsilon

break;

else

h=h/2

k=k+1

%9.8f¡

T(1,k+1))

体会和感想:

在实验中体会到编写程序需要仔细,熟悉matlab的使用以及matlab程序设计,熟悉并掌握复化辛普森公式的原理以及所设计的程序,以及龙贝格方法的原理以及所设计的程序。

根据牛顿柯斯特求积分的原理将所求函数的积分区间分为多个小的积分区间,先求出每个小积分区间上的函数值,然后再将每个小区间上的求积结果加起来就是我们所要求的总函数的积分值,当函数区间所分的小区间的个数越多的时候总函数所计算出来的结果就精确,其原因就是所分的区间数越多,计算时每个小区所带来的误差就越小,当将总的积分值加起来的时候所带来的总的误差也就越小,所以最后的结果的精度越高,而用龙贝格求积和牛顿柯斯特也一样是要将总区间分为很多小的相等的区间,只是他们所用的计算原理不一样,当用此方法求积分时,所设的误差限越小,所求得的积分值就越是精确。

理论基础:

(参看手写附件)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1