数学实验矩阵的运算
矩阵运算及方程组求解
附录Ⅰ大学数学实验指导书项目五矩阵运算与方程组求解实验1 行列式与矩阵实验目的把握矩阵的输入方式. 把握利用Mathematica 以上版本) 对矩阵进行转置、加、减、数乘、相乘、乘方等运算, 并能求矩阵的逆矩阵和计算方阵的行列式.大体命令在Mathematica中, 向量和矩阵是以表的形式给出的.1. 表在形式上是用花括号括起来的假设干表达式, 表达式之间用逗号隔开.如输入{2,4,8,16}{x,x+1,y,Sqrt[2]}那么输入了两个向量.2. 表的生成函数(1)最简单的数值表生成函数Range, 其命令格式如下:Range[正整数n]—生成表{1,2,3,4,…,n};Range[m, n]—生成表{m,…,n};Range[m, n, dx]—生成表{m,…,n}, 步长为d x.2. 通用表的生成函数Table. 例如,输入命令Table[n^3,{n,1,20,2}]那么输出{1,27,125,343,729,1331,2197,3375,4913,6859}输入Table[x*y,{x,3},{y,3}]那么输出{{1,2,3},{2,4,6},{3,6,9}}3. 表作为向量和矩阵一层表在线性代数中表示向量, 二层表表示矩阵. 例如,矩阵⎪⎪⎭⎫ ⎝⎛5432 能够用数表{{2,3},{4,5}}表示.输入A={{2,3},{4,5}}那么输出 {{2,3},{4,5}}命令MatrixForm[A]把矩阵A 显示成通常的矩阵形式. 例如,输入命令:MatrixForm[A]那么输出 ⎪⎪⎭⎫⎝⎛5432注:一样情形下,MatrixForm[A]所代表的矩阵A 不能参与运算. 下面是一个生成抽象矩阵的例子. 输入Table[a[i,j],{i,4},{j,3}] MatrixForm[%]那么输出⎪⎪⎪⎪⎪⎭⎫⎝⎛]3,4[]2,4[]1,4[]3,3[]2,3[]1,3[]3,2[]2,2[]1,2[]3,1[]2,1[]1,1[a a a a a a a a a a a a 注:那个矩阵也能够用命令Array 生成,如输入Array[a,{4,3}]4. 命令IdentityMatrix[n]生成n 阶单位矩阵. 例如,输入IdentityMatrix[5]那么输出一个5阶单位矩阵(输出略).5. 命令DiagonalMatrix[…]生成n 阶对角矩阵. 例如,输入DiagonalMatrix[{b[1],b[2],b[3]}]那么输出 {{b[1],0,0},{0,b[2],0},{0,0,b[3]}}它是一个以b[1], b[2], b[3]为主对角线元素的3阶对角矩阵.6. 矩阵的线性运算:A+B 表示矩阵A 与B 的加法;k*A 表示数k 与矩阵A 的乘法; 或 Dot[A,B]表示矩阵A 与矩阵B 的乘法.7. 求矩阵A 的转置的命令:Transpose[A]. 8. 求方阵A 的n 次幂的命令:MatrixPower[A,n]. 9. 求方阵A 的逆的命令:Inverse[A]. 10.求向量a 与b 的内积的命令:Dot[a,b].实验举例矩阵的运算例 设,421140123,321111111⎪⎪⎪⎭⎫ ⎝⎛--=⎪⎪⎪⎭⎫ ⎝⎛--=B A 求A AB 23-及.B A T输入A={{-1,1,1},{1,-1,1},{1,2,3}} MatrixForm[A]B={{3,2,1},{0,4,1},{-1,2,-4}} MatrixForm[B]-2A AAB 23-BA T ⎪⎪⎪⎭⎫⎝⎛-----334421424141010⎪⎪⎪⎭⎫⎝⎛----10120821444,5123641033252312⎪⎪⎪⎪⎪⎭⎫⎝⎛=A .1-A ⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛--------1652116114581081218192829211161121162147.11111111111122222222ddd d c c c c b b b b a a a a D ++++=2222)1)()()()()()((dc b a abcd d c d b d a c b c a b a +--------,60975738723965110249746273⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛----=A .),(|,|3A A tr A 3),(|,|AA tr A ⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛---12574547726668013841222451984174340410063122181713228151626315018483582949442062726,150421321,111111111⎪⎪⎪⎭⎫ ⎝⎛--=⎪⎪⎪⎭⎫ ⎝⎛--=B A 求A AB 23-及.B A '2.设,001001⎪⎪⎪⎭⎫⎝⎛=λλλA 求.10A 一样地?=k A (k 是正整数).3.求⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛+++++a a a aa1111111111111111111111111的逆.4.设,321011324⎪⎪⎪⎭⎫ ⎝⎛-=A 且,2B A AB +=求.B5.利用逆矩阵解线性方程组⎪⎩⎪⎨⎧=++=++=++.353,2522,132321321321x x x x x x x x x实验2 矩阵的秩与向量组的最大无关组实验目的 学习利用Mathematica 以上版本)求矩阵的秩,作矩阵的初等行变换; 求向 量组的秩与最大无关组.大体命令1. 求矩阵M 的所有可能的k 阶子式组成的矩阵的命令:Minors[M,k].2. 把矩阵A 化作行最简形的命令:RowReduce[A].3. 把数表1,数表2, …,归并成一个数表的命令:Join[list1,list2,…]. 例如输入Join[{{1,0,-1},{3,2,1}},{{1,5},{4,6}}]那么输出 {{1,0,-1},{3,2,1},{1,5},{4,6}}实验举例求矩阵的秩例 设,815073*********⎪⎪⎪⎭⎫⎝⎛-------=M 求矩阵M 的秩.输入Clear[M];M={{3,2,-1,-3,-2},{2,-1,3,1,-3},{7,0,5,-1,-8}}; Minors[M,2]那么输出{{-7,11,9,-5,5,-1,-8,8,9,11},{-14,22,18,-10,10,-2, -16,16,18,22},{7,-11,-9,5,-5,1,8,-8,-9,-11}}可见矩阵M 有不为0的二阶子式. 再输入Minors[M,3]那么输出{{0,0,0,0,0,0,0,0,0,0}}可见矩阵M 的三阶子式都为0. 因此.2)(=M r例 求矩阵⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛-----3224211631095114047116的行最简形及其秩.输入A={{6,1,1,7},{4,0,4,1},{1,2,-9,0},{-1,3,-16,-1},{2,-4,22,3}} MatrixForm[A]RowReduce[A]⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛-00000000100005100101矩阵的初等行变换例 用初等变换法求矩阵.343122321⎪⎪⎪⎭⎫ ⎝⎛的逆矩阵.输入 A={{1,2,3},{2,2,1},{3,4,3}}MatrixForm[A]Transpose[Join[Transpose[A],IdentityMatrix[3]]]⎪⎪⎪⎭⎫ ⎝⎛---1112/532/3231)7,5,1,3(),5,4,3,1(),1,1,1,1(),3,2,1,1(4321==-==αααα⎪⎪⎪⎪⎪⎭⎫⎝⎛0000010010102001向量组的最大无关组 例 求向量组)0,5,1,2(),0,2,1,1(),14,7,0,3(),2,1,3,0(),4,2,1,1(54321=-===-=ααααα的最大无关组, 并将其它向量用最大无关组线性表示.输入Clear[A,B];A={{1,-1,2,4},{0,3,1,2},{3,0,7,14},{1,-1,2,0},{2,1,5,0}}; B=Transpose[A];RowReduce[B]⎪⎪⎪⎪⎪⎭⎫⎝⎛-000002/51000101102/10301非零行的首元素位于第一、二、四列,因此421,,ααα是向量组的一个最大无关组. 第三列的前两个元素别离是3,1,于是.3213ααα+=第五列的前三个元素别离是,25,1,21-于是.25214215αααα++-=实验习题1.求矩阵⎪⎪⎪⎪⎪⎭⎫⎝⎛----=12412116030242201211A 的秩.2.求t , 使得矩阵⎪⎪⎪⎭⎫⎝⎛-=t A 23312231的秩等于2.3.求向量组)0,0,1(),1,1,1(),1,1,0(),1,0,0(4321====αααα的秩.4.当t 取何值时, 向量组),3,1(),3,2,1(),1,1,1(321t ===ααα的秩最小?5.向量组)1,1,1,1(),1,1,1,1(),1,1,1,1(),1,1,1,1(4321-=--=--==αααα是不是线性相关?6.求向量组)6,5,4,3(),5,4,3,2(),4,3,2,1(321===ααα的最大线性无关组. 并用最大无关 组线性表示其它向量.7.设向量),6,3,3,2(),6,3,0,3(),18,3,3,8(),0,6,3,1(2121=-=-=-=ββαα求证:向量组21,αα 与21,ββ等价.实验3 线性方程组实验目的 熟悉求解线性方程组的经常使用命令,能利用Mathematica 命令各类求线性方程组的解. 明白得运算机求解的有效意义.大体命令1.命令NullSpace []A ,给出齐次方程组0=AX 的解空间的一个基.2.命令LinearSolve []b A ,,给出非齐次线性方程组b AX =的一个特解.3.解一样方程或方程组的命令Solve 见Mathematica 入门.实验举例求齐次线性方程组的解空间设A 为n m ⨯矩阵,X 为n 维列向量,那么齐次线性方程组0=AX 必然有解. 假设矩阵A 的秩等于n ,那么只有零解;假设矩阵A 的秩小于n ,那么有非零解,且所有解组成一贯量空间. 命令NullSpace 给出齐次线性方程组0=AX 的解空间的一个基.例 求解线性方程组⎪⎪⎩⎪⎪⎨⎧=---=++=+--=--+.0532,0375,023,02432143243214321x x x x x x x x x x x x x x x输入Clear[A];A={{1,1,-2,-1},{3,-2,-1,2},{0,5,7,3},{2,-3,-5,-1}}; NullSpace[A]那么输出{{-2,1,-2,3}}说明该齐次线性方程组的解空间是一维向量空间,且向量(-2,1,-2,3)是解空间的基. 注:若是输出为空集{ },那么说明解空间的基是一个空集,该方程组只有零解.例 向量组)7,5,1,3(),5,4,3,1(),1,1,1,1(),3,2,1,1(4321==-==αααα是不是线性相关? 依照概念,若是向量组线性相关,那么齐次线性方程组044332211='+'+'+'ααααx x x x 有非零解.输入Clear[A,B];A={{1,1,2,3},{1,-1,1,1},{1,3,4,5},{3,1,5,7}}; B=Transpose[A]; NullSpace[B]输出为{{-2,-1,0,1}}说明向量组线性相关,且02421=+--ααα非齐次线性方程组的特解例 求线性方程组⎪⎪⎩⎪⎪⎨⎧=----=++=+--=--+45322375222342432143243214321x x x x x x x x x x x x x x x 的特解.输入Clear[A,b];A={{1,1,-2,-1},{3,-2,-1,2},{0,5,7,3},{2,-3,-5,-1}}; b={4,2,-2,4} LinearSolve[A,b]输出为{1,1,-1,0}注: 命令LinearSolve 只给出线性方程组的一个特解.例 求出通过平面上三点(0,7),(1,6)和(2,9)的二次多项式,2c bx ax ++并画出其图形.依照题设条件有 ,924611700⎪⎩⎪⎨⎧=+⋅+⋅=+⋅+⋅=+⋅+⋅c b a c b a c b a 输入Clear[x];A={{0,0,1},{1,1,1},{4,2,1}} y={7,6,9}p=LinearSolve[A,y]Clear[a,b,c,r,s,t];{a,b,c}.{r,s,t} f[x_]=p.{x^2,x,1};Plot[f[x],{x,0,2},GridLines ->Automatic,PlotRange ->All];那么输出c b a ,,的值为 {2,-3,7}并画出二次多项式7322+-x x 的图形(略).非齐次线性方程组的通解用命令Solve 求非齐次线性方程组的通解.例当a 为何值时,方程组⎪⎩⎪⎨⎧=++=++=++111321321321ax x x x ax x x x ax 无解、有唯一解、有无穷多解?当方程组有解时,求通解.先计算系数行列式,并求a ,使行列式等于0. 输入Clear[a];Det[{{a,1,1},{1,a,1},{1,1,a}}]; Solve[%==0,a]那么输出{{a →-2},{a →1},{a →1}} 当a 2-≠,a 1≠时,方程组有唯一解.输入Solve[{a*x +y +z ==1,x +a*y +z ==1,x +y +a*z ==1},{x,y,z}]则输出{{x →,21a + y →,21a+ z →a +21}}当a =-2时,输入Solve[{-2x+y+z==1,x -2y+z==1,x+y -2z==1},{x,y,z}]则输出{ }说明方程组无解. 当a =1时,输入Solve[{x+y+z==1,x+y+z==1,x+y+z==1},{x,y,z}]则输出{{x →1-y -z}}}说明有无穷多个解.非齐次线性方程组的特解为(1,0,0),对应的齐次线性方程组的基础解 系为为(-1,1,0)与(-1,0,1).例 求非齐次线性方程组 ⎪⎩⎪⎨⎧-=+-+=-+-=+-+2534422312432143214321x x x x x x x x x x x x 的通解.解法1输入A={{2,1,-1,1},{3,-2,1,-3},{1,4,-3,5}};b={1,4,-2}; particular=LinearSolve[A,b] nullspacebasis=NullSpace[A]generalsolution=t*nullspacebasis[[1]]+k*nullspacebasis[[2]]+Flatten[particular]generalsolution 其通解为⎪⎪⎪⎪⎪⎭⎫ ⎝⎛-+⎪⎪⎪⎪⎪⎭⎫ ⎝⎛-+⎪⎪⎪⎪⎪⎭⎫ ⎝⎛+⎪⎪⎪⎪⎪⎭⎫ ⎝⎛007/57/6107/97/1017/57/14321t k x x x x (k ,t 为任意常数)实验习题1.解方程组⎪⎩⎪⎨⎧=++=++=+-.024,02,032321321321x x x x x x x x x2.解方程组⎪⎩⎪⎨⎧=++-=++-=++-.0111784,02463,03542432143214321x x x x x x x x x x x x3. 解方程组⎪⎩⎪⎨⎧-=-+-=+-=-+-.22,3,44324314324321x x x x x x x x x x4.解方程组⎪⎩⎪⎨⎧=++-=+++=-++.254,32,22432143214321x x x x x x x x x x x x5.用三种方式求方程组⎪⎪⎩⎪⎪⎨⎧=-+=-+=-+=-+127875329934,8852321321321321x x x x x x x x x x x x 的唯一解.6.当b a ,为何值时,方程组⎪⎪⎩⎪⎪⎨⎧-=+++=--+-=++=+++1232)3(122043214324324321ax x x x b x x a x x x x x x x x 有唯一解、无解、有无穷多解?对后者求通解.实验4 投入产出模型(综合实验)实验目的 利用线性代数中向量和矩阵的运算, 线性方程组的求解等知识,成立在经济 分析中有重要应用的投入产出数学模型. 把握线性代数在经济分析方面的应用.应用举例假设某经济系统只分为五个物质生产部门:农业、轻工业、重工业、运输业和建筑业, 五个部门间某年生产分派关系的统计数据可列成下表1. 在该表的第一象限中,每一个部门都以生产者和消费者的双重身份显现. 从每一行看,该部门作为生产部门以自己的产品分派给各部门;从每一列看,该部门又作为消耗部门在生产进程中消耗各部门的产品. 行与列的交叉点是部门之间的流量,那个量也是以双重身份显现,它是行部门分派给列部门的产品量,也是列部门消耗行部门的产品量.表1投入产出平稳表(单位: 亿元)注: 最终产品舍去了净出口.(修改表:加双线区分为四个象限)在第二象限中,反映了各部门用于最终产品的部份. 从每一行来看,反映了该部门最终产 品的分派情形;从每一列看,反映了用于消费、积存等方面的最终产品别离由各部门提供的数 量情形.在第三象限中,反映了总产品中新制造的价值情形,从每一行来看,反映了各部门新制造 价值的组成情形;从每一列看,反映了该部门新制造的价值情形.采纳与第三章第七节完全相同的记号,可取得关于表1的产品平稳方程组y x A E =-)( (1)其中,A 为直接消耗系数矩阵,依照直接消耗系数的概念),,2,1,(n j i x x a jij ij ==,易求出表1所对应的直接消耗系数矩阵:⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛=⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛==⨯0603.00425.00372.00227.00371.00411.00250.00416.00240.00143.03425.02083.05013.01451.00923.00685.00417.00252.01438.00231.00329.00250.00462.02557.01709.01825110120051540620131297135101171825751200305406225312975351045182562512002505406271031294543510324182512512005054061363129450351081182560120030540625031298003510600)(55ij a A 利用Mathematica 软件(以下计算进程均用此软件实现,再也不重述),可计算出⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=--11036.10739105.00982964.00672149.00637761.00884203.005447.1100805.00594445.0035022.0859487.0529259.016653.2495145.032573.0122005.00752055.00006552.020166.10492156.0132248.00874144.015254.0402651.024175.1)(1A E 为方便分析,将上述列昂节夫逆矩阵列成表2.表2下面咱们来分析上表中各列诸元素的经济意义. 以第2列为例,假设轻工业部门提供的 最终产品为一个单位, 其余部门提供的最终产品均为零, 即最终产品的列向量为 ,)0,0,0,1,0(T y =于是,轻工业部门的单位最终产品对5个部门的直接消耗列向量为⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛=⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛==0227.00240.01451.01438.02557.0000100603.00425.00372.00227.00371.00411.00250.00416.00240.00143.03425.02083.05013.01451.00923.00685.00417.00252.01438.00231.00329.00250.00462.02557.01709.0)0(Ay x通过中间产品向量)0(x 产生的间接消耗为⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛==0205373.00146768.0129979.00327974.00885192.0)0()1(Ax x , ⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛==0107259.000867109.00881789.00120554.00305619.0)0(2)2(x A x⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛==00570305.000505222.0054254.000575796.00129491.0)0(3)3(x A x , ⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛==00318798.000294103.00322339.000309566.000650578.0)0(4)4(x A x于是,轻工业部门的单位最终产品对五个部门总产品的需求量为++++++=)4()3()2()1()0(x x x x x y x.0629.00553.04497.01975.13942.000318798.000294103.00322339.000309566.000650578.000570305.000505222.0054254.000575796.00129491.00107259.000867109.00881789.00120554.00305619.00205733.00146768.0129979.00327974.00885192.000010⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛≈+⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛+⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛+⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛+⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛+⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=其中向量x 为列昂惕夫逆矩阵1)(--A E 的第2列, 该列5个元素别离是部门2生产一个单位 最终产品对部门一、二、3、4、5总产品的需求量, 即总产品定额. 同理, 能够说明列昂节夫 逆矩阵中第一、3、4、5列别离是部门一、3、4、5生产一个单位最终产品对部门一、二、3、 4、5的总产品定额.对应于附表1的完全消耗系数矩阵⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=--=-11036.00739105.00982964.00672149.00637761.00884203.005447.0100805.00594445.0035022.0859487.0529259.016653.1495145.032573.0122005.00752055.00006552.020166.00492156.0132248.00874144.015254.0402651.024175.0)(1EA E B最终产品是外生变量, 即最终产品是由经济系统之外的因素决定的, 而内生变量是由经济系统内的因素决定的. 此刻假定政府部门依照社会进展和人民生活的需要对表1的最终产品作了修改, 最终产品的增加量别离为农业2%, 轻工业7%, 重工业5%, 运输业5%, 建筑业 4%, 写成最终产品增量的列向量为,)51,5.37,15.52,09.160,4.35(T y =∆那么产品的增加量x ∆可由式(8)近似计算到第5项, 得+⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡+⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡+⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡+⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡+⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=+∆+∆+∆+∆+∆=∆515.3715.5209.1604.35515.3715.5209.1604.35515.3715.5209.1604.35515.3715.5209.1604.35515.375.5209.1604.35432)3()2()1()0(A A A A x x x x y x .)8033.744899.57169.238749.204083.121(T ≈其中,y A x ∆=∆)0(为各部门生产y ∆直接消耗各部门产品数量;而后面各项的和为各部门生 产y ∆的全数间接消耗的和.实验报告下表给出的是某城市某年度的各部门之间产品消耗量和外部需求量(均以产品价值计算, 单位: 万元), 表中每一行的数字是某一个部门提供给各部门和外部的产品价值.(1) 试列出投入—产出简表, 并求出直接消耗矩阵;(2) 依照预测, 从这一年度开始的五年内, 农业的外部需求每一年会下降1%, 轻工业和商业的外部需求每一年会递增6%, 而其它部门的外部需求每一年会递增3%, 试由此预测这五年内该城市和各部门的总产值的平均年增加率;(3) 编制第五年度的打算投入产出表.实验5 交通流模型(综合实验)实验目的利用线性代数中向量和矩阵的运算, 线性方程组的求解等知识,成立交通流模型. 把握线性代数在交通计划方面的应用.应用举例假设某城市部份单行街道的交通流量(每小时通过的车辆数)如图5-1所示.300 300 300+-432xxx=300+54xx=500-67xx=200+21xx=800+51xx=800+87xx=10009x=400-910xx=20010x=600++638xxx=1000⎪⎪⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎪⎨⎧⎪排版时只保留图,不要方程组图5-1试成立数学模型确信该交通网络未知部份的具体流量.假定上述问题知足以下两个大体假设(1)全数流入网络的流量等于全数流出网络的流量;(2)全数流入一个节点的流量等于流出此节点的流量.那么依照图5-1及上述大体两个假设,可成立该问题的线性方程组⎪⎪⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎪⎪⎨⎧=++==+-==+=+=+=+-=+=+-1000600200400100080018002005003008631010998751217654432x x x x x x x x x x x x x x x x x x x x , 即 ⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛---100060020040010008008002005003000010100110000000001100000000010000000000110000000000010001000000001100011000000000011000000000111010987654321x x x x x x x x x x 假设将上述矩阵方程记为b Ax =,那么问题就转化为求b Ax =的全数解. 下面咱们利用 Mathmatica 软件来求解一、输入矩阵A ,并利用RowReduce[A ]命令求得A 的秩为8. 输入RowReduce[A]⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛-00000000000000000000100000000001000000000011000000001010000000000110000000000100000001001000000100010=Ax 输入In[3]:=NullSpace[A]⎪⎪⎭⎫ ⎝⎛----00000110110011100000⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛--+⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛--=+=00000110110011100000212211C C c c ξξη21,C C 3、输入增广阵(A b ),求出其秩为8, 由,108)()(=<==n Ab r A r 知方程组有无穷多个解.输入RowReduce[Ab]⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛-0000000000000000000006001000000000400010000000010000011000000800001010000050000000110002000000000100000000100108000000010001b Ax =输入 LinearSolve[A,b]Out[9]={{800},{0},{200},{500},{0},{800},{1000},{0},{400},{600}}那么取得所求非齐次线性方程组的一个特解:T )6004000100080005002000800(*=ξ综上所述,咱们就取得了非齐次线性方程组b Ax =的全数解为,*2211*ξξξξη++++=C C x (21,C C 为任意常数).在解的表示式中, x 的每一个分量即为交通网络中未知部份的具体流量, 该问题有无穷 多解(什么缘故? 并试探其实际意义).本模型具有实际应用价值, 求出该模型的解, 能够为交通计划设计部门提供解决交通堵 塞、车流运行不顺畅等问题的方式, 明白在何处应建设立交桥, 那条路应设计多宽等, 为城镇交通计划提供科学的指导意见. 可是,在本模型中,咱们只考虑了单行街道如此一种简单情形, 更复杂的情形留待读者在更高一级的课程中去研究. 另外,本模型还可推行到电路分析中的 网络节点流量等问题中.实验报告请读者应用本模型的思想方式, 为你所在或你熟悉的城镇成立一个区域的交通流量模 型. 并提供一个具体的解决方案, 即从无穷多个解中依照具体限制确信出一个具体的解决方 案.。
mathematica矩阵运算
二、实验目的
熟悉Mathematica软件中关于矩阵运算的各 种命令
三、常用命令
1. MatrixForm[A] 功能:把矩阵A屏幕输入.
2. Transpose[A] 功能:乘矩阵A的转置矩阵.
3. A+B 功能:求矩阵A与B的和运算.
4. A-B 功能:求矩阵A与B的减运算.
MatrixForm[A]
Out[1]:={{-2,5,-1,3},{1,-9,13,7},{3,-1,5,-5},{2,8,-7,-10}}
2 5 1 3
Out[2]//MatrixForm=
1
3
9 13 1 5
7
5
2
8
7
10
In[3]:=Det[A]
Out[3]:=312
2.In[4]:B=Transpose[A] MatrixForm[B]
四、例子
简单操作步骤
In[1]:=A={{3,1,1},{2,1,2},{1,2,3}} MatrixForm[A]
Out[1]:={{3,1,1},{2,1,2},{1,2,3}}
Out[2]//MatrixForm=
3 1 1
2
1
2
1 2 3
In[3]:=B={{1,1,-1},{2,-1,0},{1,0,1}} MatrixForm[B]
Out[4]:={{-2,1,3,2},{5,-9,-1,8},{-1,13,5,-7},{3,7,-5,-10}}
2 1 3 2
Out[5]//MatrixForm=
5
9 1
8
1 13 5 7
3
数学实验第五讲 用mathematica的相应功能进行向量矩阵运算
授课老师: 所属院系:数计学院 E-mai:l
第五讲
用Mathematic的a 相应功能进行向量、矩阵运算
用Mathematic的a相应功能进行向量、矩阵运算
? 向量和矩阵的输入 ? 获得表的元素 ? 表的维数和矩阵的加、减法 ? 向量和矩阵的乘法 ? 关于矩阵的几个常用函数
用Mathematic的a相应功能进行向量、矩阵运算
,e2}}
m1? m2
注意:“? ”是Mathematic特a 有? 的,这种乘法不满足 交换律,当向量与矩阵相乘用“ ”时,Mathematica 能自动把向量看做行向量或列向量
关于矩阵的几个常用函数
?
Inverse[M] :
?
Transpose[M]
?
Det[M]
?
Eigenvalues[M]
获得表的元素
在Mathematic中a 获得表的元素的规则如下:
? 若A是一个向量,则A[i] 表示向量的第i个元素。
? 若M是一个m行n列矩阵,则用M[[i]] 第i行。
表示矩阵的
? 用M[[i,j]]
表示第i行、第j列交叉点处的元素。
?
用Transpose[m][[j]]
表示M的第j列。
? 用,j2}]]
? 实验内容
? 矩阵的输入。 123
输入矩阵 A= 4 5 6 78 9
? 矩阵的基本运算
?求两个矩阵的和 ?数乘矩阵 ?矩阵相乘
实验6 矩阵的初等变换
? 实验内容
? 矩阵的初等变换
用初等变换将矩阵 A=
-1 0 1 2 3 1 0 -1 0214
化为行标准型。
x1 ? 3x2 ? 6x4 ? 9 2x2 ? x3 ? 2x4 ? ?5
matlab矩阵运算实验报告
matlab矩阵运算实验报告Matlab矩阵运算实验报告一、引言矩阵运算是数学和工程领域中的重要概念之一,它在各个领域中都有广泛的应用。
Matlab作为一种强大的数学软件工具,提供了丰富的矩阵运算功能,可以帮助我们进行高效的数值计算和数据处理。
本实验报告将介绍Matlab中的矩阵运算功能,并通过实例展示其在实际问题中的应用。
二、矩阵运算的基本概念矩阵是由若干个数按照行和列排列形成的一个矩形阵列,它是线性代数中的基本工具。
在Matlab中,矩阵可以通过直接输入数值或使用内置函数生成。
矩阵运算包括加法、减法、乘法、转置等操作,这些操作可以对矩阵的每个元素进行运算,也可以对整个矩阵进行运算。
三、矩阵运算的实例分析1. 矩阵的创建与赋值在Matlab中,可以使用以下命令创建一个矩阵,并对其进行赋值操作:A = [1, 2, 3; 4, 5, 6; 7, 8, 9];这样就创建了一个3行3列的矩阵A,并对其进行了赋值。
可以通过输入A来查看矩阵A的内容。
2. 矩阵的加法与减法矩阵的加法和减法是按照对应元素进行运算的。
例如,对于两个3行3列的矩阵A和B,可以使用以下命令进行加法运算:C = A + B;同样地,可以使用以下命令进行减法运算:D = A - B;这样就得到了矩阵C和D。
3. 矩阵的乘法矩阵的乘法是按照行乘以列的方式进行的。
例如,对于一个3行2列的矩阵A和一个2行4列的矩阵B,可以使用以下命令进行乘法运算:C = A * B;这样就得到了一个3行4列的矩阵C。
4. 矩阵的转置矩阵的转置是将矩阵的行和列进行交换的操作。
例如,对于一个3行2列的矩阵A,可以使用以下命令进行转置操作:B = A';这样就得到了一个2行3列的矩阵B。
四、矩阵运算的应用实例矩阵运算在实际问题中有着广泛的应用。
以下是一个简单的实例,通过矩阵运算来解决线性方程组的问题。
假设有一个线性方程组:2x + y = 4x + 3y = 6可以将其表示为矩阵形式:A = [2, 1; 1, 3];B = [4; 6];通过矩阵运算可以求解出未知数x和y的值:X = A \ B;这样就得到了未知数x和y的值。
数学实验矩阵的运算
数学实验报告学院:班级:学号:姓名:完成日期:实验四矩阵的运算(一)投入产出分析一.实验目的1.理解投入产出分析中的基本概念和模型;2.从数学和投入产出理论的角度,理解矩阵乘法、逆矩阵等的含义。
二.问题描述设国民经济由农业、制造业和服务业三个部门构成,已知某年它们之间的投入产出关系、部需求、初始投入等如表1-1所示表1-1国民经济三产部门之间的投入产出表根据表回答下列问题:(1)如果农业、制造业、服务业外部需求为50,150,100,问三个部门总产出分别为多少?(2)如果三个部门的外部需求分别增加一个单位,问他们的总产出分别为多少?三.实验过程1.问题(1)的求解(1)求直接消耗矩阵A根据直接消耗的计算公式a ij=x ij/x j和各部门中间需求;x n a n运行如下代码可得直接消耗系数表。
X=[15 20 30;30 10 45;20 60 0];X_colsum=[100 200 150];X_rep=repmat(X_colsum,3,1)A=X./ X_rep运行结果为:A =0.1500 0.1000 0.20000.3000 0.0500 0.30000.2000 0.3000 0(2)求解根据公式X=(I-A)-1y在运行如下代码y=[50;150;100];n=size(y,1);W=eye(n)-A;X=W\y运行结果为X =139.2801267.6056208.1377即三个部门的总产出分别为139.2801,267.6056, 208.1377亿元。
2.问题2求解设外部需求由y增加至y+Δy,则产出x的增量为Δx=(I-A)-1(y+Δy)- (I-A)-1y=(I-A)-1Δy利用问题(1)求得的I-A矩阵,再运行如下的MATLAB 代码可得问题的结果:dx=inv(W)运行结果:dx =1.3459 0.2504 0.34430.5634 1.2676 0.49300.4382 0.4304 1.2167根据上述结果可知,当农业的外部需求增加1个单位时,农业、制造业、服务业的总产出分别增加1.3459,0.5634,0.4382个单位;当制造业的外部需求增加1个单位时,农业、制造业、服务业的总产出分别增加0.2504,1.2676,0.4304个单位;当服务业的外部需求增加1个单位时,农业、制造业、服务业的总产出分别增加0.3443,0.4930,1.2167个单位。
矩阵的运算及其运算规则
矩阵的运算及其运算规则矩阵是线性代数中的基本概念之一,它是一个由数个数按照矩形排列的数表。
矩阵的运算是对矩阵进行各种数学操作的过程,通过矩阵的运算可以实现对数据的处理和分析,广泛应用于各个领域。
矩阵的基本运算包括矩阵的加法、矩阵的乘法和矩阵的转置。
矩阵的加法是指将两个矩阵对应元素相加得到一个新的矩阵。
矩阵的乘法是指将两个矩阵按照一定规则相乘得到一个新的矩阵。
矩阵的转置是指将矩阵的行和列对调得到一个新的矩阵。
矩阵的运算规则包括加法的交换律和结合律,乘法的结合律和分配律。
加法的交换律指两个矩阵相加的结果与顺序无关;加法的结合律指三个矩阵相加的结果与加法的顺序无关。
乘法的结合律指三个矩阵相乘的结果与乘法的顺序无关;乘法的分配律指一个数与两个矩阵相乘的结果等于这个数与每个矩阵相乘后再相加的结果。
矩阵运算的应用非常广泛,特别是在线性代数、概率论和统计学中。
在线性代数中,矩阵的运算可以用于求解线性方程组、计算矩阵的秩和行列式、求解特征值和特征向量等问题。
在概率论和统计学中,矩阵的运算可以用于计算协方差矩阵、相关矩阵和条件概率矩阵,从而帮助我们分析和理解数据的关系和分布。
除了基本的矩阵运算外,还有一些特殊的矩阵运算。
例如,矩阵的逆运算是指对于一个可逆矩阵,可以找到一个矩阵使得两个矩阵相乘等于单位矩阵。
矩阵的转置运算是指将矩阵的行和列对调得到一个新的矩阵。
矩阵的迹运算是指矩阵主对角线上元素的和。
这些特殊的矩阵运算在实际应用中也有着重要的作用。
总的来说,矩阵的运算及其运算规则是线性代数中的重要内容,通过对矩阵的运算可以实现对数据的处理和分析,广泛应用于各个领域。
矩阵的运算规则包括加法的交换律和结合律,乘法的结合律和分配律。
除了基本的矩阵运算外,还有一些特殊的矩阵运算,如矩阵的逆运算、转置运算和迹运算。
这些矩阵运算在实际应用中具有重要作用,可以帮助我们解决各种数学和统计问题。
矩阵的基本运算
矩阵的基本运算矩阵是数学中非常重要的一个概念,它在各个领域都有着广泛的应用。
矩阵的基本运算包括矩阵的加法、减法、数乘和矩阵的乘法等。
本文将围绕这些基本运算展开讨论。
首先,我们来讲解矩阵的加法。
如果两个矩阵A和B的维数相同,即都是m行n列的矩阵,那么它们可以相加。
矩阵的加法运算是将对应位置的元素相加得到新的矩阵。
即若A=(a_{ij}),B=(b_{ij}),则A+B=(a_{ij}+b_{ij})。
例如,给定两个矩阵A和B如下:A = [1 2 3][4 5 6]B = [7 8 9][10 11 12]则A与B的和C为:C = [1+7 2+8 3+9][4+10 5+11 6+12]简化运算后,C的结果为:C = [8 10 12][14 16 18]接下来我们讨论矩阵的减法。
矩阵的减法运算与加法类似,也是将对应位置的元素相减得到新的矩阵,即若A=(a_{ij}),B=(b_{ij}),则A-B=(a_{ij}-b_{ij})。
例如,给定两个矩阵A和B如下:A = [1 2 3][4 5 6]B = [7 8 9][10 11 12]则A与B的差D为:D = [1-7 2-8 3-9][4-10 5-11 6-12]简化运算后,D的结果为:D = [-6 -6 -6][-6 -6 -6]矩阵的数乘是指将一个矩阵的每个元素都乘以一个实数。
即若A=(a_{ij})是一个m行n列的矩阵,k是一个实数,那么kA=(ka_{ij})。
例如,给定一个矩阵A和一个实数k如下:A = [1 2 3][4 5 6]k = 2则kA的结果为:kA = [2*1 2*2 2*3][2*4 2*5 2*6]简化运算后,kA的结果为:kA = [2 4 6][8 10 12]最后我们来讨论矩阵的乘法。
矩阵的乘法运算是指矩阵与矩阵之间进行乘法运算,得到一个新的矩阵。
矩阵的乘法有一定的规则,即若A是一个m行n列的矩阵,B是一个n行p列的矩阵,那么它们可以相乘,得到一个m行p列的矩阵C。
矩阵式实验报告
一、实验目的1. 理解矩阵的基本概念和性质。
2. 掌握矩阵的运算方法,包括加法、减法、乘法等。
3. 学习矩阵的应用,如线性方程组的求解。
4. 提高数学建模和解决问题的能力。
二、实验内容本次实验主要围绕矩阵的运算和应用展开,具体内容包括:1. 矩阵的加法与减法2. 矩阵的乘法3. 矩阵的逆4. 线性方程组的求解三、实验步骤1. 矩阵的加法与减法(1)选择两个矩阵A和B,确保它们具有相同的行数和列数。
(2)将矩阵A和B对应位置的元素相加或相减,得到新的矩阵C。
(3)验证矩阵C的行数和列数与矩阵A和B相同。
2. 矩阵的乘法(1)选择两个矩阵A和B,确保矩阵A的列数等于矩阵B的行数。
(2)计算矩阵A的每一行与矩阵B的每一列的点积,得到新的矩阵C。
(3)验证矩阵C的行数等于矩阵A的行数,列数等于矩阵B的列数。
3. 矩阵的逆(1)选择一个可逆矩阵A。
(2)使用高斯-约当消元法求解矩阵A的逆。
(3)验证矩阵A与其逆矩阵的乘积为单位矩阵。
4. 线性方程组的求解(1)选择一个线性方程组,例如:AX = B,其中A是系数矩阵,X是未知数矩阵,B是常数矩阵。
(2)使用高斯-约当消元法求解线性方程组。
(3)验证求解得到的X矩阵是否满足原方程组。
四、实验结果与分析1. 矩阵的加法与减法通过实验,我们发现矩阵的加法与减法运算满足交换律和结合律,且结果矩阵的行数和列数与原矩阵相同。
2. 矩阵的乘法实验结果表明,矩阵的乘法运算满足交换律和结合律,且结果矩阵的行数等于第一个矩阵的行数,列数等于第二个矩阵的列数。
3. 矩阵的逆实验发现,对于可逆矩阵,其逆矩阵存在,且满足A A^(-1) = A^(-1) A = E(单位矩阵)。
4. 线性方程组的求解通过高斯-约当消元法,我们成功求解了线性方程组,并验证了求解结果的正确性。
五、实验结论1. 理解了矩阵的基本概念和性质,掌握了矩阵的运算方法。
2. 学会了使用矩阵求解线性方程组,提高了数学建模和解决问题的能力。
矩阵计算的方法
矩阵计算的方法
矩阵的计算,首先确认矩阵是否可以相乘。
只有第一个矩阵的列的个数等于第二个矩阵的行的个数,这样的两个矩阵才能相乘。
再计算结果矩阵的行列数。
画一个空白的矩阵,来代表矩阵乘法的结果。
矩阵A和矩阵B相乘得到的矩阵,与矩阵A有相同的行数,与矩阵B
有相同的列数。
矩阵指在数学中,按照长方阵列排列的复数或实数集合,最早来自于方程组的系数及常数所构成的方阵,由19世纪英国数学家凯利首先提出。
它是高等代数学中的常见工具,其运算是数值分析领域的重要问题。
将矩阵分解为简单矩阵的组合,可以在理论和实际应用上简化矩阵的运算。
矩阵的乘法规律:
不满足交换律,A×B ≠ B×A。
满足结合律,A×(B×C) = (A×B)×C。
满足分配率,A×(B+C) =A×B + A×C
单位矩阵:任何矩阵乘以单位矩阵都等于它本身,且此处复合交换律,及任意矩阵乘以单位矩阵=单位矩阵乘以此矩阵,满足:A×I = I×A =A。
单位矩阵特征:主对角线元素都等于1,其余元素都等于0 的方阵是单位矩阵,方阵指行列数相等的矩阵。
两矩阵相乘算法
两矩阵相乘算法一、 实验描述实验要求实现两矩阵的相乘,并将结果输出。
二、 实验原理两个矩阵相乘也是矩阵的一种常用的运算。
设矩阵M 是m1×n1矩阵,N 是m2×n2矩阵;若可以相乘,则必须满足矩阵M 的列数n1与矩阵N 的行数m2相等,才能得到结果矩阵Q=M ×N (一个m1×n2的矩阵)。
数学中矩阵Q 中的元素的计算方法如下:其中: 1≤i ≤m1, 1≤j ≤n2。
三、 实验代码#include <iostream>#include <iomanip>using namespace std;void main(){ const int m=3;const int n=3;int a[m][n],i,j;for(i=0;i<m;i++){ for( j=0;j<n;j++){ cout<<"a["<<i<<"]"<<"["<<j<<"]="; cin>>a[i][j]; } }for( i=0;i<m;i++){ for( j=0;j<n;j++) cout<<setw(4)<<a[i][j];cout<<endl; }const int k=3;const int h=2;int b[k][h],x,y;for( x=0;x<k;x++){ for( y=0;y<h;y++) {cout<<"b["<<x<<"]"<<"["<<y<<"]="; cin>>b[x][y]; } }for( x=0;x<k;x++){ for( y=0;y<h;y++)cout<<setw(4)<<b[x][y]; cout<<endl; }int c[m][h];for(int r=0;r<m;r++){ for(int t=0;t<h;t++){ c[r][t]=0;for(int s=0;s<k;s++) { c[r][t]+=a[r][s]*b[s][t]; } }}cout<<"c["<<m<<"]"<<"["<<h<<"]"<<endl;for(int z=0;z<m;z++){ for(int w=0;w<h;w++) cout<<setw(4)<<c[z][w]; cout<<endl; }}四、 运行结果 ∑=⨯=11]][[]][[]][[n k j k N k i M j i Q图1 运行结果五、实验总结本次实现两个矩阵相乘,而且出于方便,只设置了3行3列,对其他比如N个矩阵的相乘没作研究,希望在以后的练习中能找到更好的方法实现。
北理工数学实验报告
实验名称:线性代数实验——矩阵运算与线性方程组的求解实验目的:1. 理解矩阵的基本概念和运算规则。
2. 掌握线性方程组的求解方法。
3. 利用数学软件进行矩阵运算和线性方程组的求解。
实验时间:2023年X月X日实验地点:北理工计算机实验室实验器材:1. 计算机2. MATLAB软件3. 纸和笔实验内容:一、矩阵的基本运算1. 矩阵加法:给定两个矩阵A和B,它们的行数和列数必须相同。
矩阵加法是将对应位置的元素相加。
2. 矩阵减法:与矩阵加法类似,矩阵减法是将对应位置的元素相减。
3. 矩阵乘法:给定两个矩阵A和B,如果A的列数等于B的行数,则A与B可以进行乘法运算。
矩阵乘法的结果是一个新矩阵,其元素是A的行与B的列对应元素的乘积之和。
4. 转置矩阵:给定一个矩阵A,其转置矩阵A'的行数等于A的列数,列数等于A 的行数。
转置矩阵的元素是A中对应位置的元素。
二、线性方程组的求解1. 高斯消元法:通过行变换将线性方程组转化为上三角矩阵,然后逐步求解未知数。
2. 克莱姆法则:当线性方程组系数矩阵的行列式不为零时,可以求出每个未知数的唯一解。
3. MATLAB求解:利用MATLAB中的函数求解线性方程组。
实验步骤:1. 创建矩阵:在MATLAB中创建两个矩阵A和B,并观察它们的性质。
2. 矩阵运算:进行矩阵加法、减法、乘法和转置运算,并观察结果。
3. 线性方程组求解:利用高斯消元法、克莱姆法则和MATLAB函数求解线性方程组。
实验结果与分析:1. 矩阵运算:通过实验,我们掌握了矩阵的基本运算规则,并成功进行了矩阵加法、减法、乘法和转置运算。
2. 线性方程组求解:利用高斯消元法、克莱姆法则和MATLAB函数求解线性方程组,得到了正确的解。
3. MATLAB求解:通过MATLAB函数求解线性方程组,我们发现MATLAB具有强大的矩阵运算和线性方程组求解功能,能够方便地解决实际问题。
实验总结:本次实验使我们深入了解了矩阵的基本概念和运算规则,掌握了线性方程组的求解方法。
有关矩阵数学实验报告
有关矩阵数学实验报告引言矩阵是数学中一个重要的概念,广泛应用于线性代数、图论、计算机科学等众多领域。
本实验旨在通过实际操作和计算,加深对矩阵的理解,并探索矩阵在现实问题中的应用。
本报告将从实验目的、实验步骤、实验结果和实验结论几个方面进行介绍。
实验目的1. 了解矩阵的基本概念和运算规则;2. 掌握矩阵的求逆、转置和乘法等操作;3. 实践利用矩阵解决实际问题。
实验步骤1. 实验准备:安装并学习使用相应的矩阵数学软件;2. 实验1:矩阵加法和乘法- 创建两个相同维度的矩阵A和B;- 计算A + B和A * B;- 分析结果并进行讨论。
3. 实验2:矩阵求逆和转置- 创建一个可逆矩阵C;- 计算C的逆矩阵C'和C的转置矩阵C^T;- 检验计算结果是否正确。
4. 实验3:矩阵在实际问题中的应用- 选择一个实际问题,并将其抽象成矩阵形式;- 利用矩阵运算解决问题;- 分析结果,并与传统解法进行对比。
实验结果1. 实验1结果分析:经过计算发现,矩阵的加法和乘法满足交换律和结合律,与数的加法和乘法类似。
但是,矩阵乘法不满足交换律,即A * B ≠B * A。
这进一步说明矩阵并不是普通数的简单扩展。
2. 实验2结果检验:针对可逆矩阵C,计算得到的逆矩阵C'和转置矩阵C^T经过验证均正确,满足逆矩阵和转置矩阵的定义和性质。
3. 实验3结果分析:我们选择了一个线性方程组问题,利用矩阵运算求解。
与传统解法相比,矩阵运算更简洁、高效,尤其对于高维度复杂问题具有很大优势。
实验结论通过本次实验,我们对矩阵的概念和运算规则有了更深入的理解。
矩阵不仅仅是一种数学工具,它在现实问题的建模和求解中发挥着重要作用。
矩阵的加法、乘法、逆矩阵和转置等运算规则的学习,为我们处理实际问题提供了更多的方法和思路。
在未来的学习和研究中,矩阵将会贯穿于我们的整个数学和科学计算的领域,为我们带来更大的便利和创造力。
数学实验报告线性代数
数学实验报告(线性代数) 数学实验报告(线性代数)一、实验目的本次实验旨在通过对线性代数基本概念的探究,熟悉并掌握矩阵运算、向量空间、特征值与特征向量等核心概念,培养我们的数学思维与解决实际问题的能力。
二、实验内容1.矩阵运算我们首先通过Excel或其他数学软件,进行矩阵的加减法、乘法、转置等基本运算,并计算矩阵的行列式、逆矩阵等。
通过这些运算,我们深入理解矩阵这一基本概念以及其在线性代数中的重要性。
2.向量空间我们对向量空间进行深入的研究,包括向量的加减法、数乘等基本运算,以及向量空间的各种性质,如封闭性、结合律、分配律等。
通过具体的计算和证明,我们对向量空间有了更深入的理解。
3.特征值与特征向量在本次实验中,我们通过计算矩阵的特征多项式,找到矩阵的特征值,并求出相应的特征向量。
我们通过这种方法,理解了特征值和特征向量的物理意义,也掌握了求解特征值和特征向量的基本方法。
三、实验过程记录实验开始时间:XXXX年XX月XX日实验地点:数学实验室参与人员:小组成员1、小组成员2、小组成员3实验具体过程:1.矩阵运算:我们利用Excel软件进行矩阵的加减法、乘法等基本运算,通过具体的计算,我们发现矩阵的乘法并不满足交换律,而且矩阵的乘积的行列式并不等于原来两个矩阵行列式的乘积。
这让我们更深入的理解了矩阵乘法的规则和其意义。
2.向量空间:我们首先对向量的加减法、数乘等基本运算进行计算,以深入理解向量空间的基本性质。
接着我们对向量空间的封闭性、结合律、分配律等进行了证明。
通过这一系列的操作,我们明白了向量空间是一个具有丰富性质的数学结构。
3.特征值与特征向量:首先我们计算了矩阵的特征多项式,然后用求根公式求出了特征值。
接着我们根据定义求出了相应的特征向量。
在这个过程中,我们明白了特征值和特征向量的物理意义,也掌握了求解特征值和特征向量的基本方法。
实验结束时间:XXXX年XX月XX日四、实验总结及感想通过这次实验,我们更深入地理解了线性代数的基本概念和性质。
大学生数学实验教案
课时:2课时教学对象:大学数学专业学生教学目标:1. 让学生理解矩阵的基本概念和性质。
2. 培养学生运用矩阵进行实际问题解决的能力。
3. 提高学生的动手操作能力和团队协作精神。
教学重点:1. 矩阵的基本概念和性质。
2. 矩阵的运算方法。
教学难点:1. 矩阵的逆运算。
2. 矩阵的应用。
教学准备:1. 教师准备PPT课件、实验指导书、实验报告模板。
2. 学生准备计算机、计算器等实验所需工具。
教学过程:第一课时一、导入1. 回顾线性代数中矩阵的基本概念和性质。
2. 提出本节课的实验目标。
二、实验指导1. 矩阵的加法、减法运算。
2. 矩阵的数乘运算。
3. 矩阵的乘法运算。
三、实验操作1. 学生分组进行实验操作,每组选用一个实际问题进行矩阵运算。
2. 教师巡视指导,解答学生在实验过程中遇到的问题。
四、实验报告1. 学生根据实验结果填写实验报告,包括实验目的、实验过程、实验结果、实验分析等部分。
2. 教师批改实验报告,给予学生反馈。
第二课时一、实验报告讲评1. 教师选取部分学生的实验报告进行讲评,指出优点和不足。
2. 学生互相交流实验心得,分享实验过程中的经验和教训。
二、矩阵的逆运算1. 介绍矩阵的逆运算概念和性质。
2. 通过实例讲解矩阵的逆运算方法。
三、矩阵的应用1. 分析实际问题,找出合适的矩阵模型。
2. 运用矩阵运算解决实际问题。
四、课堂总结1. 回顾本节课所学内容,强调矩阵运算在实际问题中的应用。
2. 布置课后作业,巩固所学知识。
教学评价:1. 学生实验报告的质量,包括实验目的、实验过程、实验结果、实验分析等部分。
2. 学生在实验过程中的参与程度和动手操作能力。
3. 学生对矩阵运算的实际应用能力。
教学反思:1. 实验过程中,教师应注重培养学生的团队协作精神和动手操作能力。
2. 实验内容应与实际生活紧密联系,提高学生的实际应用能力。
3. 教师应关注学生的个体差异,因材施教,提高教学效果。
矩阵的数学实验及其应用
铁路
C 1 3 C 2 3
外界需求
Y l Y 2
总产出
X l 2
一2O 0 .0 O
煤矿
煤矿 电厂 C1 1 C1 2
> A木 > B
a s=1 2 n 9 2 4 3 5 0
> A\ > B
a s= . 0 n 一300 0 —4 0 0 .00 4.0 0 0 0 5 0 00 .0
> =5678 >B 【 ; ]
B= 5 6
生产一元 钱 的电力 .发 电厂要支 付 0 5 的煤费 .. 元 的 电费及 . 元 6 O5 0 05 . 元的运输费。创收一元钱 的运输费 . 0 铁路要支付 0 5 . 元的煤费及 5 00 . 元的电费。 1 在一周 内. 煤矿接到外地金额为 5 0 0 0 0 元的定货 , 发电 厂接到外地金额为 2 0 0 50 元的定货 . 外界对地方铁路没有 需求 。问三 个企业在一周 内总产值多少才能满足 自身及接到的需求? 解设X l 分别为煤矿 , 电力 . 铁路本周 的总产 值 , 根据题意得 到投入产出模型 . 写成矩阵的形式 :
> A= 1234 > f ; 1
A= 1 3 2 4
CAl 2 l = 1 1 )C = 0 0 , (1 D ・, 【 0 0 J
矩阵 B称为完全消耗矩 阵 .它与矩阵 A一起 在各个部 门之间的 投入产出 中起平衡 作用 。 矩阵 C可 以称 为投入产 出矩 阵 . 的元 素表 它 示 煤矿 、 电厂 、 铁路之间的投入产出关 系。向量 D称为投入总量 , 它的 元 素是矩阵 C的对应列元 素之 和. 分别表示煤矿 、 电厂 、 铁路得 到的总 由矩阵 C 向量 Y X和 D, , , 可以得 : 表 1 投入产 出分 析表
数学实验 矩阵
A
2
3
4
,
B
2
2
2
3 4 5
3 3 3
求:
C A B, D A, E A3, F A. B
创建matrix06.m文件 A=[1 2 3;2 3 4;3 4 5]; B=[1 1 1;2 2 2;3 3 3]; C=A+B D=A' E=A^3 F=A.*B
运行结果: C=
B1 = 0 1 1 1
000 000 300 4 10 0
B2 = 1 1 1 1
110 234 3 6 10 4 10 20
4. 矩阵的扩展
矩阵的扩展有以下两种方法:
<1> 利用矩阵标识块的赋值命令 X(m1:m2,n1:n2)=A
生成大矩阵。其中,(m1:m2)必须等于A的 行维数,(n1:n2)必须等于A的列维数。 生成的(m2×n2)的矩阵X,除赋值子阵和 已存在的元素外,其余元素都默认为0。
一点。点M1到平面π的距离是:
d | nM0M1 | |n|
创建vector03.m文件 M0=[1 1 3]; M1=[8 3 -4]; n=[2 -2 1]; d=abs(dot(n,M1-M0))/norm(n) 运行结果:
d= 1
三、矩阵的生成
1、 一般矩阵的生成: (1) 输入矩阵时以“[ ]”为其标识,即矩阵 的元素应在“[ ]”内部; (2)同行元素之间可由空格或“,”分隔, 行与行间用“;”或回车符分隔; (3) 矩阵元素可为运算表达式;
3. 矩阵的抽取 (1)对角元素抽取函数diag
diag(X,k) 抽取矩阵X的第k条对角线的元素向量。K为0时即 为抽取主对角线,k为正值时为上方第k条对角线, k为负值时为下方第k条对角线。
矩阵基本运算的数学实验及思考
矩阵基本运算的数学实验及思考## 矩阵基本运算的数学实验及思考### 引言矩阵是线性代数中的重要工具,广泛应用于各个科学领域。
本文旨在通过数学实验深入探讨矩阵的基本运算,包括加法、减法、乘法等,以及通过实验得出的结论和对矩阵运算的思考。
### 实验一:矩阵加法首先,我们考察矩阵加法的性质。
通过设计实验,我们可以验证矩阵加法的交换律和结合律。
选择不同的矩阵进行加法运算,并观察结果,验证加法的基本性质。
### 实验二:矩阵减法类似于加法,矩阵减法也是线性代数中的基本运算之一。
在这个实验中,我们将研究矩阵减法的性质,包括减法的反交换性和减法与加法的关系。
通过多组实验数据,我们将深入理解矩阵减法的特性。
### 实验三:矩阵乘法矩阵乘法是矩阵运算中的关键部分,对于线性变换和解方程组等问题具有重要意义。
通过实验,我们将验证矩阵乘法的结合律、分配律,并讨论乘法与加法的关联。
此外,我们还将研究单位矩阵的性质以及其在矩阵乘法中的作用。
### 实验四:矩阵转置与逆矩阵转置和逆矩阵是矩阵运算中的两个重要概念。
在这个实验中,我们将通过数学手段验证矩阵转置的性质,如转置的转置等,并研究逆矩阵存在的条件以及逆矩阵在方程求解中的应用。
### 实验五:矩阵的秩和行列式秩和行列式是矩阵理论中的重要概念,与矩阵的线性无关性和行列式的性质有密切关系。
通过实验,我们将研究秩的计算方法,行列式的展开与性质,以及它们在解决线性方程组和判断矩阵可逆性中的应用。
### 思考与结论通过以上一系列的实验,我们不仅加深了对矩阵基本运算的理解,还对矩阵在线性代数中的重要性有了更深刻的认识。
矩阵的性质和运算规律贯穿于多个学科领域,从物理学到计算机科学,都离不开对矩阵的运用。
在未来的学习中,我们可以进一步拓展矩阵的应用,探讨更高级的线性代数概念,以及矩阵在机器学习和数据科学中的广泛运用。
通过深入思考矩阵的数学本质,我们能够更好地应用这一工具,为解决实际问题提供更为丰富的思路和方法。
矩阵的运算及其运算规则
矩阵的运算及其运算规则矩阵是现代数学中的一种重要工具,它在线性代数、图论、物理学等领域中都有广泛的应用。
矩阵的运算是研究矩阵性质和解决实际问题的基础。
本文将介绍矩阵的运算及其运算规则。
(一)矩阵的加法矩阵的加法是指将两个相同大小的矩阵对应位置的元素相加。
假设有两个矩阵A和B,它们的大小都是m行n列,记作A = [aij]m×n,B = [bij]m×n,则矩阵A和B的加法C = A + B定义为C = [cij]m×n,其中cij = aij + bij。
例如,对于矩阵A = [1 2 3; 4 5 6]和矩阵B = [7 8 9; 10 11 12],它们的加法结果为C = [8 10 12; 14 16 18]。
矩阵的加法满足以下运算规则:1. 加法满足交换律,即A + B = B + A。
2. 加法满足结合律,即(A + B) + C = A + (B + C)。
3. 存在一个零矩阵0,使得A + 0 = A。
4. 对于任意矩阵A,存在一个相反矩阵-B,使得A + (-B) = 0。
(二)矩阵的数乘矩阵的数乘是指将一个矩阵的每个元素都乘以一个数。
假设有一个矩阵A和一个实数k,记作kA,则矩阵kA定义为kA = [kaij]m×n。
例如,对于矩阵A = [1 2 3; 4 5 6]和实数k = 2,它们的数乘结果为kA = [2 4 6; 8 10 12]。
矩阵的数乘满足以下运算规则:1. 数乘满足结合律,即k(lA) = (kl)A,其中k和l分别为实数。
2. 数乘满足分配律,即(k + l)A = kA + lA,其中k和l分别为实数。
3. 数乘满足分配律,即k(A + B) = kA + kB,其中k为实数,A和B 为矩阵。
(三)矩阵的乘法矩阵的乘法是指将一个m行n列的矩阵A和一个n行p列的矩阵B 相乘得到一个m行p列的矩阵C。
假设有两个矩阵A和B,它们的大小分别为m行n列和n行p列,记作A = [aij]m×n,B = [bij]n×p,则矩阵A和B的乘法C = AB定义为C = [cij]m×p,其中cij= ∑(ai1 * b1j)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数学实验报告学院:班级:学号:姓名:完成日期:实验四矩阵的运算(一)投入产出分析一.实验目的1.理解投入产出分析中的基本概念和模型;2.从数学和投入产出理论的角度,理解矩阵乘法、逆矩阵等的含义。
二.问题描述设国民经济由农业、制造业和服务业三个部门构成,已知某年它们之间的投入产出关系、部需求、初始投入等如表1-1所示表1-1国民经济三产部门之间的投入产出表根据表回答下列问题:(1)如果农业、制造业、服务业外部需求为50,150,100,问三个部门总产出分别为多少?(2)如果三个部门的外部需求分别增加一个单位,问他们的总产出分别为多少?三.实验过程1.问题(1)的求解(1)求直接消耗矩阵A根据直接消耗的计算公式a ij=x ij/x j和各部门中间需求;x n a n运行如下代码可得直接消耗系数表。
X=[15 20 30;30 10 45;20 60 0];X_colsum=[100 200 150];X_rep=repmat(X_colsum,3,1)A=X./ X_rep运行结果为:A =0.1500 0.1000 0.20000.3000 0.0500 0.30000.2000 0.3000 0 (2)求解根据公式X=(I-A)-1y在运行如下代码y=[50;150;100];n=size(y,1);W=eye(n)-A;X=W\y运行结果为X =139.2801267.6056208.1377即三个部门的总产出分别为139.2801,267.6056, 208.1377亿元。
2.问题2求解设外部需求由y增加至y+Δy,则产出x的增量为Δx=(I-A)-1(y+Δy)- (I-A)-1y=(I-A)-1Δy利用问题(1)求得的I-A矩阵,再运行如下的MATLAB 代码可得问题的结果:dx=inv(W)运行结果:dx =1.3459 0.2504 0.34430.5634 1.2676 0.49300.4382 0.4304 1.2167根据上述结果可知,当农业的外部需求增加1个单位时,农业、制造业、服务业的总产出分别增加 1.3459,0.5634,0.4382个单位;当制造业的外部需求增加1个单位时,农业、制造业、服务业的总产出分别增加0.2504,1.2676,0.4304个单位;当服务业的外部需求增加1个单位时,农业、制造业、服务业的总产出分别增加0.3443,0.4930,1.2167个单位。
四.实验总结投入产出的理论依据,主要是矩阵运算和逆矩阵,投入和产出分析在编制和修订宏观计划、开展紧急预测和项目效果预测、研究价格水平及其变动影响,研究产业结构及其关联程度,投资对消费的带动分析等方面对会有很重要的应用。
(二)Hill密码的加密、解密与破译一、实验目的1. 复习线性代数, 矩阵, 线性空间与线性变换等概念和运算.2. 熟悉Hill密码体制的加密, 解密和破译过程.3. Hill密码体制的加密, 解密和破译过程的MATLAB编程实践.二、问题描述对明文为“Mr Hill made this code”,利运用不同的密匙矩阵加密矩阵,实现Hill加密与解密过程。
三.实验过程(1)模型建立于问题分析简单起见,为了使明文参与矩阵运算,建立如下表格2-1:表2-1 26个英文字母、空格、句号与数字之间的对应关系设明文为M=(m1, m2,...,m i)T,密匙矩阵为可逆的l x l 的方阵,则经过线性变换得到密文C=E K(M)=(c1c2 (I)T,其中C1=(k11m1+ k12m2+…+ k1l m l)mod28,C2=(k21m1+ k22m2+…+ k2l m l)mod28,………….C l=(k l1m1+ k l2m2+…+ k ll m l)mod28,或写成矩阵形式C=(KM)mod28,其中C=(C1,C2,…,C l)T ,M=(m1,m2,…,m l)T,K=(k ij)lxl 解密得明文M=(K-1C)mod28注意,明文、密文都是非负实数,故密匙矩阵K及其逆矩阵K-1的元素都应该是非负实数,不能是负整数、分数、或小数。
当密匙矩阵K的行列式的值等于+1或-1,则逆矩阵K-1的元素是整数。
若K-1的元素有负整数,再对矩阵K-1的所有元素加28的若干倍,再取模28,可保证矩阵K-1的所有元素为正整数。
密文解密后可得非负整数明文M,与原明文相同。
(2)加密对明文为“Mr Hill made this code。
”,按表2-1的规则映射为数集{13,18,0,8,9,12,12,0,13,1,4,5,0,20,8,9,19,0,3,15,4,5,27,0},假设将消息从左到右,每4个字符分为一组,并将对应的四个整数排列成4维的列向量,加密后仍为4维的列向量,其分量仍为整数,要发出的消息可写为一个矩阵:. 13 9 13 0 19 4M= 18 12 1 20 0 50 12 4 8 3 278 0 5 9 15 0为求出合适的密匙矩阵K1,在一个4x4阶矩阵中,任设二元函数的值为x,y,其余元素给出具体的非负整数值,并令其行列式的值的绝对值为1,可得一个二元一次或二元二次不定方程,可求其正整数解,如取:4 x 8 yK1= 12 1 6 9 , I K1I=1,3 64 62 113 8利用如下的MATLAB代码可求得密匙矩阵K1的行列式:syms x y;K=[4,x,8,y;12,1,6,9;3,6,4,6;2,11,3,8];det_K=det(K)运行结果:det_K=-760-105*x+187*y可知二元一次方程为-760-150x+187y=1,即105x-187y=-761. 下面利用辗转相除法求一整数解。
设u=x,v=-y,得105u+187v=-761对上式辗转相除:187=1x105+82105=1x82+2382=3x23+1313=1x10+310=3x3=13=3x3=0从而得到187 = 1 1 1 1 3 1 1 1 1 1 3 1 3 1 1 105 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0= 187 57 1 = Q 1105 32 0 0 ,即1 = Q-1 187 = -32 57 1870 105 105 -187 105也即105x57+187x(-32)=1两边同时乘以-761,得105x(-43377)+187x24352=-761故u=-43377,v=24352为一个特解,从而u=-43377-187t,v=24352+105t,t为整数故而x=-43377-187t,y=-24532-105t,t为整数不妨取t=-232,可得x=7,y=8.从而密匙矩阵可取为4 7 8 8K1= 12 1 6 93 64 62 113 8以上过程可采用如下的MATLAB代码实现;syms t;Q=[1 1;1 0]* [1 1;1 0]* [3 1;1 0]* [1 1;1 0]* [1 1;1 0]* [3 1;1 0]* [3 1;1 0]S=[187;105]Q*[1;0]Q_inv=inv(Q)uv0=[-761*Q_inv(1,2) -761*Q_inv(1,1)]gs=gcd(S(1),S(2));u=uv0(1)-S(1)/gs*t;v=uv0(2)+S(2)/gs*t;u0=uv0(1)-S(1)/gs*(-232);v0=uv0(2)+S(2)/gs*(-232);x0=u0,;y0=-v0;于是将要发出的信息乘以K1变成“密码”后发出:4 7 8 8 13 9 13 0 19 4(K1M)mod 28 = 12 1 6 9 18 12 1 20 0 53 64 6 0 12 4 8 3 272 113 8 8 0 5 9 15 018 20 19 24 24 15C= 22 24 2 9 17 1927 7 7 10 19 108 18 5 8 27 4对照表2-1可知接受者接到的密文是”rv.htxgrsbgexijhxqs.osjd”.(3)解密接收者收到信息”rv.htxgrsbgexijhxqs.osjd”后,运用事先约定的密匙矩阵K1的逆矩阵K-1解密,从密码中恢复明文,当K-1得元素出现负整数,则加上28的若干倍数,使它的元素全为非负整数,再取模28可得解密的密匙矩阵K2 根据表2-1,反过来查表,即可得明文,解密正确。
给定密匙矩阵,利用如下代码可求得问题的解:M=[13 9 13 0 19 4;18 12 1 20 0 5;0 12 4 8 3 27; 8 0 5 9 15 0];K1=[4 7 8 8; 12 1 6 9; 3 6 4 6;2 11 3 8];det(K1)C=mod(K1* M,28)K1_inv=inv(K1)K1_inv=round(K1_inv);K2=mod(K1_inv,28)M=mod(K2*C,28)ans =1.0000C =18 20 19 24 24 1522 24 2 9 17 1927 7 7 10 19 108 18 5 8 27 4 K1_inv =-112.0000 -34.0000 371.0000 -128.0000 -105.0000 -32.0000 348.0000 -120.0000 -39.0000 -12.0000 130.0000 -45.0000 187.0000 57.0000 -620.0000 214.0000 K2 =0 22 7 127 24 12 2017 16 18 1119 1 24 18M =13 9 13 0 19 418 12 1 20 0 50 12 4 8 3 278 0 5 9 15 0此矩阵与原矩阵相符,解密成功。
现依照上面步骤取另一个可逆矩阵K2,来作为密匙为求出合适的密钥矩阵K2,在一个4*4阶的矩阵中,任设二元素的值为x,y,其余元素给出具体的非负整数数字,并令其行列式的值等于1或-1,可得一个二元一次或二元二次不定方程,可求其正整数解,如取1 x2 yK2 = 3 1 6 9 ,|K2|=1.3 64 62 73 8利用如下的代码可求得密钥矩阵K2行列式:syms x y;K=[1,x,2,y;3,1,6,9;3,6,4,6;2,7,3,8];det_K=det(K)运行结果:det_K =21*x - 23*y + 62可知二元一次方程为21x-23y+62=1,即21x+61=23y下面利用枚举法求一整数解,代码如下:x=1;while mod(21*x+61,23)~=0x=x+1;endxy=(21*x+61)/23运行结果:x =19y =20故密钥矩阵(发送者和接受者事先都知道的矩阵)可取为1 192 20K2= 3 1 6 93 64 62 73 8于是将要发出的信息(或矩阵)经乘以K2变成“密码”后发出:(K2 M)mod28= 11 9 0 16 17 1317 27 25 9 14 1127 7 7 10 19 1020 26 1 12 27 12=C对照表5-4可知接受者收到的密文是“kg.ti.gz ygapijlqns.mkjl”.3.解密接受者收到信息“kg.ti.gz ygapijlqns.mkjl”后,运用事先约定的密钥解密,即用K2-1= -112 -54 -271 54421 10 51 -10287 42 211 -423-23 -11 -56 112从密文中恢复明文。