数学实验5矩阵运算和解线性方程组
- 格式:doc
- 大小:61.00 KB
- 文档页数:3
附录Ⅰ大学数学实验指导书项目五矩阵运算与方程组求解实验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 的每一个分量即为交通网络中未知部份的具体流量, 该问题有无穷 多解(什么缘故? 并试探其实际意义).本模型具有实际应用价值, 求出该模型的解, 能够为交通计划设计部门提供解决交通堵 塞、车流运行不顺畅等问题的方式, 明白在何处应建设立交桥, 那条路应设计多宽等, 为城镇交通计划提供科学的指导意见. 可是,在本模型中,咱们只考虑了单行街道如此一种简单情形, 更复杂的情形留待读者在更高一级的课程中去研究. 另外,本模型还可推行到电路分析中的 网络节点流量等问题中.实验报告请读者应用本模型的思想方式, 为你所在或你熟悉的城镇成立一个区域的交通流量模 型. 并提供一个具体的解决方案, 即从无穷多个解中依照具体限制确信出一个具体的解决方 案.。
一、实验目的1. 熟悉数值计算的基本原理和方法。
2. 掌握常用数值计算方法在数学建模和科学计算中的应用。
3. 培养运用计算机进行数值计算的能力。
二、实验内容1. 矩阵运算2. 解线性方程组3. 求函数的零点4. 解微分方程三、实验环境1. 操作系统:Windows 102. 编程语言:Python3. 库:NumPy、SciPy、Matplotlib四、实验步骤及结果1. 矩阵运算(1)实验步骤:1)导入NumPy库;2)创建一个3x3的矩阵A;3)创建一个3x1的矩阵B;4)进行矩阵乘法运算:C = A B;5)打印结果。
(2)实验结果:A = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]B = [[1], [2], [3]]C = A Bprint(C) # 输出:[[14], [32], [50]]2. 解线性方程组(1)实验步骤:1)导入NumPy库;2)创建一个3x3的系数矩阵A和一个3x1的常数向量b;3)使用NumPy的线性代数模块求解线性方程组:x = np.linalg.solve(A, b);4)打印结果。
(2)实验结果:A = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]b = [2, 5, 6]x = np.linalg.solve(A, b)print(x) # 输出:[0.5, 0.5, 0.5]3. 求函数的零点(1)实验步骤:1)导入NumPy库;2)定义一个待求零点的函数f(x);3)使用NumPy的根求解器求f(x)的零点:x = np.roots(f(x));4)打印结果。
(2)实验结果:def f(x):return x2 - 4x = np.roots(f(x))print(x) # 输出:[2.0, -2.0]4. 解微分方程(1)实验步骤:1)导入SciPy库;2)定义一个微分方程函数ode_f,其中包含微分方程的系数;3)创建一个OdeSolver对象,并设置微分方程的初始条件;4)使用OdeSolver对象的solve方法求解微分方程;5)打印结果。
线性方程组的解与解集线性方程组是高中数学中的重要内容,也是线性代数的基础知识之一。
解线性方程组的过程涉及到求解单个方程的解以及确定整个方程组的解集。
在本文中,我们将介绍线性方程组的解的概念、求解方法以及解集的表示方式。
一、线性方程组的解线性方程组由多个线性方程构成,其一般形式为:a₁x₁ + a₂x₂ + ... + aₙxₙ = b其中,a₁、a₂、...、aₙ是系数,x₁、x₂、...、xₙ是未知数,b是常数。
对于一个线性方程组,解是指使得每个方程都成立的未知数的取值。
如果一个线性方程组存在解,则称其为可解的;反之,则称其为不可解的。
二、线性方程组的求解方法求解线性方程组的基本思路是通过变换和运算,将其转化为简化形式,从而得到解。
1. 列主元法列主元法是一种常用的求解线性方程组的方法。
其基本步骤如下:(1)将线性方程组写成增广矩阵的形式;(2)通过初等行变换将增广矩阵化为阶梯形矩阵;(3)从最后一行开始,倒序回代求解出每个未知数的值;(4)得到线性方程组的解。
2. 克拉默法则克拉默法则是一种求解线性方程组的方法,适用于系数矩阵可逆的情况。
其基本思想是通过计算系数矩阵的行列式和各个未知数对应的代数余子式的乘积来求解线性方程组。
3. 矩阵法矩阵法是一种求解线性方程组的高效方法。
将线性方程组转化为矩阵方程,通过行列式、逆矩阵或者矩阵的秩等性质来求解方程组的解。
三、线性方程组的解集表示线性方程组的解集是使得方程组中的所有方程都成立的解的集合。
1. 单个方程的解对于单个线性方程a₁x₁ + a₂x₂ + ... + aₙxₙ = b,如果存在唯一解,则解集可以用一个有序数对表示。
2. 齐次线性方程组的解齐次线性方程组是指常数项为零的线性方程组。
对于齐次线性方程组的解集,可以用零解和非零解来表示。
(1)零解指的是使得方程组中的每个方程都成立的解,它一定是方程组的解,任何线性方程组都有零解。
(2)非零解指的是大于零解的其他解,非零解的存在要求方程组的系数矩阵的秩小于未知数的个数。
使用矩阵运算解决线性方程组问题线性方程组是数学中重要的概念,它涉及到多个未知量之间的关系,因此在科学研究和工程应用中经常出现。
当未知量的个数增加,手动计算线性方程组就变得繁琐和复杂。
fortunately,我们可以使用矩阵运算解决这个问题。
矩阵是一个二维数组,其中包含数或变量。
我们可以用矩阵来表示线性方程组中的系数和解向量。
例如,下面是一个包含3个方程和3个未知量的线性方程组:2x + y + z = 83x + 2y + z = 11x + y + z = 6如果我们将系数和解向量系数放入矩阵中,我们可以得到以下矩阵:[2, 1, 1 [83, 2, 1 * x = 111, 1, 1] 6]在上面的矩阵中,第一个矩阵包含了线性方程组的系数,第二个矩阵包含了解向量。
如果我们用[A]表示系数矩阵,[X]表示解矩阵,那么我们可以将线性方程组写成一般的矩阵乘法形式:[A] * [X] = [B]现在的问题是如何求解[x]。
我们可以使用矩阵代数的方法来解决这个问题。
具体来说,我们可以将[A]的逆矩阵乘以[B],得到[X]的表达式:[X] = [A] ^ (-1) * [B]其中,[A] ^ (-1)表示[A]的逆矩阵,它是一个矩阵,与[A]的乘积将得到一个单位矩阵。
如果[A]没有逆矩阵,那么我们将无法使用这种方法来求解[X]。
现在,让我们看看如何使用Python代码来解决线性方程组。
```Pythonimport numpy as np# 定义系数矩阵A和解向量矩阵BA = np.array([[2,1,1], [3,2,1], [1,1,1]])B = np.array([8, 11, 6])# 计算逆矩阵并求解XA_inv = np.linalg.inv(A)X = np.dot(A_inv, B)# 打印求解结果print(X)```上面的代码使用NumPy库中的linalg模块计算了[A]的逆矩阵,并求解了[X]。
矩阵的运算与线性方程组练习题及解析在线性代数中,矩阵的运算是十分重要的一部分,同时也与线性方程组密切相关。
本文将为大家带来一些关于矩阵的运算和线性方程组的练习题,并给出详细的解析。
1. 矩阵的加法和减法题目:已知矩阵A = [1 2 3; 4 5 6],B = [7 8 9; 10 11 12],计算A +B和A - B。
解析:矩阵的加法和减法的计算规则是对应元素相加或相减。
根据给定的矩阵A和B,我们可以得到如下结果:A +B = [1+7 2+8 3+9; 4+10 5+11 6+12] = [8 10 12; 14 16 18]A -B = [1-7 2-8 3-9; 4-10 5-11 6-12] = [-6 -6 -6; -6 -6 -6]2. 矩阵的乘法题目:已知矩阵A = [1 2; 3 4],B = [5 6; 7 8],计算A * B和B * A。
解析:矩阵的乘法的计算规则是将第一个矩阵A的每一行与第二个矩阵B的每一列对应元素相乘,然后将结果相加。
根据给定的矩阵A和B,我们可以得到如下结果:A *B = [1*5+2*7 1*6+2*8; 3*5+4*7 3*6+4*8] = [19 22; 43 50]B * A = [5*1+6*3 5*2+6*4; 7*1+8*3 7*2+8*4] = [23 34; 31 46]3. 矩阵的转置题目:已知矩阵A = [1 2 3; 4 5 6],求矩阵A的转置。
解析:矩阵的转置是将矩阵的行和列交换得到的新矩阵。
根据给定的矩阵A,我们可以得到如下结果:A的转置 = [1 4; 2 5; 3 6]4. 线性方程组的求解题目:已知线性方程组:2x + y = 8x - y = 2解析:我们可以使用矩阵的方法来求解线性方程组。
将方程组的系数构成系数矩阵A,将方程组的常数构成常数矩阵B。
则方程组可以表示为AX = B的形式。
根据给出的方程组,我们可以得到如下结果:A = [2 1; 1 -1]B = [8; 2]为了求解方程组,我们可以使用矩阵的逆来计算X。
矩阵与线性方程组在数学中,矩阵与线性方程组有着密切的联系。
矩阵是线性代数中的基本工具之一,通过矩阵的运算可以解决线性方程组,或者将其转化为更简单的形式。
本文将介绍矩阵的定义、性质以及其与线性方程组的关系,并通过实例来说明其应用。
一、矩阵的定义和基本运算矩阵由数个数值排列成的矩形阵列组成,其中每个数值称为矩阵的元素,用小写字母表示。
一个m×n的矩阵具有m行和n列。
矩阵可以用方括号或圆括号来表示,如A=[a_ij]或A=(a_ij),其中a_ij表示矩阵中第i行第j列的元素。
矩阵的运算包括加法、减法、数乘和乘法。
矩阵的加法和减法只能在行数和列数相同的矩阵之间进行,即如果A和B是m×n的矩阵,则A±B也是m×n的矩阵。
数乘是指将一个矩阵的每个元素乘以一个常数,即如果A是m×n的矩阵,k是一个常数,则kA也是m×n的矩阵。
矩阵的乘法是指将一个矩阵的行与另一个矩阵的列相乘再相加得到一个新的矩阵,即若A是m×n的矩阵,B是n×p的矩阵,则AB是m×p的矩阵。
二、矩阵的性质矩阵有许多重要的性质,包括可逆矩阵、特征值与特征向量、转置矩阵等。
其中,可逆矩阵是指存在一个同阶的矩阵与之相乘等于单位矩阵的矩阵,记作A^{-1}。
特征值与特征向量是指当一个n×n的矩阵A与一个非零向量x满足Ax=λx时,λ称为A的特征值,x称为A的对应于特征值λ的特征向量。
转置矩阵是指将一个矩阵的行和列互换得到的新的矩阵,记作A^T。
三、矩阵与线性方程组的关系线性方程组是指由一组线性方程组成的方程组,其中未知数的最高次数为1。
线性方程组可以用矩阵形式表示,即Ax=b,其中A是一个m×n的矩阵,x是一个n×1的矩阵,b是一个m×1的矩阵。
这个方程组的解可以通过求解矩阵方程Ax=b来得到。
通过矩阵的运算,我们可以将线性方程组转化为更简单的形式进行求解。
线性方程组的矩阵表示与应用线性方程组是数学中重要且常见的概念,它可以通过矩阵的形式进行表示和求解。
本文将详细介绍线性方程组的矩阵表示方法以及其在实际应用中的意义。
一、线性方程组的矩阵表示线性方程组是由一组线性方程组成的数学模型。
通常情况下,线性方程组可以表示为:a₁₁x₁ + a₁₂x₂ + ... + a₁ₙxₙ = b₁a₂₁x₁ + a₂₂x₂ + ... + a₂ₙxₙ = b₂...aₙ₁x₁ + aₙ₂x₂ + ... + aₙₙxₙ = bₙ其中,a₁₁、a₁₂、...、aₙₙ为已知系数,x₁、x₂、...、xₙ为未知数,b₁、b₂、...、bₙ为已知常数。
为了方便表示和计算,我们可以将线性方程组转化为矩阵的形式。
假设 A 是一个 m×n 的矩阵,其中 aᵢₙ表示线性方程组中第 i 个方程中未知数 xₙ 的系数。
并且,b 是一个 m 维列向量,表示线性方程组中的常数项。
则线性方程组可以表示为矩阵乘法的形式:Ax = b其中,x 是一个 n 维列向量,表示线性方程组的解。
二、线性方程组的矩阵应用1. 线性方程组的解线性方程组的矩阵表示使得求解过程更加简便。
通过将线性方程组表示为矩阵形式,可以利用矩阵的性质和运算方法求解方程组的解。
一般来说,我们可以使用高斯消元法、矩阵的逆等方法来求解线性方程组的解。
2. 线性方程组的唯一性线性方程组的解不一定存在,但如果线性方程组的系数矩阵 A 是满秩的,即矩阵 A 的秩等于其行数或列数,那么该线性方程组必然存在唯一解。
这是因为满秩的矩阵 A 能够通过初等行变换得到行最简形式的矩阵,从而唯一确定解的值。
3. 线性方程组与向量空间线性方程组的解空间与矩阵的零空间有密切关系。
线性方程组的所有解构成一个向量空间,称为齐次方程组的解空间。
这个解空间是由零空间中的一个特解加上齐次方程组的基础解系所张成的。
4. 线性方程组的应用线性方程组的矩阵表示在许多实际问题中具有广泛的应用。
矩阵运算与线性方程组的解法在数学中,矩阵运算是一种重要的工具,它与线性方程组的解法密切相关。
矩阵可以看作是一个由数字组成的矩形阵列,而矩阵运算则是对这些数字进行加减乘除等操作的过程。
线性方程组则是由一系列线性方程组成的方程组,其中每个方程都是关于未知数的线性函数。
通过矩阵运算,我们可以有效地解决线性方程组,并得到方程组的解。
首先,我们来介绍一些基本的矩阵运算。
矩阵的加法和减法是最简单的运算,它们的规则与普通的加法和减法类似,只需要对应位置上的数字相加或相减即可。
例如,对于两个相同大小的矩阵A和B,它们的加法可以表示为A + B = C,其中C的每个元素都是A和B对应位置上元素的和。
同样地,矩阵的减法也是类似的,只需将对应位置上的元素相减即可。
另一种常见的矩阵运算是矩阵的乘法。
矩阵乘法的定义相对复杂一些,需要注意一些规则。
对于两个矩阵A和B,它们的乘法可以表示为A * B = C,其中C的每个元素都是A的对应行与B的对应列的乘积之和。
具体来说,如果A是一个m行n列的矩阵,B是一个n行p列的矩阵,那么C就是一个m行p列的矩阵。
在进行矩阵乘法时,我们需要确保第一个矩阵的列数与第二个矩阵的行数相等,否则乘法将无法进行。
矩阵乘法的应用非常广泛,特别是在线性方程组的解法中。
线性方程组可以用矩阵的形式表示为Ax = b,其中A是一个m行n列的矩阵,x是一个n行1列的列向量,b是一个m行1列的列向量。
如果我们已知A和b,那么我们可以通过求解x来得到线性方程组的解。
这就涉及到了矩阵的逆和矩阵的转置。
矩阵的逆是一个非常重要的概念,它表示一个矩阵与其逆矩阵相乘等于单位矩阵。
单位矩阵是一个对角线上的元素都为1,其它元素都为0的矩阵。
如果一个矩阵存在逆矩阵,那么我们可以通过乘以该逆矩阵来解线性方程组。
具体来说,如果A的逆矩阵存在,那么方程组的解可以表示为x = A^(-1) * b。
然而,不是所有的矩阵都存在逆矩阵,只有满足一定条件的矩阵才能求逆。
线性方程组解的求解方法引言:线性方程组是数学中常见的问题之一,它在实际应用中有着广泛的应用。
解线性方程组可以帮助我们理解和解决实际问题,因此研究线性方程组解的求解方法具有重要意义。
本文将介绍几种常见的线性方程组解的求解方法,包括高斯消元法、矩阵法和向量法。
一、高斯消元法高斯消元法是一种常见的线性方程组求解方法。
其基本思想是通过一系列的行变换将线性方程组化为阶梯形矩阵,然后通过回代求解未知数的值。
1.1 行变换行变换是高斯消元法的关键步骤之一。
通过交换行、倍乘行和行加减变换,我们可以将线性方程组化为阶梯形矩阵。
交换行可以改变方程组的次序,倍乘行可以通过乘以一个非零常数将方程的系数变为非零,行加减变换可以通过加减某一行的若干倍将方程组中的某一项消去。
1.2 回代求解回代是高斯消元法的最后一步,通过从最后一行开始,依次代入已求得的未知数的值,可以求解出线性方程组的解。
回代的过程需要注意系数矩阵的特殊情况,如存在零行或全零行时需要进行特殊处理。
二、矩阵法矩阵法是另一种常见的线性方程组求解方法。
其基本思想是将线性方程组表示为矩阵形式,通过对矩阵进行运算,可以直接求解出线性方程组的解。
2.1 矩阵的逆对于一个非奇异矩阵,可以通过求解其逆矩阵来求解线性方程组。
矩阵的逆可以通过伴随矩阵和行列式的关系求解。
如果矩阵是奇异的,则不存在逆矩阵,线性方程组可能无解或有无穷多解。
2.2 矩阵的秩矩阵的秩是求解线性方程组的另一个重要概念。
通过求解矩阵的秩,可以判断线性方程组的解的个数。
如果矩阵的秩等于未知数的个数,则线性方程组有唯一解;如果矩阵的秩小于未知数的个数,则线性方程组有无穷多解;如果矩阵的秩小于未知数的个数,则线性方程组无解。
三、向量法向量法是一种直观的线性方程组求解方法。
其基本思想是将线性方程组表示为向量的线性组合形式,通过求解向量的线性组合系数,可以求解出线性方程组的解。
3.1 向量空间向量空间是向量法的基础概念。
实验5 矩阵运算和解线性方程组一、实验题目
用Mathematica软件进行矩阵运算和解线性方程组。
二、预期目标
利用Mathematica进行:
1. 矩阵运算.
2. 矩阵的行列式与逆.
3. 矩阵的秩.
4. 线性方程组求解.
三、常用命令
方阵A的行列式:
给出方阵A的逆矩阵:
矩阵A的转置矩阵:
用初等行变换将矩阵A化成的行最简阶梯形矩阵:
将矩阵A在工作区中以矩阵格式输出:
求矩阵方程XA B,AX B
==的解:
求线性方程组b
AX=的解:
求代数方程的解:
四、练习内容
1.计算:
(1)
1 2 3 4 2 1 4 10
1
0 2 1 10 1 2 0
2
1 1
2 50 2
3 2⎛⎫⎛⎫ ⎪ ⎪-+-
⎪ ⎪ ⎪ ⎪--⎝⎭⎝⎭
命令:
结果:
(2)
1 0 5
1 0 3 1
2 10 2 0
1 5 0 3 1 0 1 0 1
0 2
0 3 0
⎛⎫
-
⎛⎫
⎪
-
⎛⎫ ⎪
⎪
⎪ ⎪
⎪
⎝⎭ ⎪
⎪⎝⎭
⎝⎭
命令:
结果:
2.求矩阵
1 2 0
0 1 1
1 2 3
⎛⎫
⎪
⎪
⎪
-
⎝⎭
的秩。
命令:
结果:
3.判断下列矩阵是否可逆,如可逆,求其逆矩阵。
(1)
2 2 1 1 2 4 5 8 2
-⎛⎫ ⎪
-
⎪ ⎪⎝⎭
命令:
结果:
(2)
1 2 3 4
2 3 1 2 1 1 1 1 1 0 2 6⎛⎫ ⎪ ⎪ ⎪
-
⎪
--⎝⎭命令:
结果:
(3)
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1⎛⎫ ⎪
-- ⎪
⎪-- ⎪--
⎝⎭命令:
结果:
4.设
1 1 1 1 1 3
2 1 0 4
3 2
1 1 1 1
2 5
X
-
⎛⎫⎛⎫
⎪ ⎪
=
⎪ ⎪
⎪ ⎪
⎝⎭⎝⎭
,求X。
命令:
结果:
5.设
1 0 21
0 1 31
1 1 11
X
⎛⎫⎛⎫
⎪ ⎪
-=
⎪ ⎪
⎪ ⎪
⎝⎭⎝⎭
,求X。
命令:
结果:
6.解线性方程组
1234
1234
1234
1234
224 4326 833412 33226
x x x x
x x x x
x x x x
x x x x
+-+=
⎧
⎪+-+=
⎪
⎨
+-+=
⎪
⎪+--=
⎩。
命令:结果:。