


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数值代数实验数值线性代数实验一一、实验名称:矩阵的LULU 分解. .LULU 分解求解线性方程组Ax=b,Ax=b,并比较这LU分解编成通用的子程序,然后用编写GaussGauss 消去法的看法Gauss 消去法:用消去法解方程组的基本思想是用逐次消去未知数的方法把原来方程组Ax=b 化为与其等价的三角方程组,而求解三角方程组就容易了。换句话说,上述过程就是用行的初等变换将原方程组系数矩阵化为简单形式,从而将求解原方程组的问题转化为求解简单方程组的问题。利用 Gauss 消去法对线性方程组Ax=b 进行求解。用 MATLAB 建立 m 文件 DelGauss.m,程序如下:fun cti o
2、n x=DelGauss(a,b)n ,m=size(a);n b=le ngth(b);det=1;x=zeros (n ,1);for k=1: n-1二、 实验目的:用不选主元的LULU 分解和列主元两种方法. .将计算结果与方程组的精确解进行比较,并就此谈谈你对(2(2 )写出追赶法求解三对角方程组的过程,并编写程序求该实验中的方程组for i=k+1: nif a(k,k)=0returnend m=a(i,k)/a(k,k);for j=k+1:n a(i,j)=a(i,j)-m*a(k,j);end b(i)=b(i)-m*b(k);enddet=det*a(k,k);endde
3、t=det*a(n,n);for k=n:-1:1for j=k+1:n b(k)=b(k)-a(k,j)*x(j);endx(k)=b(k)/a(k,k);End在 matlabmatlab 中输入如下:结果如下:一、实验名称:实对称正定矩阵的A的 CholeskyCholesky 分解. .Ax=bAx=b . .(2)系数矩阵为方程组的精确解为 xi=x2= =x84=1.0000 ,与 Gauss 消去法求得的解差距很大,所得结果不够准确,计算简单但其消元过程有时不能进行到底而使求解出现解失真 的情况。数值线性代数实验二二、实验目的:用平方根法和改进的平方根方法求解线性方程组 三、实验
4、内容与要求用所熟悉的计算机语言将CholeskyCholesky 分解和改进的 CholeskyCholesky 分解编成通用的子程序,然后用编写的程序求解对称正定方程组Ax=bAx=b,其中(1 1) b b 随机的选取,系数矩阵为100阶矩阵40 阶 Hilbert 矩阵,即系数矩阵 A 的第 i 行第 j 列元素为门二二,向量 b b 的第 i i 个分量为:二I、:-】j j(3)用实验一的程序求解这两个方程组,并比较所有的计算结果,然后评价各个方法的 优劣。平方根法:平方根法就是利用对称正定矩阵的三角分解而得到的求解对称正定方程组的一种有效方法。平方根法递推公式可以证明对于对称正定矩
5、阵A,可以唯一地分解成 A=LLT其中 L 是非奇异下三角形矩阵。模型二:利用平方根法对线性方程组 Ax=b 进行求解。用 MATLAB 建立 m 文件 pingfg.m, 程序如下:function x=pingfg(A,b)%Cholesky分解n,n=size(A);L=zeros(n,n);%实际上不用为L申请空间,使用A即可L(1,1)=sqrt(A(1,1);for k=2:nL(k,1)=A(k,1)/L(1,1);endfor k=2:n-1L(k, k)=sqrt(A (k,k)-sum(L(k,1:k-1)八2);for i=k+1:n L(i,k)=(A(i,k)-sum
6、(L(i,1:k-1).*L(k,1:k-1)/L(k,k);endendL(n,n )=sqrt(A( n,n )-sum(L( n,1: n-1).八2); y=zeros(n,1);for k=1:n%解下三角方程组Ly=bj=1:k-1;y(k)=(b(k)-L(k,j)*y(j)/L(k,k);end%解上三角方程组Lx=yx=zeros(n,1);U=L;for k=n:-1:1j=k+1:n;x(k)=(y(k)-U(k,j)*x(j)/U(k,k);End模型三:利用改进的平方根法对线性方程组用 MATLAB 建立 m 文件 ave.m, 程序如下:Ax=b 进行求解funct
7、ionx=ave(A,b,n)L=zeros(n,n);D=diag(n,0);S=L*D;for i=1:nL(i,i)=1;endfor i=1:nfor j=1:nif (eig(A)=0)|(A(i,j)=A(j,i)%用改进平方根法求解Ax=b%L为n*n矩阵%D为n*n的主对角矩阵%L的主对角元素均为1%验证A是否为对称正定矩阵%A的特征值小于0或A非对称时,输出wrongdisp( wrong ); break end; endendHilbert 矩阵用 MATLAB 建立 m 文件 Hil.m, 程序如下:function b=Hil()for k=1:40for m=1:4
8、0s=0;t=s+1/(k+m-1);s=t;endb(k,1)=s;end在 matlabmatlab 中输入如下:输出结果如下:在输入:输出为:问题 3:Gauss 消去法所得的结果与平方根法和改进的平方根法求得的结果差距很 大,而且Gauss 消去法所得的结果大部分为零, 显然平方根法和改进的平方根法 求得的结果与方程的精确解比 Gauss 消去法的更接近, 更准确。但不管是哪一类 算法都只能在预定的计算步骤内或给定的精度内得到近似解,有一定的误差。数值线性代数实验三、实验名称:矩阵A的QR分解、实验目的: 应用改进的GramGram SchmidtSchmidt 方法和 Househo
9、lderHouseholder 变换的方法计算矩阵 A A的QR分解. .其中 A( aij) Rm n( m n),rank A =n三、实验内容与要求输出:Q的各列元素(存放在A 的相应位置上)以及 R 的元素dy_将常微分方程dx2dxy(0)0, y(1)rij(i 1, n, j i , n)数值线性代数实验四一、 实验名称:用迭代法求解方程组及超松弛迭代和最佳松弛因子的确定二、 实验目的:应用 Jacobi 迭代法、Gauss -Seidel 迭代法和超松弛迭代方法求解线性方程组 Ax=b,Ax=b,并选择不同的松弛因子, 观察松弛因子对松弛迭代法计算效果的影响a(0a 1)离散化
10、得到差分方程 Ax=bAx=b ,取110.5,n 100,h,应用 Jacobi 迭代法、Gauss Seidel 迭代法和超松弛迭代方n法求解线性方程组,分别取1,0.1,0.01,0.0001,用 SORSOR 迭代法计算对应的数值解,并与精确解进行比较. .写出这三种迭代法求解线性方程组的步骤,并对计算结果进行分析四、实验原理将0,10,1区间 n n 等分,方程离散化得差分方程(h) y (2 h) y yi 1ii 1差分方程对应的系数矩阵和右端项分别为(2 h)h(2 h)hA(2 h) OO O其中y0y(0), yny(1).SORSOR 迭代法的迭代矩阵和常数项分别为B ( D L)1 U (1) D , f ( DSORSOR 迭代法的迭代公式:yk 1B ykfah2ah2y0ah2bMhah2(2 h)ah2(n 1) ( n 1)(h) yn( n 1)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 意外伤害赔偿协议书
- 砂合同协议书
- 拆除危房合同协议书
- 纺织技术新发展及其意义试题及答案
- 工人合同协议书
- 薪资合同协议书
- 复耕协议书合同
- 解除协议书和合同
- 电镀合同协议书
- 检测合同协议书
- 高血钙症的遗传易感性研究
- 变岗调薪协议书模板
- 试析信仰的性质及其在社会生活中的作用
- 陕2023TJ077 住宅厨房、卫生间装配式L型构件排气道系统图集
- GB/T 44102-2024跳绳课程学生运动能力测评规范
- 医疗器械合格供应商管理制度
- 辽宁省沈阳市法库县三校联考2023-2024学年六年级下学期6月月考数学试题
- 中考语文二轮专题复习:《散文阅读》课件
- 智能高速铁路概论 课件 第六章 高速铁路智能运营V2
- 伤寒论全398条全文-顺序
- 新修订公司法专题讲座课件
评论
0/150
提交评论