矩阵求逆c代码_第1页
矩阵求逆c代码_第2页
矩阵求逆c代码_第3页
矩阵求逆c代码_第4页
矩阵求逆c代码_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、文档供参考,可复制、编制,期待您的好评与关注! 课 程 设 计 报 告学 院:班 级:学 号:学生姓名:指导教师:时 间:课程设计任务书1、 设计内容掌握矩阵求逆的概念的原理,以及矩阵求逆的计算。编写程序完成矩阵求逆计算。要处理的数据由自己选择。二、主要技术指标(2) 掌握矩阵求逆的概念的原理,以及矩阵求逆的计算。(3) 用C或者C+实现矩阵求逆(4) 处理结果与Matlab求逆结果对比(5) 阅读矩阵求逆方面文献10篇以上三、进度要求两周完成设计任务,写5000字以上的小论文。附参考文献并在论文中进行标注。学 生指导教师20 / 241. 设计内容掌握矩阵求逆的概念的原理,以及矩阵求逆的计算

2、。编写程序完成矩阵求逆计算。要处理的数据由自己选择。2. 设计过程1、 矩阵的定义由个数排列成个行个列的数表 称为矩阵,其中数称为矩阵的元.当时,称为阶矩阵或方阵.元素全为零的矩阵称为零矩阵,记作或简记为.两个矩阵,如果,则称矩阵与为同型矩阵.如果两个同型矩阵与的对应元素相等,即,则称矩阵与相等,记作或.1当时,矩阵称为行矩阵或行向量.当时,矩阵称为列矩阵或列向量.形如 的阶方阵,即主对角线以外的元素都是零的方阵称为对角矩阵或对角方阵,记作 . 特别当时,这时的对角矩阵叫做阶数量矩阵. 当时,这时的数量矩阵叫做阶单位矩阵,记作或,在阶数不致混淆时,简记为或,即. 主对角线下方的元素都是零的方阵

3、 叫做上三角矩阵. 主对角线上方的元素都是零的方阵 叫做下三角矩阵.22、逆矩阵的概念定义:设A是数域P上的一个n阶方阵,如果存在P上的n阶方阵B,使得AB = BA = E,则称A是可逆的,又称B为A的逆矩阵.当矩阵A可逆时,逆矩阵由A惟一确定,记为A-1. 32、矩阵的初等变换矩阵的初等行变换是指对矩阵进行下列三种变换: (1) 将矩阵中某两行对换位置; (2) 将某一行遍乘一个非零常数k; (3) 将矩阵的某一行遍乘一个常数k加至另一行.并称(1)为对换变换,称(2)为倍乘变换,称(3)为倍加变换.(4)矩阵A经过初等行变换后变为B,用A B表示,并称矩阵B与A是等价的3 、有关矩阵求逆

4、的定义定理定义1 n级方阵A称为可逆的,如果n级方阵B,使得 AB=BA=E (1) 这里E是n级单位矩阵。定义2 如果B适合(1),那么B就称为A的逆矩阵,记作。定理1 如果A有逆矩阵,则逆矩阵是唯一的。定理2 矩阵A可逆的充分必要条件是,并且当A可逆时,有。定理证明见.定理2不仅给出了判断一个矩阵是否可逆的一种方法,并且给出了求逆矩阵的一种方法,但是这种方法主要用在理论上以及2级或3级矩阵的情形,如果阶数较大,那么使用此方法计算量太大。由定理2逆矩阵判定的方法还有:推论2.1 n级矩阵A可逆的充要条件是矩阵A的秩为n。推论2.2 矩阵A可逆的充要条件是它的特征值都不为0。推论2.3 n级矩

5、阵A可逆的充分必要条件是它的行或列向量组线性无关。44、矩阵的秩 前面给出了利用矩阵行列式判别方阵A是否可逆的方法,除了这种方法外,还可以利用矩阵A的特征之一矩阵的秩来判别方阵A的可逆性. 矩阵的秩是线性代数中非常有用的一个概念,它不仅与讨论可逆矩阵的问题有密切关系,而且在讨论线性方程组的解的情况中也有重要应用.在给出矩阵的秩的概念之前,先要定义矩阵的子式. 定义:在矩阵A中,位于任意选定的k行、k列交叉点上的个元素,按原来次序组成的k阶子阵的行列式,称为A的一个k阶子式.如果子式的值不为零.就称为非零子式. 定义:矩阵A的非零子式的最高阶数称为矩阵A的秩,即秩(A ) . 规定:零矩阵O的秩

6、为零,R(A)=0 定理:设A为矩阵,则R(A)= k的充分必要条件为:通过初等行变换能将A化为具有k个非零行的阶梯阵. 定理:矩阵经过初等行变换后,其秩不变. 定理:给了我们求矩阵的秩的一种简便方法,即利用初等行变换将一个矩阵A化成阶梯阵,然后算出矩阵A的秩. 4、矩阵可逆的条件(1)n阶方阵A可逆的充分必要条件是| A | 0(也即r(A)= n);(2)n阶方阵A可逆的充分必要条件是A可以通过初等变换(特别是只通过初等行(列) 变换)化为n阶单位矩阵;(3)n阶方阵A可逆的充分必要条件是A可以写成一些初等矩阵的乘积;(4)n阶方阵A可逆的充分必要条件是A的n个特征值不为零;(5)对于n阶

7、方阵A,若存在n阶方阵B使得AB = E(或BA = E),则A可逆,且A-1 =B.5、逆矩阵的性质 设A,B是n阶可逆矩阵,则(1)(A-1)-1 = A;(2)若k 0,则kA可逆,且(kA)-1 = A-1;(3)AB可逆,且(AB)-1 = B-1 A-1;(4)AT可逆,且(AT)-1 = (A-1)T;(5)Ak可逆,且(Ak)-1 = (A-1)k;(6)| A-1 | = | A |-1;(7)如果A是m×n矩阵,P是m阶可逆矩阵,Q是n阶可逆矩阵,则r(A)= r (PA)= r(AQ)= r(PAQ).5、求矩阵逆的方法方法1 定义法 5设A是数域P上的一个n阶

8、方阵,如果存在P上的n阶方阵B,使得AB = BA = E,则称A是可逆的,又称B为A的逆矩阵.当矩阵A可逆时,逆矩阵由A惟一确定,记为A-1. 例1:设A为n阶矩阵,且满足,求A-1. 【解】啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊方法2 初等变换法 6 通过对原矩阵进行初等行列变换求逆矩阵的方法也被称为高斯-约旦法。此方法比较适合于高阶矩阵求逆,但因为没有统一的算法可遵循,所以不太适合计算机编程。初等行列变化法包括初等行变换,初等列变换以及行列混合变换,后两种方法在求广义逆矩阵的时候经常能用到。而对于某些矩阵,先求其拟逆矩阵会比直接求逆矩阵要容易,而所求得

9、的拟逆矩阵又可以利用行列互换原则再变回原矩阵的逆矩阵注 : 对于阶数较高(n3)的矩阵,采用初等行变换法求逆矩阵一般比用伴随矩阵法简便.在用上述方法求逆矩阵时,只允许施行初等行变换. 也可以利用求得A的逆矩阵.当矩阵A可逆时,可利用求得A-1B和CA-1.这一方法的优点是不需求出A的逆矩阵和进行矩阵乘法,仅通过初等变换即求出了A-1B或CA-1.例2. 设矩阵 A = 求逆矩阵解 因为啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊+(-1)+(-2)A , I = +(-1)+(-1) + (1/2)+ 所以 = 所求逆矩阵是否正确,可以通过计算乘积矩阵A进行验证. 对给定的

10、n阶矩阵A,用上述方法也可以判断A是否可逆.即在对矩阵 A , I 进行初等行变换的过程中,如果 A , I 中的左边的方阵出现零行,说明矩阵A是奇异的,即,可以判定A不可逆;如果 A , I 中的左边的方阵被化成了单位阵I,说明A是非奇异的,可以判定A是可逆的,而且这个单位矩阵I右边的方阵就是A的逆矩阵,它是由单位矩阵I经过同样的初等行变换得到的.方法 3 伴随矩阵法 7A-1 = A*. 定理n阶矩阵A = aij为可逆的充分必要条件是A非奇异.且其中Aij是|A|中元素aij的代数余子式.矩阵称为矩阵A的伴随矩阵,记作A*,于是有A-1 = A*.注 : 对于阶数较低(一般不超过3阶)或

11、元素的代数余子式易于计算的矩阵可用此法求其逆矩阵.注意A* = (Aji)n×n元素的位置及符号.特别对于2阶方阵,其伴随矩阵,即伴随矩阵具有“主对角元素互换,次对角元素变号”的规律. 对于分块矩阵不能按上述规律求伴随矩阵.啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊方法4 用分块矩阵求逆矩阵8设A、B分别为P、Q阶可逆矩阵,则: 例3. 设,则与有相同分法,则 啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊得一个线性方程组为由于可逆,故存在,解得从而方法5 解方程组求逆矩阵 9根据可逆的上(下)三角矩阵的逆仍是上(下)三角矩阵

12、,且上(下)三角矩阵逆矩阵主对角元分别为上(下)三角矩阵对应的主对角元的倒数,可设出逆矩阵的待求元素;又由A-1A = E 两端对应元素相等,依次可得只含有一个待求元素的方程,因而待求元素极易求得,此法常用元素待求上(下)三角矩阵的逆矩阵.例4求矩阵A=的逆矩阵。解: 设 解方程组AX=B即 解得然后把列,分别用 代入得到矩阵的第行,分别用 即这种方法特别适用于线性方程组AX=B的解容易求解的情形。方法6 用克莱姆法则求解若线性方程组的系数行列式,则此方程组有唯一的一组解.这里是将中的第i列换成得到的行列式.例5求可逆矩阵的逆矩阵.【解】 矩阵A的行向量为,由标准基表示为: 解以为未知量的方程

13、组得:啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊该法在理论上是用克莱姆法则求解,但可用消元法简化运算过程.还以上例说明之: 由:啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 得:啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 令啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 是一个所谓的形式矩阵(其元素既有数,又有向量).对施行矩阵的行的初等变换得:方法7 用行列式 定理:若n阶矩阵A = ( Aij) 为满秩矩阵,则A可逆,且为的初始单位向量组,即例6设,求A的逆矩阵.【解】方法8 恒等变形法求逆矩阵有些计算命题表面上与求逆矩阵无关,但实质上只有求出矩阵的逆矩阵才能算出来,而求逆矩阵须对所给

14、的矩阵等式恒等变形,且常变形为两矩阵的乘积等于单位矩阵的等式.例7已知,试求并证明,其中.【解】 由 得到故,而A又为正交矩阵, 从而方法9 利用哈密尔顿凯莱定理求逆矩阵法 设A是数域P上一个矩阵,是A的特征多项式,则。如果A可逆,则A的特征多项式的常数项,由定理知 于是 因此得 此式给出了的多项式计算方法。例8已知,求。解:矩阵A的特征多项式为: 因,所以矩阵A可逆,由式知 =方法10 三角矩阵的一种求逆法定理:如果n阶矩阵可逆,那么他的逆矩阵是其中方法11 拼接新矩阵在可逆矩阵A的右方补加上一个单位矩阵E,在A的下方补加上一个负单位矩阵-E, 再在A的右下方补加上一个零矩阵O,从而得到一个

15、新的方阵.对该方阵施行第三种行的初等变换,使其负单位矩阵-E化为零矩阵, 那么原来的零矩阵O所化得的矩阵就是所要求的逆矩阵A-1.3. 小结矩阵在我们生活中具有较强的应用性,因而备受人们的关注。而在解决矩阵问题时常常需要求矩阵的逆,因此总结出一套求矩阵逆的方法是必要的。在线性代数的内容中的矩阵是一个重要知识点,它对学习初等数学也有一定的指导作用。灵活巧妙地运用矩阵能高瞻远瞩,方便地解决初等数学与高等数学中的相关问题。能否熟练地应用就要看我们是否有运用它的意识,是否掌握其中的技巧,如果具备了这样的能力,就能将复杂问题简单化,进而提高解题速度,收到事半功倍的效果。事实上,如何应用矩阵去求逆矩阵,难

16、点在于能否熟练的运用这些方法去求,此时既要考虑矩阵的形式,又要考虑所给的条件。此外,熟练掌握求逆矩阵的方法,有助于开阔眼界,培养散性思维 以下为部分matlab与程序的演示结果对比:Matlab处理结果精确度好比所编程序好很多,但是运行时间明显要长一些。4. 参考资料1 王中良.线性代数解题指导M.北京大学出版社,2008:43.2 朱玉清.线性代数M.国防工业出版社,2007:46-47.3 徐仲,张凯院.线性代数辅导讲案M.西北工业大学出版社,2007:39.4 张志让,刘启宽.高等代数M.高等教育出版社.2008:15-17.5 陈逢明.逆矩阵的若干求法J.福建商业高等专科学校学报.20

17、06(3):117.6 张海涛.逆矩阵的求法J.大同职业技术学院学报.2004,18(2):70.7 王丽霞.逆矩阵的几种求法J.雁北师范学院学报.2007,23(2):83-84.8 曾国斌.求逆矩阵的几种常用方法J.云梦学刊.2008,29:152.9 孙红伟.关于求逆矩阵方法的探讨J.科技资讯.2008(27):226-227. 10 王建锋. 求逆矩阵的快速方法J. 大学数学, 2004, (01) . 11 李一博. 矩阵求逆基本方法的注记与补充. 第23卷第6期高等函授学报(自然科学版) 2010年12月5. 致谢首先要感谢杨峰老师,杨峰老师渊博的专业知识,严谨的治学态度,精益求精

18、的工作作风,诲人不倦的高尚师德,严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。在论文的写作过程中也学到了做任何事情所要有的态度和心态,首先我明白了做学问要一丝不苟,对于出现的任何问题和偏差都不要轻视,要通过正确的途径去解决,在做事情的过程中要有耐心和毅力,不要一遇到困难就打退堂鼓,只要坚持下去就可以找到思路去解决问题的。通过此次的论文,我学到了很多知识,跨越了传统方式下的教与学的体制束缚,在论文的写作过程中,通过查资料和搜集有关的文献,培养了自学能力和动手能力。并且由原先的被动的接受知识转换为主动的寻求知识,这可以说是学习方法上的一个很大的突破。论文的顺利完成,也离不

19、开其它各位同学和朋友的关心和帮助。在整个的论文写作中,同学积极的帮助我查资料和提供有利于论文写作的建议和意见,在他们的帮助下,论文得以不断的完善,最终帮助我完整的写完了整个论文。附录:程序代码#include <iostream>#include "Matrix.h"using namespace std;int main( ) int aNN; float bNN; float cNN; int r,z,j; printf("输入矩阵:"); for(z=0;z<N;z+) /*输入所需要的数据,为整型数据*/ for(j=0;j&l

20、t;N;j+) scanf("%d",&azj); printf("n回车键继续-"); getchar(); printf("输入矩阵是:n"); for(z=0;z<N;z+)/*打印原矩阵*/ for(j=0;j<N;j+) printf("%5d",azj); printf("n"); r=js(a,N); /*调用js()函数计算原矩阵的行列式值*/ printf("n原矩阵的行列式 :|A|=%dn",r); if (r=0) printf(" |A|=0,原矩阵不存在逆矩阵!"); /*判断条件:若|A|=0,则原矩阵无逆矩阵,反之则存在逆矩阵*/ else n_1(a,b,N); /*调用n_1()函数,得到原矩阵各元素对应的"余子式",存放在数组bNN中*/ for(z=0;z<N;z+) /*求代数余子式,此时bNN中存放的为原矩阵各元素对应的"代数余子式"*/ for(j=0;j

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论