数学用Matlab学习线性代数线性方程组与矩阵代数

合集下载

MATLAB中的线性代数运算方法详述

MATLAB中的线性代数运算方法详述

MATLAB中的线性代数运算方法详述导言:线性代数是数学中的一个重要分支,它研究向量空间及其线性变换、线性方程组和矩阵等概念。

在科学计算与工程实践中,线性代数的应用十分广泛。

MATLAB作为一种强大的数值计算软件,提供了丰富的线性代数运算方法,能够帮助用户高效地解决各种与矩阵、向量相关的问题。

本文将详细介绍MATLAB中常用的线性代数运算方法,并且从算法原理到具体函数的使用进行详细说明。

一、矩阵运算在MATLAB中,矩阵是一种重要的数据类型,它可以表示线性系统、图像等多种实际问题。

矩阵的加法和乘法是线性代数运算中最基本的运算,MATLAB提供了相应的函数来进行矩阵的加法和乘法运算。

1.1 矩阵加法MATLAB中的矩阵加法使用“+”操作符进行操作,可以直接对两个矩阵进行加法运算。

例如,给定两个矩阵A和B,可以使用"A + B"来进行矩阵加法运算。

1.2 矩阵乘法MATLAB中的矩阵乘法使用"*"操作符进行操作,可以直接对两个矩阵进行乘法运算。

需要注意的是,矩阵相乘的维度要满足匹配规则,即乘法前一个矩阵的列数要等于后一个矩阵的行数。

例如,给定两个矩阵A和B,可以使用"A * B"来进行矩阵乘法运算。

二、向量运算向量是线性代数中常用的数据结构,它可以表示方向和大小。

在MATLAB中,向量是一种特殊的矩阵,可以使用矩阵运算中的方法进行计算。

2.1 向量点乘向量的点乘是指两个向量对应位置上元素的乘积之和。

MATLAB中可以使用“.*”操作符进行向量的点乘运算。

例如,给定两个向量A和B,可以使用"A .* B"来进行向量点乘运算。

2.2 向量叉乘向量的叉乘是指两个三维向量的运算结果,它得到一个新的向量,该向量与两个原始向量都垂直。

MATLAB中可以使用叉乘函数cross()进行向量的叉乘运算。

例如,给定两个向量A和B,可以使用"cross(A, B)"来进行向量叉乘运算。

第三章MATLAB线性方程组及矩阵特征值

第三章MATLAB线性方程组及矩阵特征值
0.2000
情形2:m<n(不定方程)
- 0.8000
情形3:m>n(超定方程),多用于曲线拟合。
解线性方程组的一般函数文件如下:
function [x,y]=line_solution(A,b)
[m,n]=size(A);y=[];
if norm(b,1)>0
%非齐次方程组
if rank(A)==rank([A,b]) %方程组相容
for i=1:3
if i~=2, a(i,:)=a(i,:)-a(i,2)*a(2,:); end
end
a
a(3,:)=a(3,:)/a(3,3)
for i=1:3;
if i~=3, a(i,:)=a(i,:)-a(i,3)*a(3,:); end;
end; a A_inv = a(:,4:6) A*A_inv
2in
ai 2
,对调2
r2行.
消元:用a22把ai2消为0 (i 3, 4, , n) :
第2 行
ai 2 a22
第i行,则
aij
a2 j
ai 2 a22
aij (i
3, 4,
, n;j
2, 3,
, n 1)
到此原方程组化为
a11x1 a12 x2 a13 x3
a22 x2 a23 x3
2, 3,
, n;j 1, 2,
, n 1)
到此原方程组化为
a11 x1 a12 x2 a22 x2
ai2 x2
an2 x2
a1n xn a1,n1 a2n xn a2,n1
ain xn ai,n1
ann xn an,n1
(2) 找r2,使 ar2 2

用matlab解决线性代数的问题

用matlab解决线性代数的问题
• 用方括号将矩阵元素包围,先输入第一行, 再输入第二行,等等。 • 行元素之间用逗号或空格分隔开来 • 不同列之间用分号或者enter键分隔开来
生成向量(1)
• 初值:步长:终值 生成从初值开始、以步长为间隔、小于或等于终值的行向量 如果不设步长,则默认步长为1
x是行向量;x’是其转置,为列向量
节约计算时间的技巧
对于需要对其元素循环赋值的矩阵,可预先对整个矩阵赋值,例如赋值为零矩阵。 以某20X500个循环的 脚本为例:
提示:循环越多,矩阵越大, 节约计算时间就越重要。
利用函数生成矩阵(2)
• eye(n)生成n×n的单位矩阵; eye (m,n)生成m×n的单位矩阵; eye(size(A))生成与A同维数的单位矩阵
– AX=B的解是X=A\B,等价于inv(A)*B – XA=B的解是X=B/A,等价于B*inv(A)
• • • • • • • •
方矩阵A的行列式:det(A) 方矩阵A的逆:inv(A) 矩阵A的共轭转置:A’ 矩阵A的转置:conj(A’) 方矩阵A的乘方:A^n 方矩阵A的迹:trace(A) 矩阵A的秩:rank(A) 方矩阵A的特征向量(矩阵)v和特征值(对角矩阵) d : [v d]=eig(A) • 对矩阵A作行初等变换化为行最简矩阵:rref(A) • 对矩阵A作奇异值分解:svd(A)
用matlab解决线性代数的问题
张宏浩
Matlab的一些常识
• • • • • • • • pi表示圆周率π=3.14159… i或j表示虚数单位sqrt(-1) conj(x):取x的复共轭 log(x):以e为底的对数函数ln(x) log10(x):以10为底的对数函数 exp(x):指数函数e^x sin(x),cos(x),tan(x),cot(x):三角函数 asin(x),acos(x),atan(x),acot(x):反三角函数

关于MATLAB软件在线性代数教学中的应用探讨

关于MATLAB软件在线性代数教学中的应用探讨

关于MATLAB软件在线性代数教学中的应用探讨一、引言线性代数作为数学的一个重要分支,在各个领域都有广泛的应用。

线性代数的教学过程中,理论与实践相结合,能够更好地培育同砚的分析和解决问题的能力。

而MATLAB软件作为数学建模、仿真和计算的工具,能够为线性代数的教学提供有力的支持。

本文将探讨MATLAB软件在线性代数教学中的应用。

二、MATLAB软件的介绍MATLAB是一种强大的高级计算机语言和交互式环境,该软件提供了丰富的数学、图形和数据分析工具,适用于各种科学与工程计算。

MATLAB在科研领域有广泛的应用,尤其在线性代数、信号处理和图像处理方面具有突出的优势。

三、MATLAB在线性代数教学中的应用1. 线性方程组的求解线性方程组是线性代数的基本内容之一,而MATLAB提供了直接求解线性方程组的工具。

同砚可以通过编程的方式输入线性方程组,使用MATLAB求解方程组,并将结果可视化展示。

这样不仅可以加深同砚对线性方程组求解方法的理解,还能提高他们的编程能力。

2. 矩阵运算与特征值分解矩阵运算是线性代数的重要内容,而MATLAB提供了丰富的矩阵运算函数。

同砚可以通过编写MATLAB程序,实现矩阵的加减乘除、转置和求逆等操作,并进行相应的结果验证。

此外,MATLAB还能够进行特征值分解,对于矩阵的特征向量和特征值进行计算。

通过这些实践操作,同砚可以更好地理解矩阵运算的观点和原理,提高解决实际问题的能力。

3. 图形绘制与可视化MATLAB具备强大的图形功能,能够进行二维和三维图形的绘制。

在线性代数教学中,同砚可以通过编写MATLAB程序,将矩阵、向量或线性方程组的解表示为图形,从而更直观地展示线性代数的观点和应用。

这种图形化的可视化方式有助于同砚理解和记忆线性代数的重要观点,提高他们的进修爱好和乐观性。

四、MATLAB在线性代数教学中的优势1. 提高同砚的编程能力MATLAB作为一种编程语言,可以提高同砚的编程能力。

【学习】用Matlab学习线性代数行列式

【学习】用Matlab学习线性代数行列式

【关键字】学习用Matlab学习线性代数__行列式实验目的理解行列式的概念、行列式的性质与计算Matlab函数det实验内容前面的四个练习使用整数矩阵,并演示一些本章讨论的行列式的性质。

最后两个练习演示我们使用浮点运算计算行列式时出现的不同。

理论上将,行列式的值应告诉我们矩阵是否是奇异的。

然而,如果矩阵是奇异的,且计算其行列式采用有限位精度运算,那么由于舍入误差,计算出的行列式的值也许不是零。

一个计算得到的行列式的值很接近零,并不能说明矩阵是奇异的甚至是接近奇异的。

此外,一个接近奇异的矩阵,它的行列式值也可能不接近零。

1.用如下方法随机生成整数元素的5阶方阵:A=round(10*rand(5)) 和B=round(20*rand(5))-10用Matlab计算下列每对数。

在每种情况下比较第一个是否等于第二个。

(1)det(A) ==det(A T) (2)det(A+B) ;det(A)+det(B)(3)det(AB)==det(A)det(B) (4)det(ATBT) ==det(AT)det(BT)(5)det(A-1)==1/det(A) (6)det(AB-1)==det(A)/det(B)> A=round(10*rand(5));>> B=round(20*rand(5))-10;>> det(A)ans =5972>> det(A')ans5972>> det(A+B)ans =36495>> det(A)+det(B)ans =26384>> det(A*B)ans =4>> det(A)*det(B)ans =4>> det(A'*B')ans =4>> det(A')*det(B')ans =4>> det(inv(A))ans =0.00016745>> 1/det(A)ans =0.00016745>> det(A*inv(B))ans =0.29257>> det(A)/det(B)ans =0.29257>>2.n阶的幻方阵是否奇异?用Matlab计算n=3、4、5、…、10时的det(magic(n))。

如何使用Matlab解决数学问题

如何使用Matlab解决数学问题

如何使用Matlab解决数学问题使用Matlab解决数学问题引言:数学作为一门基础学科,广泛应用于各个学科领域。

而Matlab作为一款数学软件,拥有强大的计算能力和丰富的函数库,成为了数学问题解决的得力工具。

本文将介绍如何使用Matlab解决数学问题,并通过实例来展示其强大的功能和灵活性。

一、Matlab的基本使用方法1. 安装和启动Matlab首先,我们需要从官方网站下载并安装Matlab软件。

安装完成后,打开软件即可启动Matlab的工作环境。

2. 变量和运算符在Matlab中,变量可以用来存储数据。

我们可以通过赋值运算符“=”将数值赋给一个变量。

例如,可以使用“a=5”将数值5赋给变量a。

Matlab支持常见的运算符,如加、减、乘、除等,可以通过在命令行输入相应的表达式进行计算。

3. Matirx和向量的操作Matlab中,Matrix和向量(Vector)是常用的数据结构。

我们可以使用方括号将数值组成的矩阵或向量输入Matlab,比如“A=[1 2; 3 4]”可以创建一个2x2的矩阵。

4. 函数和脚本Matlab提供了丰富的内置函数和函数库,可以通过函数来解决各种数学问题。

同时,我们还可以自己编写函数和脚本。

函数用于封装一段可复用的代码,而脚本则是按照特定的顺序执行一系列的命令。

二、解决线性代数问题1. 线性方程组求解Matlab提供了“solve”函数用于求解线性方程组。

例如,我们可以使用“solve([2*x + y = 1, x + 3*y = 1], [x, y])”来求解方程组2x + y = 1和x + 3y = 1的解。

2. 矩阵运算Matlab提供了丰富的矩阵运算函数,如矩阵的加法、乘法、转置等。

通过这些函数,我们可以快速进行矩阵运算,解决线性代数问题。

三、解决数值计算问题1. 数值积分对于某些无法解析求解的积分问题,Matlab可以通过数值积分方法求得近似解。

Matlab提供了“integral”函数用于数值积分,我们只需要给出被积函数和积分区间即可。

matlab矩阵与线性变换与计算

matlab矩阵与线性变换与计算

05
实例演示
矩阵的基本操作实例
矩阵的创建
使用方括号[],例如A = [1 2; 3 4]。
矩阵的加法
使用加号+,例如B = [5 6; 7 8],则A + B = [6 8; 10 12]。
矩阵的数乘
使用标量乘法,例如2 * A = [2 4; 6 8]。
矩阵的元素运算
使用点运算符.,例如A.^2 = [1 4; 9 16]。
矩阵计算实例
行列式计算
使用det函数,例如det(A) = -2。
行最简形式
使用rref函数,例如rref(A) = [1 0; 0 1]。
矩阵的逆
使用inv函数,例如inv(A) = [-2 -3; 1.5 0.5]。
矩阵的转置
使用'运算符,例如A' = [1 3; 2 4]。
THANKS
感谢观看
Matlab矩阵与线性变换与计 算
• Matlab矩阵基础 • 线性变换 • 矩阵计算 • Matlab中的矩阵与线性变换操作 • 实例演示
01
Matlab矩阵基础
矩阵的定义与表示
矩阵是一个由数字组 成的矩形阵列,行和 列的数量可以不同。
还可以使用分号来分 隔行,以创建多行矩 阵。
在Matlab中,可以 使用方括号[]来创建 矩阵,并使用逗号分 隔行内的元素。
矩阵的基本操作
加法
将两个矩阵的对应元素相加。
减法
将一个矩阵的对应元素减去另 一个矩阵的对应元素。
数乘
将一个标量与矩阵中的每个元 素相乘。
转置
将矩阵的行和列互换。
特殊类型的矩阵
对角矩阵
除了主对角线上的元素外,其他元素都为零 的矩阵。

用MATLAB计算矩阵与行列式教材

用MATLAB计算矩阵与行列式教材

运行结果: C= -1 -2 1 2 4 -1 2 3 -1 程序说明:
如果矩阵不可逆,则运行结果会给出警告信息.
练习3 利用矩阵的初等行变换求上例矩阵的逆. 程序设计: 矩阵A的增广矩阵 >> clear >> B=[1 –1 2 1 0 0;0 1 –1 0 1 0;2 1 0 0 0 1]; >> format rat 以有理格式输出 >> C=rref (B) 给出矩阵B的行最简形 C= 1 0 0 1 0 0
x1 2 x2 4 x3 0 2 x1 x2 x3 0 x x x 0 2 3 1
பைடு நூலகம்
练习2 求解方程组 解
,b AX
>> clear >> A=[2 1 2;2 1 4;3 2 1]; >> b=[3 1 7]’; >> X=A\b X= 2 1 -1
程序设计: >> clear >> A=[1 2 3;2 1 2;3 3 1]; >> B=[3 2 4;2 5 3;2 3 1];
>> C=A*B , D=B*A
运行结果: C= 13 21 13 12 15 13 17 24 22 D= 19 20 17 21 18 19 11 10 13
例题分析: 比较C和D,可以看出A*B和B*A的结果完全不同.
0 0 1
-1 -2 1 2 4 -1 2 3 -1
>> D=C(:,4:6) D= -1 -2 1 2 4 -1 2 3 -1
取矩阵C的4到6列, D即为矩阵A的逆矩阵
例题说明: 由线性代数的知识可知,矩阵 A 和其同型的单 位矩阵 E 组成增广矩阵 B ,对 B 进行初等行变换, 当矩阵 A 变为单位阵时,单位矩阵 E 变为矩阵 A 的 逆.
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用Matlab学习线性代数线性方程组与矩阵代数实验目的:熟悉线性方程组的解法和矩阵的基本运算及性质验证。

Matlab命令:本练习中用到的Matlab命令有:inv,floor,rand,tic,toc,rref,abs,max,round,sum,eye,triu,ones,zeros。

本练习引入的运算有:+,-,*,’,,\。

其中+和-表示通常标量及矩阵的加法和减法运算;*表示标量或矩阵的乘法;对所有元素为实数的矩阵,’运算对应于转置运算。

若A为一个n n⨯非奇异矩阵(det!=0)且B为一个n r⨯矩阵,则运算\A B等价于1-。

A B实验内容:1.用Matlab随机生成44⨯的矩阵A和B。

求下列指定的,,,C D G H,并确定那些矩阵是相等的。

你可以利用Matlab计算两个矩阵的差来测试两个矩阵是否相等。

(1)C=A*B,D=B*A,G=(A’*B’)’,H=(B’*A’)’C=H;D=G;(2)C=A’*B’,D=(A*B)’,G=B’*A’,H=(B*A)’C=H;D=G;(3)C=inv(A*B),D=inv(A)*inv(B),G=inv(B*A),H=inv(B)*inv(A)(4)C=inv((A*B)’),D=inv(A’*B’),G=inv(A’)*inv(B’),H=(inv(A)*inv(B))’(3)(4)中无相等的2.令n=200,并使用命令A=floor(10*rand(n));b=sum(A ’)’z=ones(n,1); 注释:(n 行一列全为1的矩阵)生成一个n n ⨯矩阵和两个n R 中的向量,它们的元素均为整数。

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

(1) 方程组 Ax b =的真解应为z 。

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

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

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

只需要用下面的命令:tic,x=A\b ;toctic,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)中的n 。

如(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,尽管C D,但乘积AC和AD是相等的。

为什么?试说明。

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

【此处B为令B=x*[1:6];A为A(:,6)=-sum(B(1:5,:))’】由于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是随机生成的,我们可以认为它是非奇异的。

那么方程组Ax b=应有唯一解。

用运算“\”求解。

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

比较U的最后一列和解x,结果是什么?【相等】在精确算术运算时,它们应当是相等的。

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

为比较他们两个,计算差U(:,7)-x或用format long考虑它们。

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

令A(:,3)=A(:,1:2)*[4 3]’【第一列乘以4加上第二列乘以3替换到第三列上】,利用Matlab计算rref([A b])。

方程组Ax b=有多少组解?【无解】试说明。

【RA<R[AB]】(3)令y=floor(20*rand(6,1))-10 且c=A*y,为什么我们知道方程组Ax=c必为相容?的?【x此时必有一解y,故为相容的】试说明。

计算[A c]的行最简形U。

方程组Ax b=有多少组解?【无穷多解】试说明。

【RA=RA c<6】(4) 由行最简形确定的自由变量应为3x 。

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

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

为检验Aw c =,计算剩余向量c Aw -。

(5) 令(:,7)(6,1)U zeros =。

矩阵U 应对应于[]|0A 的行最简形。

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

用A*Z 检验你的结论。

(6) 令3*v w z =+。

向量v 应为方程组Ax c =的解。

为什么?试说明。

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

在这个解中,自由变量3x 的取值是什么? 【3x =3】 如何使用向量w 和z 来求所有可能的方程组的解?【v=w+n*z,其中n 为任意实数】试说明。

6. 考虑下图:(1) 确定图的邻接矩阵A ,将其输入Matlab ;(2) 计算A 2并确定长度为2的路的条数【72】,其起止点分别为:【A^2+A中的数值之和,数字表示有几种路径,具体看程序】(3) 计算A 4、A 6、A 8并回答(2)中各种情况长度为4、【368】6、【2362】8、【15800】的路的条数。

试推测什么时候从顶点V i 到V j 没有长度为偶数 【即为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) 计算A 3、A 5、A 7并回答(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)=1, B(6,3)=1, B(5,8)=1, B(8,5)=1,对k=2,3,4,5计算B k 。

(4)中的推测在新的图形中是否还是成立的?【不成立】见程序】(6) 在图中增加{V 6,V 8},并构造得到的图的邻接矩阵C ,计算C 的幂次,并验证你在(4)中的推测对这个新图是否仍然成立。

【不成立】【见程序】V V 437.令A=magic(8),然后计算其行最简形。

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

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

方程组是相容的吗? 【不相容】 试说明。

【RA<RAc 】(2)令 b=[8 -8 -8 8 8 -8 -8 8]’;并考虑方程组Ax=b 。

该方程组应为相容的。

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

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

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

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

U 的非零行对应于分块形式的线性方程组[]12x E U c x ⎡⎤=⎢⎥⎣⎦为解此方程组,令V=U(1:3,4:8),c=U(1:3,9)并利用Matlab ,根据x 2,c 和V 计算x 1。

令x=[x 1;x 2],验证x 是方程组的解。

8.令 B=[-1,-1;1,1]和A=[zeros(2),eye(2);eye(2),B] 验证B 2=0。

(1)用Matlab 计算A 2,A 4,A 6,A 8。

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

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

(2)用Matlab 计算A 3,A 5,A 7和A 9。

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

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

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:3,4:6)并用B 的第四行到第6行类似定义B21和B22。

(2)令 C=inv(B11)。

应有C T =C 和B21T =B12。

为什么?【对称阵的逆矩阵与该逆矩阵的转置是相等的,B12的第i 行的数等于B21的第i 列的数】 试说明。

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

然后,令G=B21*C 和 H=B22-B21*C*B21’利用Matlab 函数eye 和zeros 构造0110,0E B L D G E H ⎡⎤⎡⎤==⎢⎥⎢⎥⎣⎦⎣⎦ 计算W=L*D*L ’,并通过计算W-B 与B 进行比较。

相关文档
最新文档