ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:99.91KB ,
资源ID:27668924      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27668924.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算方法综合实践.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算方法综合实践.docx

1、计算方法综合实践1 应用自己熟悉的算法语言编写程序,使之尽可能具有通用性。2 上机前充分准备,复习有关算法,写出计算步骤,反复检查,调试程序。(注:在练习本上写,不上交)3 完成计算后写出实验报告,内容包括:算法步骤叙述,变量说明,程序清单,输出计算结果,结构分析和小结等。(注:具体题目具体分析,并不是所有的题目的实验报告都包含上述内容!)4 独立完成,如有雷同,一律判为零分!5 上机期间不允许做其他任何与课程设计无关的事情,否则被发现一次扣10分,被发现三次判为不及格!非特殊情况,不能请假。旷课3个半天及以上者,直接判为不及格。一、基本技能训练1、误差分析实验 1.2 误差传播与算法稳定性实

2、验目的:体会稳定性在选择算法中的地位。误差扩张的算法是不稳定的,是我们所不期望的;误差衰减的算法是稳定的,是我们努力寻求的,这是贯穿本课程的目标。问题提出:考虑一个简单的由积分定义的序列显然。当时,而对于时,利用分部积分易得另一方面,我们有实验内容:由以上递推关系,我们可得到计算序列的两种方法。(I)(II)syms n In5 In6 In7;In5=vpa(exp(-1),5);In6=vpa(exp(-1),6);In7=vpa(exp(-1),7);fprintf(%.5f %.6f %.7fn,eval(In5),eval(In6),eval(In7);for n=2:10 In5=

3、vpa(1-n*In5),5); In6=vpa(1-n*In6),6); In7=vpa(1-n*In7),7); fprintf(%.5f %.6f %.7fn,eval(In5),eval(In6),eval(In7);end五位 六位 七位0.36788 0.367879 0.36787940.26424 0.264241 0.26424110.20728 0.207277 0.20727660.17089 0.170893 0.17089340.14553 0.145533 0.14553290.12680 0.126802 0.12680240.11238 0.112384 0.1

4、1238350.10093 0.100932 0.10093200.09161 0.091612 0.09161230.08388 0.083877 0.0838771syms nEn;En5=vpa(0,5);En6=vpa(0,6);En7=vpa(0,7);fprintf(%.5f %.6f %.7fn,eval(En5),eval(En6),eval(En7);for n=10:-1:2 En5=vpa(1-En5)/n),5); En6=vpa(1-En6)/n),6); En7=vpa(1-En7)/n),7); fprintf(%.5f %.6f %.7fn,eval(En5),

5、eval(En6),eval(En7);end五位 六位 七位0.00000 0.000000 0.00000000.10000 0.100000 0.10000000.10000 0.100000 0.10000000.11250 0.112500 0.11250000.12679 0.126786 0.12678570.14554 0.145536 0.14553570.17089 0.170893 0.17089290.20728 0.207277 0.20727680.26424 0.264241 0.26424110.36788 0.367879 0.3678795(1) 由所得数据

6、可以了解,两种算法随着n的增大,误差越来越大,而第二种算法随着n的减小,数据越来越精确,且三种有效数字结果大致相同,所以第二种更精确。(2) 算法一E1的误差e1,由于En=1-n*En-1,n=2,3,4.,通过推算可得误差=,n越大,其误差就越大,那么最后算出的结果是e1的n!倍;算法二的误差,由于,推倒可得误差=,比缩小了(N-n)!倍,则n减少,所以就越小。所以算法一越往后算,一步步的误差会使误差越大,而算法二由于是从后面递推回来,其误差会被缩小。所以算法二更优。(3) 算法一中,n增大,误差增大,算法二中,n减小,误差减小。所以当某一步发生误差 后随着n变大,算法一的误差越来越大,而

7、算法二由于是往回推,所以误差变小。(4) 通过以上可一推出,算法一随着n变大,容易使误差越来越大,而算法二会使误差变小,所以算法二更加稳定。2、求解非线性方程3、插值实验目的:掌握Lagrange插值法和Newton插值法问题提出:,已知的函数值表如下x00.10.20.30.40.50000.53980.57930.61790.7554用插值法求和的近似值。实验内容:(1)分别用Lagrange插值法和Newton插值法编程求解;(2)求出插值多项式系数,对比计算结果。拉格朗日差值function yh=lagrange(x,y,xh)ticn = length(x);m = length(

8、xh);x = x(:);y = y(:);xh = xh(:);yh = zeros(m,1); c1 = ones(1,n-1);c2 = ones(m,1);for i=1:n, xp = x(1:i-1 i+1:n); yh = yh + y(i) * prod(xh*c1-c2*xp)./(c2*(x(i)*c1-xp),2);endtoc x=0 0.1 0.2 0.3 0.4;y=0.5000 0.5398 0.5793 0.6179 0.7554;xh=0.13 0.36;lagrange(x,y,xh)时间已过 0.026678 秒。ans = 0.5537 0.6780多项

9、式为(5*xh - 1)*(5*xh)/2 - 1)*(10*xh - 1)*(10*xh)/3 - 1)/2 + (5793*xh*(5*xh - 2)*(10*xh - 1)*(10*xh - 3)/2000 - (6179*xh*(5*xh - 1/2)*(10*xh - 2)*(10*xh - 4)/3000 + (3777*xh*(5*xh - 1)*(10*xh - 3)*(10*xh)/3 - 1/3)/2000 - (2699*xh*(5*xh - 3/2)*(10*xh - 2)*(10*xh)/3 - 4/3)/500作图 x0=0 0.1 0.2 0.3 0.4;y0=0

10、.5000 0.5398 0.5793 0.6179 0.7554;xh=0:0.01:0.4;y=lagrange(x0,y0,xh);时间已过 0.000158 秒。 plot(xh,y);hold on;牛顿差值function f=Newton(x,y,x0,x1)ticsyms t;if(length(x)=length(y) n=length(x); c(1:n)=0.0;else disp(x和y的维数不相等!);return;endf=y(1);y1=0;l =1;for(i=1:n-1)for(j=i+1:n) y1(j)=(y(j)-y(i)/(x(j)-x(i);end

11、c(i)=y1(i+1); l=l*(t-x(i); f=f+c(i)*l; y=y1;endf=simplify(f);g=subs(f,t,x0)g1=subs(f,t,x1)A=zeros(n,n-1);A=y,A;for j=2:nfor i=j:n A(i,j)=(A(i,j-1)-A(i-1,j-1)/(x(i)-x(i+1-j);endenddisp(差商表为);disp(A);toc x0=0 0.1 0.2 0.3 0.4;y0=0.5000 0.5398 0.5793 0.6179 0.7554;Newton(x0,y0,0.13,0.36)g =2493419217219

12、56909228481/450359962737049600000000g1 =1192694200291039391741/175*41600000000差商表为 1.0e+04 * 0 0 0 0 0 0.0000 0.0004 0 0 0 -0.0000 -0.0004 -0.0041 0 0 -0.0000 -0.0001 0.0016 0.0190 0 0.0042 0.0419 0.2101 0.6948 1.6896时间已过 0.368255 秒。ans =(251*t4)/6 - (2269814212194733997*t3)/90071992547409920 + (124

13、74970967816329501*t2)/2702159776422297600 + (659777345409770407*t)/4503599627370496000 + 1/2作图 t=0:0.01:0.4; f=; f=(251.*t.4)./6.-(2269814212194733997.*t.3)./90071992547409920.+ (12474970967816329501.*t.2)./2702159776422297600.+(659777345409770407.*t)./4503599627370496000.+ 1/2; plot(t,f);hold on;两种

14、方法作图曲线为拉格朗日插值法时间复杂度为O(n),牛顿插值法时间复杂度为O(n2),实际上拉格朗日算法计算时间为 0.000158 , 牛顿算法计算时间 0.368255 。说明拉格朗日算法时间复杂度低。4、数值积分实验目的:掌握Romberg积分法实验内容:用Romberg积分法计算下列定积分:function R,y=Romberg(a,b,n)k=1;while 1 T=zeros(k+1,k+1); T(1,1)=1/2*(b-a)*(f(a)+f(b); for i=1:k h=(b-a)/2i; s=0; for j=1:2(i-1) s=s+f(a+(2*j-1)*h); end

15、 T(i+1,1)=T(i,1)/2+h*s; end for j=1:k c=1/(4j-1); for m=j:k T(m+1,j+1)=T(m+1,j)+c*(T(m+1,j)-T(m,j); end end if abs(T(k,k)-T(k+1,k+1)10(-5) x1=x0-f(x0)/g(x0); y=abs(x1-x0); x0=x1; i=i+1;endE=vpa(x1)结果:E =32.005560568887858607922680675983(3)通过调节轨道偏心率 e 查看运算收敛情况;e 0.001 1 1.8 2.2 10E 32.00055 32.99991

16、33.53559 30.88381 31.35097导 0.99916 1.01318 1.93911 -0.89582 -8.97892 可以看出,e在01之间,收敛;在11.8之间,发散;在1.82.2左右,收敛;2.2之后,发散.2、(日照时间分布)已知某地区在不同月份的平均日照时间的观测数据如下表所示月份123456789101112日照/(h/月)80.967.267.150.532.033.635.646.852.362.064.171.2试分析日照时间的变化规律。x=1:1:12;y=80.9 67.2 67.1 50.5 32.0 33.6 36.6 46.8 52.3 62.

17、0 64.1 71.2; x1=1:0.01:12; y1=interp1(x,y,x1); y2=interp1(x,y,x1,spline);plot(x,y,go,x1,y1,r-,x1,y2,b)其中红线是分段插值得到的,因此为折线,绿色是三次样条曲线,o 处是插值节点。从图中可以看出,日照时间从一月开始减少至5月,之后又开始增加至12月。(水道测量问题)水深数据如下表所示,设船的吃水深度为1.5m,问在的区域内,哪些地方船只避免进入,画船只避免进入的区域。x129.0140.0108.588.0185.5195.5105.5y7.5141.528.0147.022.5137.585.

18、5z1.222.441.832.441.832.442.44x157.5107.577.081.0162.0162.0117.5y-6.5-81.53.056.5-66.584-38.5z2.742.742.442.442.741.222.74x=129.0 140.0 108.5 88.0 185.5 195.5 105.5 157.5 107.5 77.0 81.0 162.0 162.0 117.5;y=7.5 141.5 28.0 147.0 22.5 137.5 85.5 -6.5 -81.5 3.0 56.5 -66.5 84 -38.5;z=-1.22 2.44 1.83 2.4

19、4 1.83 2.44 2.44 2.74 2.74 2.44 2.44 2.74 1.22 2.74;x1=linspace(min(x),max(x),40); y1=linspace(min(y),max(y),40);Xi,Yi=meshgrid(x1,y1);Xi,Yi,Zi=griddata(x,y,z,Xi,Yi,cubic);mesh(Xi,Yi,Zi);xlabel(X);ylabel(Y);zlabel(Z);figure;c,h=contour(Xi,Yi,Zi,-1.2:-0.1:-2.8);clabel(c,h);xlabel(X);ylabel(Y);3、本课程设计

20、的心得体会(500字左右)通过这次计算方法的课程设计,我比过去得到了更多的收获。不仅仅是知识的学习,更明白了巩固旧知识的重要性,明白了什么是温故而知新。也懂得了人际关系的重要性,保持好的人际关系,遇到问题,别人才乐于伸出援手。在试验的进行中,我们使用matlab对问题进行求解。刚开始的时候,使用matlab解决此类问题有一些难度,包括如何操作,具体算法编排都不是很了解,但是通过互相探讨,查找资料,渐渐的掌握了一些技巧,能够解决一些基础问题。同时我们也明白了maatlab的强大,它对数学数据和图形的处理能力是c比不上的。在本次实验中,我的计算方法知识得到了很好的巩固与更新。在不断的出错,不断的查找,不断的求索与修改之中,过去知识中的漏洞与迷茫渐渐不复存在,也明白了自己掌握的东西还是太少,太浅薄,需要努力寻找新的东西。而寻找东西的能力恰恰也在本次实验中得到了培养。由于一次次的求解失误,只能努力的寻找解决方法,书本,网络,同学,这些都在本次试验中运用到。课程设计已经结束,但是我收获了软件操作知识,数学知识,以及查找资料等能力,这些都是我对专业,对课程有了一个更加深入的了解。

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

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