数值计算方法程序设计2

上传人:新** 文档编号:564438858 上传时间:2023-02-19 格式:DOCX 页数:14 大小:2.03MB
返回 下载 相关 举报
数值计算方法程序设计2_第1页
第1页 / 共14页
数值计算方法程序设计2_第2页
第2页 / 共14页
数值计算方法程序设计2_第3页
第3页 / 共14页
数值计算方法程序设计2_第4页
第4页 / 共14页
数值计算方法程序设计2_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《数值计算方法程序设计2》由会员分享,可在线阅读,更多相关《数值计算方法程序设计2(14页珍藏版)》请在金锄头文库上搜索。

1、WORD格式1.用matlab编写拉格朗日插值算法的程序并且以(x=-2.00,f(x)=17.00x=0.00,f(x)=1.00x=1.00,f(x)=2.00x=2.00,f(x)=17.00)为数据基础,在整个插值区间上采用拉格朗日插值算法计算f(x=0.6),写出程序源代码,输出计算结果x0=-2.00;x1=0.00;x2=1.00;x3=2.00;y0=17.00;y1=1.00;y2=2.00;y3=17.00;x=0.6y=(x-x1).*(x-x2).*(x-x3)/(x0-x1).*(x0-x2).*(x0-x3)*y0+(x-x0).*(x-x2).*(x-x3)/(x

2、1-x0).*(x1-x2).*(x1-x3)*y1+(x-x0).*(x-x1).*(x-x3)/(x2-x0).*(x2-x1).*(x2-x3)*y2+(x-x0).*(x-x1).*(x-x2)/(x3-x0).*(x3-x1).*(x3-x2)*y3;disp(y=);disp(y);结果为:x=0.6000y=0.25602.追赶法functionx=zhuiganfa%首先说明:追赶法是适用于三对角矩阵的线性方程组求解的方法,并不适用于其他类型矩阵。%定义三对角矩阵A的各组成单元。方程为Ax=d%b为A的对角线元素(1n),a为-1对角线元素(2n),c为+1对角线元素(1n-1

3、)。%A=2-100%-13-20%0-24-3%00-35a=0-1-2-3;c=-1-2-3;b=2345;d=61-21;n=length(b);u0=0;y0=0;a(1)=0;%“追”的过程L(1)=b(1)-a(1)*u0;y(1)=(d(1)-y0*a(1)/L(1);u(1)=c(1)/L(1);fori=2:(n-1)L(i)=b(i)-a(i)*u(i-1);y(i)=(d(i)-y(i-1)*a(i)/L(i);u(i)=c(i)/L(i);endL(n)=b(n)-a(n)*u(n-1);y(n)=(d(n)-y(n-1)*a(n)/L(n);%“赶”的过程专业资料整理

4、x(n)=y(n);fori=(n-1):-1:1x(i)=y(i)-u(i)*x(i+1);end3.特征向量的计算,幂法5.2.2幂法的MATLAB程序用幂法计算矩阵A的主特征值和对应的特征向量的MATLAB主程序functionk,lambda,Vk,Wc=mifa(A,V0,jd,max1)lambda=0;k=1;Wc=1;,jd=jd*0.1;state=1;V=V0;while(kjd)state=1;endk=k+1;Wc=Wc;endif(WcA=1-1;24;V0=1,1;k,lambda,Vk,Wc=mifa(A,V0,0.00001,100),V,D=eig(A),Dz

5、d=max(diag(D),wuD=abs(Dzd-lambda),wuV=V(:,2)./Vk,运行后屏幕显示结果请注意:迭代次数k,主特征值的近似值lambda,主特征向量的近似向量Vk,相邻两次迭代的误差Wc如下:k=lambda=Wc=333.000001738368048.691862856124999e-007Vk=V=wuV=-0.49999942054432-0.707106781186550.44721359549996-0.894428227562941.000000000000000.70710678118655-0.89442719099992-0.8944271909

6、9992Dzd=wuD=31.738368038406435e-006由输出结果可看出,迭代33次,相邻两次迭代的误差Wc8.6919e-007,矩阵A的主特征值的近似值lambda3.00000和对应的特征向量的近似向量Vk(-0.50000,1.00000T),lambda与例5.1.1中A的最大特征值32近似相等,绝对误差约为1.73837e-006,Vk与特征向量XT2k2(12,1)T(k20)的第1个分量的绝对误差约等于0,第2个分量的绝对值相同.由wuV可以看出,2的特征向量V(:,2)与Vk的对应分量的比值近似相等.因此,用程序mifa.m计算的结果达到预先给定的精度510.(

7、2)输入MATLAB程序B=123;213;336;V0=1,1,1;k,lambda,Vk,Wc=mifa(B,V0,0.00001,100),V,D=eig(B),Dzd=max(diag(D),wuD=abs(Dzd-lambda),wuV=V(:,3)./Vk,运行后屏幕显示结果请注意:迭代次数k,主特征值的近似值lambda,主特征向量的近似向量Vk,相邻两次迭代的误差Wc如下:k=lambda=Wc=Dzd=wuD=39090Vk=wuV=0.500000000000000.816496580927730.500000000000000.816496580927731.000000

8、000000000.81649658092773V=0.707106781186550.577350269189630.40824829046386-0.707106781186550.577350269189630.408248290463860-0.577350269189630.81649658092773(3)输入MATLAB程序C=122;1-11;4-121;V0=1,1,1;k,lambda,Vk,Wc=mifa(C,V0,0.00001,100),V,D=eig(C),Dzd=max(diag(D),wuD=abs(Dzd-lambda),Vzd=V(:,1),wuV=V(:,

9、1)./Vk,运行后屏幕显示请注意:迭代次数k已经达到最大迭代次数max1,主特征值的迭代值lambda,主特征向量的迭代向量Vk,相邻两次迭代的误差Wc如下:k=lambda=Wc=1000.090909090909102.37758124193119Dzd=wuD=1.000000000000010.90909090909091Vk=Vzd=wuV=0.999999999999930.904534033733290.904534033733350.999999999999950.301511344577760.301511344577781.00000000000000-0.3015113

10、4457776-0.30151134457776由输出结果可见,迭代次数k已经达到最大迭代次数max1=100,并且lambda的相邻两次迭代的误差Wc2.377582,由wuV可以看出,lambda的特征向量Vk与真值Dzd的特征向量Vzd对应分量的比值相差较大,所以迭代序列发散.实际上,实数矩阵C的特征值的近似值为11.00000000000001,i,i,并且对应的特征向量的近似向量分别为23XT1=k1(0.90453403373329,0.30151134457776,-0.30151134457776)T,XT2k2(-0.72547625011001,-0.21764287503

11、300-0.07254762501100i,T0.58038100008801-0.29019050004400i),XT3k3(-0.72547625011001,-0.21764287503300+0.07254762501100i,0.58038100008801+0.29019050004400i)T(k10,k20,k03是常数).(4)输入MATLAB程序D=-4140;-5130;-102;V0=1,1,1;k,lambda,Vk,Wc=mifa(D,V0,0.00001,100),V,Dt=eig(D),Dtzd=max(diag(Dt),wuDt=abs(Dtzd-lambd

12、a),Vzd=V(:,2),wuV=V(:,2)./Vk,运行后屏幕显示结果请注意:迭代次数k,主特征值的近似值lambda,主特征向量的近似向量Vk,相邻两次迭代的误差Wc如下:k=lambda=Wc=196.000006539495286.539523793591684e-006Dtzd=wuDt=6.000000000000006.539495284840768e-006Vk=Vzd=wuV=0.797400480535640.797400480535640.797400480535640.714285947838860.569571771811170.79740021980618-0.

13、24999918247180-0.199350120133910.79740308813370(一)原点位移反幂法的MATLAB主程序1用原点位移反幂法计算矩阵A的特征值和对应的特征向量的MATLAB主程序1functionk,lambdan,Vk,Wc=ydwyfmf(A,V0,jlamb,jd,max1)n,n=size(A);A1=A-jlamb*eye(n);jd=jd*0.1;RA1=det(A1);ifRA1=0disp(请注意:因为A-aE的n阶行列式hl等于零,所以A-aE不能进行LU分解.)returnendlambda=0;ifRA1=0forp=1:nh(p)=det(A1(1:p,1:p);endhl=h(1:n);fori=1:nifh(1,i)=0disp(请注意:因为A-aE的r阶主子式等于零,所以A-aE不能进行LU分解.)returnendendifh(1,i)=0disp(请注意:因为A-aE的各

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号