数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx

上传人:b****2 文档编号:15096059 上传时间:2022-10-27 格式:DOCX 页数:42 大小:53.10KB
下载 相关 举报
数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx_第1页
第1页 / 共42页
数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx_第2页
第2页 / 共42页
数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx_第3页
第3页 / 共42页
数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx_第4页
第4页 / 共42页
数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx_第5页
第5页 / 共42页
点击查看更多>>
下载资源
资源描述

数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx

《数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx》由会员分享,可在线阅读,更多相关《数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx(42页珍藏版)》请在冰豆网上搜索。

数学用Matlab学习线性代数线性方程组与矩阵代数文档格式.docx

(3)(4)中无相等的

2.令n=200,并使用命令

A=floor(10*rand(n));

b=sum(A’)’

z=ones(n,1);

注释:

(n行一列全为1的矩阵)

生成一个矩阵和两个中的向量,它们的元素均为整数。

(因为矩阵和向量都很大,我们添加分号来控制输出。

(1)方程组的真解应为。

为什么?

【A中的每一行的元素之和正好等于对应b的每一列,故z为其一解,又det不等于0,RA=RAb=n,故z为其解】试说明,可在Matlab中利用”\”运算或计算,然后用计算来求解。

比较这两种计算方法的速度和精度。

我们将使用Matlab命令tic和toc来测量每一个计算过程消耗的时间。

只需要用下面的命令:

tic,x=A\b;

toc

tic,y=inv(A)*b;

toc

哪一种方法更快?

tic,x=A\b;

更快!

为了比较这两种方法的精度,可以测量求得的解x和y与真解z接近的程度。

利用下面的命令:

max(abs(x-z))

max(abs(y-z))

哪种方法的到的解更精确?

>

max(abs(x-z))=4.0168e-013更精确!

max(abs(y-z))=6.1107e-013

(2)用n=500和n=1000替换

(1)中的。

(1)结果一样!

3.令A=floor(10*rand(6))。

根据构造,矩阵A将有整数元。

将矩阵A的第六列更改,使得矩阵A为奇异的。

B=A’,A(:

6)=-sum(B(1:

5,:

))’

(1)设x=ones(6,1),并利用Matlab计算Ax。

为什么我们知道A必为奇异的?

【因化简列,————>

列成比例】试说明。

通过化为行最简形来判断A是奇异的。

(2)令B=x*[1:

6],乘积AB应为零矩阵。

【因A的每一行的前五个元素之和等于第六个元素的相反数,且在A上的每一行的元素同乘以相同的数,则仍等于0】试说明。

用Matlab的*运算计算AB进行验证。

(3)令C=floor(10*rand(6))和D=B+C,尽管,但乘积AC和AD是相等的。

试说明。

计算A*C和A*D,并验证它们确实相等。

【此处B为令B=x*[1:

6];

A为A(:

))’】

由于A*B=0;

故AC=AD;

A(B+C)=AB+AC;

 

4.采用如下方式构造一个矩阵。

B=eye(10)-triu(ones(10),1),参见最后附表二:

为什么我们知道B必为非奇异的?

【上三角矩阵的行列式的值等于对角线上的元素相乘】

令C=inv(B)且x=C(:

10),

现在用B(10,1)=-1/256将B进行微小改变。

利用Matlab计算乘积Bx。

由这个计算结果,你可以得出关于新矩阵B的什么结论?

【化简此时B,得行最简式,RB=9<

10,可以得出B的第10列(从1—9行)与x互为相反数,且都是2的指数幂数,且第十行为0,】它是否为奇异的?

【是】试说明。

用Matlab计算它的行最简形。

5.生成一个矩阵A:

A=floor(20*rand(6))

并生成一个向量b:

B=floor(20*rand(6,1))-10

(1)因为A是随机生成的,我们可以认为它是非奇异的。

那么方程组应有唯一解。

用运算“\”求解。

用Matlab计算[Ab]的行最简形U。

比较U的最后一列和解x,结果是什么?

【相等】在精确算术运算时,它们应当是相等的。

【行最简式中可写出对应元素的实际含义,对应处的未知元就等于最后的数】试说明。

为比较他们两个,计算差U(:

7)-x或用formatlong考虑它们。

(2)现在改变A,试它成为奇异的。

令A(:

3)=A(:

1:

2)*[43]’【第一列乘以4加上第二列乘以3替换到第三列上】,利用Matlab计算rref([Ab])。

方程组有多少组解?

【无解】试说明。

【RA<

R[AB]】

(3)令y=floor(20*rand(6,1))-10且c=A*y,为什么我们知道方程组Ax=c必为相容?

的?

【x此时必有一解y,故为相容的】试说明。

计算[Ac]的行最简形U。

【无穷多解】试说明。

【RA=RAc<

6】

(4)由行最简形确定的自由变量应为。

通过考察矩阵U对应的方程组,可以求得时所对应的解。

将这个解作为列向量输入Matlab中。

为检验,计算剩余向量。

(5)令。

矩阵U应对应于的行最简形。

用求自变量时齐次线性方程组的解(手工计算),并将你的结果输入为向量Z。

用A*Z检验你的结论。

(6)令。

向量v应为方程组的解。

用Matlab计算剩余向量来验证v为方程组的解。

在这个解中,自由变量的取值是什么?

【=3】如何使用向量w和z来求所有可能的方程组的解?

【v=w+n*z,其中n为任意实数】试说明。

6.考虑下图:

(1)确定图的邻接矩阵A,将其输入Matlab;

(2)计算A2并确定长度为2的路的条数【72】,其起止点分别为:

【A^2+A

中的数值之和,数字表示有几种路径,具体看程序】

(3)计算A4、A6、A8并回答

(2)中各种情况长度为4、【368】6、【2362】8、【15800】的路的条数。

试推测什么时候从顶点Vi到Vj没有长度为偶数【即为0】的路。

【i=1,j=6;

i=2,j=5;

i=3,j=6或8;

i=4,j=7;

i=5,j=8;

i=6,j=1或3;

i=7,j=4;

i=8,j=3或6;

(4)计算A3、A5、A7并回答

(2)中各情况长度为3、【154】5、【922】7【6098】的路的条数。

你由(3)得到的推测对长度为奇数的路是否成立?

【不成立】,试说明【见程序】。

推测根据i+j+k的奇偶性,是否存在长度为k的路。

【若i+j+k为偶数,不存在;

相反,则存在】【路径见程序】

(5)如果我们在图中增加边{V3,V6},{V5,V8},新图的邻接矩阵B可首先令B=A,然后令B(3,6)=144,B(6,3)=1,B(5,8)=1,B(8,5)=1,对k=2,3,4,5计算Bk。

(4)中的推测在新的图形中是否还是成立的?

【不成立】见程序】

(6)在图中增加{V6,V8},并构造得到的图的邻接矩阵C,计算C的幂次,并验证你在(4)中的推测对这个新图是否仍然成立。

【不成立】【见程序】

7.令A=magic(8),然后计算其行最简形。

使得首1对应于前三个变量,且其余的五个变量均为自由的。

(1)令c=[1:

8]’,通过计算矩阵[Ac]的行最简形确定方程组Ax=c是否相容。

方程组是相容的吗?

【不相容】试说明。

【RA<

RAc】

(2)令b=[8-8-888-8-88]’;

并考虑方程组Ax=b。

该方程组应为相容的。

通过U=rref([Ab])验证。

对五个自由变量的任一组取值,我们都应可以得到一组解。

事实上,令

x2=floor(10*rand(5,1)),若x2表示方程组解的最后5个坐标,则我们由x2求得x1=(x1,x2,x3)’。

要这样做,只需要令U=rref([Ab])。

U的非零行对应于分块形式的线性方程组

为解此方程组,令V=U(1:

3,4:

8),c=U(1:

3,9)

并利用Matlab,根据x2,c和V计算x1。

令x=[x1;

x2],验证x是方程组的解。

8.令B=[-1,-1;

1,1]和A=[zeros

(2),eye

(2);

eye

(2),B]验证B2=0。

(1)用Matlab计算A2,A4,A6,A8。

猜想用子矩阵E,O和B如何表示分块形式的A2k。

用数学归纳法证明你的猜想对任何正整数k都是成立的。

(2)用Matlab计算A3,A5,A7和A9。

猜想用子矩阵E,O和B如何表示分块形式的A2k-1。

9.

(1)Matlab命令

A=floor(10*rand(6)),B=A’*A

将得到元素为整数的对称矩阵。

【第i行第j列的数等于第i列的数分别乘以第j列的数之和;

第j行第i列的数等于第j列的数分别乘以第i列的数之和,故为对称矩阵】

用这种方法计算B来验证结论,然后将B划分成四个3x3的子矩阵。

在Matlab中求子矩阵,令

B11=B(1:

3,1:

3),B12=B(1:

6)

并用B的第四行到第6行类似定义B21和B22。

(2)令C=inv(B11)。

应有CT=C和B21T=B12。

【对称阵的逆矩阵与该逆矩阵的转置是相等的,B12的第i行的数等于B21的第i列的数】

用Matlab运算符’计算转置,并验证结论。

然后,令

G=B21*C和H=B22-B21*C*B21’

利用Matlab函数eye和zeros构造

计算W=L*D*L’,并通过计算W-B与B进行比较。

证明:

若用算术运算精确计算LDLT,它应准确等于B。

附表:

第一题:

(1)

A=rand(4);

B=rand(4);

C=A*B;

D=B*A;

G=(A'

*B'

)'

;

H=(B'

*A'

C-D

ans=

2.2376e-0014.7289e-0011.3979e+0001.3204e+000

-6.3633e-001-3.0354e-0012.2485e-002-1.5056e-001

-1.7227e-001-1.1938e-0012.9484e-0012.3624e-001

-8.7955e-001-6.5016e-0018.0370e-002-2.1506e-001

C-G

C-H

0000

D-G

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1