《矩阵运算与线性代数方程组方法计算机实验工作计划.doc》由会员分享,可在线阅读,更多相关《矩阵运算与线性代数方程组方法计算机实验工作计划.doc(15页珍藏版)》请在金锄头文库上搜索。
1、矩阵运算与线性代数方程组方法计算机实验工作计划篇一:矩阵运算与方程组求解附录 大学数学实验指导书项目五矩阵运算与方程组求解实验1 行列式与矩阵实验目的掌握矩阵的输入方法. 掌握利用Mathematica 对矩阵进行转置、加、减、 数乘、相乘、乘方等运算, 并能求矩阵的逆矩阵和计算方阵的行列式.基本命令在Mathematica中, 向量和矩阵是以表的形式给出的.1. 表在形式上是用花括号括起来的若干表达式, 表达式之间用逗号隔开. 如输入2,4,8,16x,x+1,y,Sqrt2则输入了两个向量.2. 表的生成函数 最简单的数值表生成函数Range, 其命令格式如下:Range正整数n生成表1,
2、2,3,4,n;Rangem, n生成表m,n;Rangem, n, dx生成表m,n, 步长为dx.2. 通用表的生成函数Table. 例如,输入命令Tablen3,n,1,20,2则输出1,27,125,343,729,1331,2197,3375,4913,6859输入Tablex*y,x,3,y,3则输出1,2,3,2,4,6,3,6,93. 表作为向量和矩阵一层表在线性代数中表示向量, 二层表表示矩阵. 例如,矩阵?23?45?可以用数表2,3,4,5表示.输入A=2,3,4,5则输出2,3,4,5命令MatrixFormA把矩阵A显示成通常的矩阵形式. 例如,输入命令:Matrix
3、FormA?23?则输出?45?注:一般情况下,MatrixFormA所代表的矩阵A不能参与运算.下面是一个生成抽象矩阵的例子.输入Tableai,j,i,4,j,3MatrixForm%则输出?a1,1a1,2?a2,1a2,2?a3,1a3,2?a4,1a4,2?a1,3?a2,3a3,3?a4,3?注:这个矩阵也可以用命令Array生成,如输入Arraya,4,3/MatrixForm则输出与上一命令相同.4. 命令IdentityMatrixn生成n阶单位矩阵.例如,输入IdentityMatrix5则输出一个5阶单位矩阵.5. 命令DiagonalMatrix生成n阶对角矩阵.例如,
4、输入DiagonalMatrixb1,b2,b3则输出b1,0,0,0,b2,0,0,0,b3它是一个以b1, b2, b3为主对角线元素的3阶对角矩阵.6. 矩阵的线性运算:A+B表示矩阵A与B的加法;k*A表示数k与矩阵A的乘法; 或 DotA,B表示矩阵A与矩阵B的乘法.7. 求矩阵A的转置的命令:TransposeA.8. 求方阵A的n次幂的命令:MatrixPowerA,n.9. 求方阵A的逆的命令:InverseA.10.求向量a与b的内积的命令:Dota,b.实验举例矩阵的运算?111?321?例 设A?1?11?,B?041?,求3AB?2A及ATB.?123?12?4?输入A
5、=?1,1,1,1,?1,1,1,2,3MatrixFormAB=3,2,1,0,4,1,?1,2,?4MatrixFormB?2A/MatrixFormTransposeA.B/MatrixForm则输出3AB?2A及ATB的运算结果分别为?1010?14?42?14?244?33?44?4?2?8?1?012?10?求方阵的逆?2?5例 设A?0?3?132?233?,求A?1. ?146?215?输入Clearmama=2,1,3,2,5,2,3,3,0,1,4,6,3,2,1,5;Inversema/MatrixForm则输出?7?4?11?2?1?2?5?4211629?81?811
6、1611?16?19?281?0?8?15?216?12求方阵的行列式a2b2?1a12abcd例 求D?c?d2?2b21c21d21a1b1c1d11 11输入ClearA,a,b,c,d;A=a2+1/a2,a,1/a,1,b2+1/b2,b,1/b,1,c2+1/c2,c,1/c,1,d2+1/d2,d,1/d,1;DetA/Simplify则输出a2b2c2d2?3?7例 设矩阵 A?11?2?5输入 7269425?697?83790?4?0?3?, 求|A|,tr,A3. ?7?6A=3,7,2,6,?4,7,9,4,2,0,11,5,?6,9,3,2,7,?8,3,7,5,7,
7、9,0,?6MatrixFormADetATrAMatrixPowerA,3/MatrixForm则输出|A|,tr,A3分别为115923?726?1848?1713?1743?801实验习题1 ?358?3150261516228?2218311006404?984?4511222384?2666477745?125?206294429423?111?1?1.设A?11?1?,B?1?24?,求3AB?2A及A?B.?1?11?051?10?2.设A?0?1?,求A10.一般地Ak?.?00?1111?1?a?111?11?a3.求?111?a11?的逆. ?1111?a1?1111?a?
8、1?423?4.设A?110?,且AB?A?2B,求B. ?123?x1?2x2?3x3?1,?5.利用逆矩阵解线性方程组?2x1?2x2?5x3?2,?3x?5x?x?1实验2 矩阵的秩与向量组的最大无关组实验目的 学习利用Mathematica求矩阵的秩,作矩阵的初等行变换; 求向 量组的秩与最大无关组.基本命令1. 求矩阵M的所有可能的k阶子式组成的矩阵的命令:MinorsM,k.2. 把矩阵A化作行最简形的命令:RowReduceA.3. 把数表1,数表2, ,合并成一个数表的命令:Joinlist1,list2,. 例如输入Join1,0,?1,3,2,1,1,5,4,6则输出1,0
9、,?1,3,2,1,1,5,4,6实验举例求矩阵的秩篇二:线性代数实验-2一、 高斯消元法解方程的Matlab实验1Matlab简介Matlab 是美国 The MathWorks公司出品的计算机科学计算软件,从1984年推出以来,受到广泛的推崇,在很多领域里,Matlab 已成为科技人员首选的计算机数学语言它的语言简洁,功能强大,几乎涵盖了所有的数学计算内容,人机交互性能好,其表达方式符合科技人员的思维习惯和书写习惯,使用短简的语句,便能完成许多复杂的计算MATLAB是“矩阵实验室”(Matrix Laboratory)的缩写,它是一种以矩阵运算为基础的交互式程序语言,因此特别适于线性代数求
10、解线性代数是一门理论比较抽象、计算强度很大的数学学科,并具有广泛的应用在传统教材给出的线性代数的计算方法,如用手工计算,只能解决一些低阶、变量较少的问题,而在实际中出现的大量的线性问题,都是高阶的和变量很多的,使用Matlab语言辅助线性代数的教学,近几年来已成为流行的教学模式本书将对Matlab语言作简单的介绍,并在各章中都安排使用Matlab语言的实验,以解决相应章节的计算问题Matlab是科技工作者得力的科学计算工具,读者可查阅有关的书籍对其进一步了解 2矩阵的表示当运行Matlab程序后,会出现一个命令窗,Matlab语句可在命令窗中提示符后键入?123?如要在Matlab中输入一个矩
11、阵A ?456?,可在Matlab提示符“”后面?789?键入: A=1 2 3 4 5 6 7 8 9 按回车键屏幕显示:A =1 2 3 4 5 6 7 8 9 也可以键入:A=1,2,3;4,5,6;7,8,9 或A=1 2 3;4 5 6;7 8 9按回车键,屏幕显示同上,变量A在程序中就代表所输入的矩阵。 3线性方程组的高斯消元法 线性方程组的高斯消元法,等价于对相应的矩阵做行初等变换,将其化为行最简型矩阵。在Matlab语言中,调用一个函数rref ,可将行矩阵化为最简型矩阵?12?1?123如要将矩阵 A?447?3化为阶梯形矩阵, 先键入矩阵: ?13?249?6?2712?A
12、=1 2 -1 4 7;1 2 3 4 3;-1 3 -2 4 9;6 -2 7 1 2屏幕显示: A =1 2 -1 4 7 1 2 3 4 3 -1 3 -2 4 9 6 -2 7 1 2 再调用函数,将化为A行最简型矩阵: rref 结果显示为: ans = 0 0 0 010000 0 00 ?x?2y3z?9例15 求解方程?2x?y+z?8?3x-z?3(1)键入方程矩阵A =1 2 3 9 2 -1 1 8 3 0 -1 3 (2)化为行阶梯矩阵 rref ans =1 0 0 2 0 1 0 -1 0 0 1 3所以 x=2 ,y=-1, z=3?x-2yz?例16:求解方程3?2x?3y-z?7?5x-8y-z?20A=1 -2 1 3;2 -3 -1 7;5 -8 -1 20;0 0 0 - -rref ans =1 0 -5 0 0 1 -3 0 0 0 0 1?x?5对应的方程为?y?3?0?1显然,方程无解?3x?4y-3z?-6例17 求解方程?-x?y+2z?4?3+2y+z?2 A=3 4 -3 -6;-1 -1 2 4;1 2 1 2;