欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数值线性代数第二版徐树方高立张平文上机习的题目第一章实验报告材料.docx

    • 资源ID:26053277       资源大小:56.77KB        全文页数:12页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数值线性代数第二版徐树方高立张平文上机习的题目第一章实验报告材料.docx

    1、数值线性代数第二版徐树方高立张平文上机习的题目第一章实验报告材料上机习题1.先用你所熟悉的的计算机语言将不选主元和列主元Gauss消去法编写成通用的子程序;然后用你编写的程序求解84阶方程组;最后将你的计算结果与方程的准确解进展比拟,并就此谈谈你对Gauss消去法的看法。Sol:1先用matlab将不选主元和列主元Gauss消去法编写成通用的子程序,得到:不选主元Gauss消去法:得到满足列主元Gauss消去法:得到满足(2)用前代法解,得用回代法解,得求解程序为可缺省,缺省时默认为单位矩阵3计算脚本为ex1_1代码%算法1.1.3计算三角分解:Gauss消去法function L,U=Gau

    2、ssLA(A)n=length(A);for k=1:n-1 A(k+1:n,k)=A(k+1:n,k)/A(k,k); A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-A(k+1:n,k)*A(k,k+1:n);endU=triu(A);L=tril(A);L=L-diag(diag(L)+diag(ones(1,n);end%算法1.2.2(计算列主元三角分解:列主元Gauss消去法function L,U,P=GaussCol(A)n=length(A);for k=1:n-1s,t=max(abs(A(k:n,k);p=t+k-1;temp=A(k,1:n);A(k,1:n

    3、)=A(p,1:n);A(p,1:n)=temp;u(k)=p;if A(k,k)=0 A(k+1:n,k)=A(k+1:n,k)/A(k,k); A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-A(k+1:n,k)*A(k,k+1:n);elsebreak;endendL=tril(A);U=triu(A);L=L-diag(diag(L)+diag(ones(1,n);P=eye(n);for i=1:n-1 temp=P(i,:); P(i,:)=P(u(i),:); P(u(i),:)=temp;endend%高斯消去法解线性方程组function x=Gauss(A,b,

    4、L,U,P)if nargin5 P=eye(length(A);endn=length(A);b=P*b;for j=1:n-1 b(j)=b(j)/L(j,j); b(j+1:n)=b(j+1:n)-b(j)*L(j+1:n,j);endb(n)=b(n)/L(n,n);y=b;for j=n:-1:2 y(j)=y(j)/U(j,j); y(1:j-1)=y(1:j-1)-y(j)*U(1:j-1,j);endy(1)=y(1)/U(1,1);x=y;endex1_1clc;clear;%第一题A=6*eye(84)+diag(8*ones(1,83),-1)+diag(ones(1,8

    5、3),1);b=7;15*ones(82,1);14;%不选主元Gauss消去法L,U=GaussLA(A);x1_1=Gauss(A,b,L,U);%列主元Gauss消去法L,U,P=GaussCol(A);x1_2=Gauss(A,b,L,U,P);%解的比拟subplot(1,3,1);plot(1:84,x1_1,o-);title(Gauss);subplot(1,3,2);plot(1:84,x1_2,.-);title(PGauss);subplot(1,3,3);plot(1:84,ones(1,84),*-);title(准确解);结果为其中Gauss表示不选主元的Gauss

    6、消去法,PGauss表示列主元Gauss消去法,准确解为:由图,显然列主元消去法与准确解更为接近,不选主元的Gauss消去法误差比列主元消去法大,且不如列主元消去法稳定。Gauss消去法重点在于A的分解过程,无论A如何分解,后面两步的运算过程不变。2.先用你所熟悉的的计算机语言将平方根法和改良的平方根法编写成通用的子程序;然后用你编写的程序求解对称正定方程组Ax=b。Sol:1先用matlab将平方根法和改良的平方根法编写成通用的子程序,得到L,(D):平方根法:L=Cholesky(A)改良的平方根法:L,D=LDLt(A)(2)求解得 求解得 求解程序为x=Gauss(A,b,L,U,P)

    7、,此时缺省,缺省时默认为单位矩阵(3)计算脚本为ex1_2代码%算法1.3.1计算Cholesky分解:平方根法function L=Cholesky(A)n=length(A);for k=1:n A(k,k)=sqrt(A(k,k); A(k+1:n,k)=A(k+1:n,k)/A(k,k);for j=k+1:n A(j:n,j)=A(j:n,j)-A(j:n,k)*A(j,k);endendL=tril(A);end%计算LDL分解:改良的平方根法function L,D=LDLt(A)n=length(A);for j=1:nfor i=1:n v(i,1)=A(j,i)*A(i,i

    8、);end A(j,j)=A(j,j)-A(j,1:j-1)*v(1:j-1,1); A(j+1:n,j)=(A(j+1:n,j)-A(j+1:n,1:j-1)*v(1:j-1,1)/A(j,j);endL=tril(A);D=diag(diag(A);L=L-diag(diag(L)+diag(ones(1,n);end%高斯消去法解线性方程组function x=Gauss(A,b,L,U,P)if nargin5 P=eye(length(A);endn=length(A);b=P*b;for j=1:n-1 b(j)=b(j)/L(j,j); b(j+1:n)=b(j+1:n)-b(j

    9、)*L(j+1:n,j);endb(n)=b(n)/L(n,n);y=b;for j=n:-1:2 y(j)=y(j)/U(j,j); y(1:j-1)=y(1:j-1)-y(j)*U(1:j-1,j);endy(1)=y(1)/U(1,1);x=y;endex1_2%第二题%第一问A=10*eye(100)+diag(ones(1,99),-1)+diag(ones(1,99),1);b=round(100*rand(100,1);%平方根法L=Cholesky(A);x1_2_1_1=Gauss(A,b,L,L);%改良的平方根法L,D=LDLt(A);x1_2_1_2=Gauss(A,b

    10、,L,D*L);%第二问A=hilb(40);b=sum(A);b=b;%平方根法L=Cholesky(A);x1_2_2_1=Gauss(A,b,L,L);%改良的平方根法L,D=LDLt(A);x1_2_2_2=Gauss(A,b,L,D*L);结果分别为x1_2_1_1 =x1_2_1_2 =x1_2_2_1 = 1.0e+07 *x1_2_2_2 =3.用第1题的程序求解第2题的两个方程组并比拟所有的计算结果,然后评价各个方法的优劣。Sol:Gauss表示不选主元的Gauss消去法,PGauss表示列主元Gauss消去法。计算脚本为:%第三题%第一问A=10*eye(100)+diag

    11、(ones(1,99),-1)+diag(ones(1,99),1);b=round(100*rand(100,1);%不选主元Gauss消去法L,U=GaussLA(A);x1_3_1_1=Gauss(A,b,L,U);%列主元Gauss消去法L,U,P=GaussCol(A);x1_3_1_2=Gauss(A,b,L,U,P);%第二问A=hilb(40);b=sum(A);b=b;%不选主元Gauss消去法L,U=GaussLA(A);x1_3_2_1=Gauss(A,b,L,U);%列主元Gauss消去法L,U,P=GaussCol(A);x1_3_2_2=Gauss(A,b,L,U,

    12、P);ex1_2;y1=1:100;y2=1:40;subplot(4,2,1);plot(y1,x1_2_1_1);title(平方根法1);subplot(4,2,2);plot(y1,x1_2_1_2);title(改良的平方根法1);subplot(4,2,3);plot(y1,x1_3_1_1);title(Gauss1);subplot(4,2,4);plot(y1,x1_3_1_2);title(PGauss1);subplot(4,2,5);plot(y2,x1_2_2_1);title(平方根法2);subplot(4,2,6);plot(y2,x1_2_2_2);title

    13、(改良的平方根法2);subplot(4,2,7);plot(y2,x1_3_2_1);title(Gauss2);subplot(4,2,8);plot(y2,x1_3_2_2);title(PGauss2);平方根法和改良的平法根法计算量更小,计算过程稳定,但使用X围窄;不选主元和列主元的Gauss消去法计算量较大,但适用X围广。考虑对称正定线性方程组Ax=b,其中向量b是随机生成的,其元素是服从区间0,1上均匀分布的随机数,矩阵,这里L是随机生成的一个下三角矩阵,其元素是服从区间1,2上均匀分布的随机数。对n=10,20,.,500分别应用Gauss消去法、列主元Gauss消去法和Cho

    14、lesky分解法求解该方程组,画出它们所用的CPU时间,其中“Gauss表示Gauss消去法、“PGauss表示列主元Gauss消去法,“Cholesky表示Cholesky分解法。Sol:分解。此处所用的CPU时间利用cputime测量。计算脚本为eg1_3_2clc;clear; for i=1:50; n=i*10; b=rand(n,1); L=tril(unifrnd(1,2,n,n); A=L*L; t1(i)=cputime; L1,U1=GaussLA(A); x1=Gauss(A,b,L1,U1); t1(i)=cputime-t1(i); t2(i)=cputime; L2,U2,P2=GaussCol(A); x2=Gauss(A,b,L2,U2,P2); t2(i)=cputime-t2(i); t3(i)=cputime; L3=LDLt(A); x3=Gauss(A,b,L3,L3); t3(i)=cputime-t3(i);endN=10:10:500;plot(N,t1,o-,N,t2,.-,N,t3,*-);legend(Gauss,PGauss,Cholesky);结果为


    注意事项

    本文(数值线性代数第二版徐树方高立张平文上机习的题目第一章实验报告材料.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

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

    收起
    展开