矩阵程序大作业—说明文档

矩阵程序大作业—说明文档

ID:38636219

大小:270.50 KB

页数:17页

时间:2019-06-16

矩阵程序大作业—说明文档_第1页
矩阵程序大作业—说明文档_第2页
矩阵程序大作业—说明文档_第3页
矩阵程序大作业—说明文档_第4页
矩阵程序大作业—说明文档_第5页
资源描述:

《矩阵程序大作业—说明文档》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、LU分解、QR分解Householderreduction、Givensreduction1.输入输出参数的含义Factorization_and_Reduction.m中输入输出参数的含义:输入参数:A:待分解的矩阵mode:工作模式的选择mode=0:函数进行LU分解mode=1:函数进行QR分解mode=2:函数进行Householdreductionmode=3:函数进行Givensreduction输出参数:flag_right:分解或约减成功标志,为0时表示失败,为1时表示成功B1,B2,B3,在不同模式下的

2、含义如下mode=0:B1=L:下三角阵;B2=U:上三角阵;B3=P:permutationmatrix;满足PA=LU。mode=1:B1=Q:R(A)的单位正交基为列组成的矩阵;B2=R:上三角阵;B3=0:没有实际意义,默认值为0;满足A=QR。mode=2:B1=P:由反射得到的单位正交阵(unitarymatrixororthogonalmatrix);B2=T:上梯形阵;B3=P_T:P的转置;满足PA=T和A=P_T*T。mode=3:B1=P:由旋转得到的单位正交阵(unitarymatrixorort

3、hogonalmatrix);B2=T:上梯形阵;B3=P_T:P的转置;满足PA=T和A=P_T*T。1.实验步骤和原理1)LU分解(1)输入待分解的矩阵:(2)判断输入矩阵A是否为方阵,如果不是,不进行LU分解。(3)根据矩阵A的大小,初始化矩阵L,U,P和标签label(用于记录行交换后行的位置,将其初始化为)。(4)j从1到n循环执行以下步骤(j表示第j个主元):①在第j列以下位置中寻找第一个非零元素作为第j个主元,即从中寻找第一个非零元素作为主元。②如果找到的非零主元不在第j行,而是在第i行,分别交换A和L中第

4、i行和第j行,交换label中第i个和第j个元素。③将A的第j行赋给U的第j行,并将L中位置元素赋1。④将A中主元以下的元素变为0,并将消元时主元行需要乘的系数赋给L的相应位置元素,如:将主元以下的变为0时,L中位置的元素。(5)对矩阵P进行赋值,即将P的第i行的第label(i)个元素赋为1,其他元素为0。(6)判断矩阵A是否为奇异阵:查看矩阵U的主元位置是否存在0元素,如果存在则U为奇异阵且A也为奇异阵,此时A不能进行LU分解。(7)对分解结果进行验证,计算是否成立,若成立,则分解正确。2)QR分解(1)输入待分解的

5、矩阵:(2)k从1到n循环执行以下步骤:①如果k=1,(表示矩阵A的第一列);否则,(表示矩阵A的第k列,表示矩阵Q的第i列,)。②矩阵Q的第k列:③给矩阵R的第k行赋值:(3)循环结束即可得到Q矩阵和R矩阵。下面验证以上QR分解的结果是否正确:①验证Q矩阵的各列是否相互正交且各列的模为1,即验证是否成立。②验证是否成立。若以上两个条件均满足,则QR分解正确。3)Householderreduction(1)输入待处理的矩阵:(2)初始化矩阵P为单位矩阵I。(3)k从1到n循环执行以下步骤:①令矩阵Ak是P*A的第k行k

6、列下方右方构成的矩阵,如k=2,Ak矩阵如下图红框所示:Ak②令③④构造m*m的矩阵⑤更新P:⑥用P*A的第k+1行和k+1列下方右方的元素构成的矩阵更新Ak(4)以上循环结束以后,即可得到矩阵P,矩阵T=P*A。(5)下面验证以上Householderreduction的结果是否正确:①验证P是否是单位正交矩阵(unitarymatrixororthogonalmatrix),即验证是否成立。②验证是否成立。若以上两个条件均满足,则Householderreduction分解正确。4)Givensreduction(1

7、)输入待处理的矩阵:(2)初始化矩阵P为单位矩阵I。(3)k从1到n循环执行以下步骤:利用旋转矩阵,使得原矩阵k列中k行元素以下的元素为0则j从k+1到m循环执行以下步骤:①令矩阵Ak等于P*A②,③令,然后用c去替代中第k行k列的元素,用s去替代中第k行j列的元素,用-s去替代中第j行k列的元素,用c去替代中第j行j列的元素。④更新P:⑤更新Ak:(4)以上循环结束以后,即可得到矩阵P,矩阵T=P*A。(5)下面验证以上Givensreduction的结果是否正确:①验证P是否是单位正交阵(unitarymatrixo

8、rorthogonalmatrix),即验证是否成立。②验证是否成立。若以上两个条件均满足,则Givensreduction分解正确。1.实验结果截图1)当输入矩阵A为方阵例:(1)LU分解显示结果中变量含义:L:下三角阵;U:上三角阵;P:permutationmatrix。(2)QR分解显示结果中变量含义:Q:R

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。