- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
解线性方程组基本思想
四:基本方法基本思路将在解题的过程中得到体现。1.(求线性方程组的唯一解或特解),这类问题的求法分为两类:一类主要用于解低阶稠密矩阵 —— 直接法;一类是解大型稀疏矩阵 —— 迭代法。
1.1利用矩阵除法求线性方程组的特解(或一个解)方程:AX=b,解法:X=A\b,(注意此处’\’不是’/’)例1-1??? 求方程组 的解。解:??? A = ; = ;b=(1,0,0,0,1)’由于rank(A)=5,rank( )=5??? %求秩,此为R(A)=R( )=n的情形,有唯一解。??????X= A\b????? %求解 X =(2.2662, -1.7218, 1.0571,-0.5940, 0.3188)’ 或用函数rref求解,sv=rref(A:b);所得sv的最后一列即为所要求的解。1.2 利用矩阵的LU、QR和cholesky分解求方程组的解
这三种分解,在求解大型方程组时很有用。其优点是运算速度快、可以节省磁盘空间、节省内存。I) LU分解又称Gauss消去分解,可把任意方阵分解为下三角矩阵的基本变换形式(行交换)和上三角矩阵的乘积。即A=LU,L为下三角阵,U为上三角阵。则:A*X=b????????? 变成L*U*X=b所以X=U\(L\b)???? 这样可以大大提高运算速度。命令??? [L,U]=lu (A)在matlab中可以编如下通用m 文件:在Matlab中建立M文件如下% exp1.mA;b;[L,U]=lu (A);X=U\(L\b)II)Cholesky分解若A为对称正定矩阵,则Cholesky分解可将矩阵A分解成上三角矩阵和其转置的乘积,即:???? 其中R为上三角阵。方程??? A*X=b??? 变成???? 所以???在Matlab中建立M文件如下% exp2.mA;b;[R’,R]=chol(A);X=R\(R’\b)III)QR分解对于任何长方矩阵A,都可以进行QR分解,其中Q为正交矩阵,R为上三角矩阵的初等变换形式,即:A=QR方程??? A*X=b??? 变形成???? QRX=b所以???? X=R\(Q\b)上例中??? [Q, R]=qr(A)X=R\(Q\B)在Matlab中建立M文件如下% exp3.mA;b;[Q,R]=qr(A);X=R\(Q\b)2.求线性齐次方程组的通解(A*X=0)在Matlab中,函数null用来求解零空间,即满足A#8226;X=0的解空间,实际上是求出解空间的一组基(基础解系)。在Matlab中建立M文件如下% exp4.mformat rat????? %指定有理式格式输出A;b=0;r=rank(A);bs=null(A,‘r’); %一组基含(n-r)个列向量% k ,k ,……,k % X= k *bs(:,1)+ k *bs(:,2)+……+ k *bs(:,n-r) 方程组的通解pretty(X)?????? %让通解表达式更加精美3??? 求非齐次线性方程组的通解(A*X=b)非齐次线性方程组需要先判断方程组是否有解,若有解,再去求通解。因此,步骤为:第一步:判断AX=b是否有解,(利用基本思路的第一条)若有解则进行第二步第二步:求AX=b的一个特解第三步:求AX=0的通解第四步:AX=b的通解为: AX=0的通解加上AX=b的一个特解。在Matlab中建立M文件如下% exp4.mclear allA;b;??????????????????? %输入矩阵A,b[m,n]=size(A);R=rank(A);B=[A b];Rr=rank(B);format rat if R==RrR==n??????????? % n为未知数的个数,判断是否有唯一解x=A\b;elseif R==RrRn??????? %判断是否有无穷解x=A\b?????????????????? %求特解C=null(A, r )?????????? %求AX=0的基础解系,所得C为n-R列矩阵,这n-R列即为对%应的基础解系??????????????????????? % 这种情形方程组通解xx=k(p)*C(:,P)(p=1…n-R)else X= No solution!??? % 判断是否无解end
第3章 线性方程组的迭代解法
3.1实验目的
理解线性方程组计算机解法中的迭代解法的求解过程和特点,学习科学计算的方法和简单的编程技术。
3.2? 概念与结论
1.???? n阶线性方程组
如果未知量的个数为 n ,而且关于这些未
文档评论(0)