数学用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 的 逆.

利用Matlab进行线性代数问题求解的方法与案例

利用Matlab进行线性代数问题求解的方法与案例

利用Matlab进行线性代数问题求解的方法与案例引言线性代数是数学的一个重要分支,广泛应用于工程、物理、计算机科学等领域。

而Matlab作为一种功能强大的数值计算软件,提供了各种实用的工具和函数,可以方便地解决线性代数问题。

本文将介绍一些常用的线性代数问题求解方法,并通过具体的案例来展示Matlab在实际应用中的效果。

一、线性方程组的求解线性方程组是线性代数中最基础的问题之一。

Matlab提供了多种求解线性方程组的函数,如“backslash”操作符(\)和“linsolve”函数等。

下面通过一个实例来说明Matlab的线性方程组求解功能。

案例:假设有以下线性方程组需要求解:2x + 3y - 4z = 53x - 2y + z = 8x + 5y - 3z = 7在Matlab中输入以下代码:A = [2 3 -4; 3 -2 1; 1 5 -3];b = [5; 8; 7];x = A\b;通过以上代码,我们可以得到线性方程组的解x=[1; -2; 3]。

这表明在满足以上方程组的条件下,x=1,y=-2,z=3。

可以看出,Matlab在求解线性方程组时,使用简单且高效。

二、矩阵的特征值和特征向量求解矩阵的特征值和特征向量也是线性代数中的重要概念。

利用特征值和特征向量可以得到矩阵的许多性质和信息。

在Matlab中,我们可以通过“eig”函数来求解矩阵的特征值和特征向量。

案例:假设有一个2x2矩阵A,需要求解其特征值和特征向量。

在Matlab中输入以下代码:A = [2 3; 1 4];[V, D] = eig(A);通过以上代码,我们可以得到矩阵A的特征向量矩阵V和特征值矩阵D。

具体结果如下:特征向量矩阵V = [0.8507 -0.5257; 0.5257 0.8507]特征值矩阵D = [1.5858 0; 0 4.4142]由结果可知,矩阵A的特征向量矩阵V和特征值矩阵D可以提供有关该矩阵的很多信息,如相关线性变换、对称性等。

MATLAB软件在线性代数教学中的应用

MATLAB软件在线性代数教学中的应用

MATLAB软件在线性代数教学中的应用
MATLAB是一个具有强大计算和图形处理功能的数学软件,它广泛应用于各个领域,包括线性代数教学。

在线性代数教学中,MATLAB可以帮助学生更好地理解和应用矩阵和线性方程组等基础概念。

首先,在矩阵的操作方面,MATLAB可以用来进行矩阵的创建、转置、逆矩阵计算、乘法运算、矩阵方程求解等操作。

例如,通过输入命令行“A=[1 2;3 4]”创建一个
$2\times 2$矩阵,通过输入命令行“B=A'”可以得到A的转置矩阵,通过输入命令行
“inv(A)”可以得到A的逆矩阵,通过输入命令行“C=A*B”可以得到A和B的乘积矩阵,在输入命令行“x=A\b”可以求解矩阵方程$Ax=b$。

其次,在解决线性方程组的问题上,MATLAB可以用来求解线性方程组、得到线性方程组解的唯一性和存在性,并且可以比较不同求解方法的效率。

例如,通过输入命令行
“x=A\b”就可以得到线性方程组$Ax=b$的解,通过输入命令行“rank(A)”可以得到矩阵
A的秩,通过输入命令行“cond(A)”可以得到矩阵A的条件数。

此外,在线性代数的复杂问题求解上,MATLAB可以用来进行特征值和特征向量的计算、矩阵的奇异值分解等问题的求解。

例如,通过输入命令行“[V,D]=eig(A)”可以得到矩阵
A的特征值和特征向量,通过输入命令行“[U,S,V]=svd(A)”可以得到矩阵A的奇异值分解。

总之,MATLAB的强大计算和图形处理功能,可以为线性代数教学的理解和应用提供很好的帮助。

通过学生编写MATLAB程序,实现矩阵和线性方程组的数值求解,可以加深对
线性代数基础概念的理解,提高线性代数教学的效果。

MATLAB在高等数学教学中的应用

MATLAB在高等数学教学中的应用

MATLAB在高等数学教学中的应用1. 引言1.1 MATLAB在高等数学教学中的应用概述在微积分教学中,MATLAB可以用来绘制曲线和图形,解决数值积分和微分方程等数学问题,帮助学生更深入地理解微积分的概念和应用。

在线性代数教学中,MATLAB可以用来求解线性方程组、计算矩阵的特征值和特征向量,加深学生对向量空间和线性变换的理解。

MATLAB在高等数学教学中的应用不仅帮助教师更好地传授知识,也提升了学生的学习效果和兴趣。

随着技术的不断发展和完善,MATLAB在高等数学教学中的应用前景将更加广阔,为数学教育带来更多的可能性和创新。

2. 正文2.1 MATLAB在微积分教学中的应用MATLAB可以用来绘制函数的图像,帮助学生直观地理解数学概念。

通过输入函数表达式,学生可以立即看到函数的图像,从而更好地理解函数的性质和特点。

MATLAB可以进行数值计算,帮助学生解决一些复杂的积分和微分问题。

对于一些无法通过解析方法求解的问题,可以利用MATLAB进行数值积分和数值微分,提高学生的问题求解能力。

MATLAB还可以用来进行符号计算,帮助学生简化复杂的数学表达式,进行代数化简和方程求解,加深学生对微积分概念的理解。

MATLAB在微积分教学中的应用可以帮助学生更好地理解和掌握微积分知识,提高他们的问题求解能力和数学建模能力。

通过结合理论知识和实际计算,MATLAB可以使微积分课程变得更加生动和有趣,激发学生对数学学习的兴趣。

2.2 MATLAB在线性代数教学中的应用1. 矩阵运算:在线性代数课程中,学生需要进行大量的矩阵运算,包括矩阵相加、相乘、求逆等操作。

利用MATLAB可以快速进行这些运算,并且可以帮助学生更好地理解线性代数的概念。

2. 线性方程组求解:线性代数中最基本的问题之一就是求解线性方程组。

MATLAB提供了很多线性代数相关的函数,可以帮助学生查找线性方程组的解,包括使用高斯消元法、LU分解等方法。

【matlab-7】Matlab与线性代数(一)

【matlab-7】Matlab与线性代数(一)

【matlab-7】Matlab与线性代数(⼀)⼀、线性代数基本⽅程组基本⽅程组:矩阵表⽰:解决问题的视⾓:1、解联⽴⽅程的视⾓ (⾏阶梯变换 & 矩阵运算)着重研究解x,即研究线性⽅程组的解法。

中学⾥的解⽅程和MATLAB的矩阵除法就是这样。

要点:矩阵的每⼀⾏代表⼀个⽅程,m⾏代表m个线性联⽴⽅程。

n列代表n个变量。

如果m是独⽴⽅程数,根据m<n、m=n、m>n确定⽅程是 ‘⽋定’、‘适定’ 还是 ‘超定’。

对这三种情况都会求解了,研究就完成了。

必须剔除⾮独⽴⽅程。

⾏阶梯形式、⾏列式和秩的概念很⼤程度上为此⽬的⽽建⽴。

2、向量空间中向量的合成的视⾓ (⽤向量空间解⽅程组)把A各列看成n个m维基本向量,线性⽅程组看成基向量的线性合成:要点:解x是这些基向量的系数。

它可能是常数(适定⽅程),也可能成为其中的⼀个⼦空间(⽋定⽅程) 。

要建⽴其⼏何概念,并会求解或解空间。

3、线性变换或映射的视⾓ (线性变换及其特征)把b看成变量y,着重研究把Rn空间的x变换为Rm空间y 的效果,就是研究线性变换系数矩阵A的特征对变换的影响。

要点:就是要找到适当的变换,使研究问题的物理意义最为明晰。

特征值问题就是⼀例。

⼆、线性代数建模与应⽤概述介绍⼀些⼤的系统⼯程中使⽤线性代数的情况,使读者知道为什么线性代数在近⼏⼗年来变得如此的重要。

Leontief教授把美国的经济⽤500个变量的500个线性⽅程来描述,在1949年利⽤当时的计算机解出了42×42的简化模型,使他于1973年获得诺贝尔经济奖,从⽽⼤⼤推动了线性代数的发展。

把飞⾏器的外形分成若⼲⼤的部件,每个部件沿着其表⾯⼜⽤三维的细⽹格划分出许多⽴⽅体,这些⽴⽅体包括了机⾝表⾯以及此表⾯内外的空⽓。

对每个⽴⽅体列写出空⽓动⼒学⽅程,其中包括了与它相邻的⽴⽅体的共同边界变量,这些⽅程通常都已经简化为线性⽅程。

对⼀个飞⾏器,⼩⽴⽅体的数⽬可以多达400,000个,⽽要解的联⽴⽅程可能多达2,000,000个。

matlab软件在高校教学中的应用

matlab软件在高校教学中的应用

matlab软件在高校教学中的应用Matlab是一种基于矩阵运算的高级数据处理软件。

在高校教学中,Matlab已成为了必不可少的教学工具,它不仅可以帮助学生更好地理解理论知识,还可帮助教师更好地进行教学工作。

本文将介绍Matlab在高校教学中的应用。

1. 数学分析Matlab可以用来求解微积分、积分、微分方程等问题,如求解极限、根数量、二次方程等。

同时,Matlab还可以用来绘制函数图形,使得学生能够透彻地理解函数的变化规律。

2. 线性代数Matlab的主要应用之一就是求解线性代数问题。

它可以实现矩阵运算、解线性方程组、矩阵转置、矩阵乘法等。

这些运算是学生学习线性代数与矩阵论的基础,在Matlab中能够将学习与计算相结合,更好地促进学生的理解。

二、Matlab在工科类课程中的应用1. 信号处理Matlab可以用来处理各种信号,如音频、视频、图像等。

在通信工程、电子信息工程、计算机工程等课程中,信号处理是一个重要的环节,Matlab提供了各种信号处理工具箱,能够帮助学生更好地学习这些课程。

2. 控制工程Matlab可用来进行控制系统分析与设计、PID控制等课程。

学生可以通过Matlab进行控制工程的模拟与计算,在模拟运行过程中反复调试,快速地找到问题与解决方法。

3. 机械工程在机械工程教学中,Matlab可以用来进行机械系统的建模与仿真。

学生可以用Matlab实现机械系统的运动学、逆运动学分析,还可以对机器人系统进行控制与仿真。

Matlab广泛应用于科学研究领域,它可以用来进行科学数据的分析、统计学的检验、预测模型的建立等。

Matlab开发了许多工具箱,如信号处理工具箱、图像处理工具箱、金融工具箱、统计工具箱等,可以应用在气象、环境、经济、医学等各个学科领域,非常适用于数据处理、分析和建模。

2. 可视化Matlab可以提供图形化界面,支持三维可视化展示,可以将科学数据用图表的形式直观地呈现在人们眼前。

线性代数的MATLAB软件实验报告

线性代数的MATLAB软件实验报告

线性代数的MATLAB 软件实验一、实验目的1.熟悉矩阵代数主要MATLAB 指令。

2.掌握矩阵的转置、加、减、乘、除、乘方、除法等MATLAB 运算。

3.掌握特殊矩阵的MATLAB 生成。

4.掌握MATLAB 的矩阵处理方法。

5.掌握MATLAB 的矩阵分析方法。

6.掌握矩阵的特征值与标准形的MATLAB 验算。

7.掌握线性方程组的MATLAB 求解算法。

二、实验原理1.线性方程组 【基本观点】自然科学和工程实践很多问题的解决都涉及线性代数方程组的求解和矩阵运算.一方面,许多问题的数学模型本身就是一个线性方程组,例如结构应力分析问题、电子传输网分析问题和投入产出分析问题;另一方面,有些数值计算方法导致线性方程组求解,如数据拟合,非线性方程组求解和偏微分方程组数值解等.n 个未知量m 个方程的线性方程组一般形式为⎪⎪⎩⎪⎪⎨⎧=+++=+++=+++.,,22112222212111212111m n mn m m n n n n b x a x a x a b x a x a x a b x a x a x a (3.1) 令,,,2121212222111211⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎪⎪⎭⎫⎝⎛=m n mn m m n n b b b b x x x x a a a a a aa a a A则得矩阵形式Ax=b. (3.2)若右端b=0,即Ax=0, (3.3)则称方程组为齐次的.方程组(3.1)可能有唯一解,可能有无穷多解,也可能无解,主要取决于系数矩阵A 及增广矩阵(A,b )的秩.若秩(A )=秩(A,b )=n,存在唯一解,其解理论上用Cramer 法则求出,但由于这种方法要计算n+1个n 阶行列式,计算量太大通常并不采用;若秩(A )=秩(A,b )<n,存在无穷多解,其通解可表示为对应齐次方程组(3.3)的一个基础解系与(3.2)的一个特解的叠加;若秩(A )≠秩(A,b ),则无解,这时一般寻求最小二乘近似解,即求x 使向量Ax-b 模最小.P50矩阵左除的数学思维:恒等变形Ax=b 方程两边的左边同时除以A ,得:b AAx A11=,即:b A b Ax 11-==MATLAB 的实现(左除):x=A\b 2.逆矩阵 【基本观点】方阵A 称为可逆的,如果存在方阵B ,使 AB=BA=E,这里E 表示单位阵.并称B 为A 的逆矩阵,记B=1-A .方阵A 可逆的充分必要条件是A 的行列式det A ≠0.求逆矩阵理论上的公式为*1det 1A AA =-, (3.4)这里*A 为A 的伴随矩阵.利用逆矩阵,当A 可逆时,(3.2)的解可表示为b A x 1-=.由于公式(3.4)涉及大量行列式计算,数值计算不采用.求逆矩阵的数值算法一般是基于矩阵分解的方法.3.特征值与特征向量 【基本观点】对于方阵A ,若存在数λ和非零向量x ,使,x Ax λ= (3.5) 则称λ为A 的一个特征值,x 为A 的一个对应于特征值λ的特征向量.特征值计算归结为特征多项式的求根.对于n 阶实数方阵,特征多项式在复数范围内总有n 个根。

matlab 方程组 解

matlab 方程组 解

Matlab方程组解1. 引言方程组是数学中一个重要的概念,它描述了多个未知数之间的关系。

解方程组的过程在科学、工程和计算机科学等领域中有着广泛的应用。

Matlab作为一种高级数值计算环境,提供了丰富的工具和函数来解决方程组的求解问题。

本文将介绍如何使用Matlab解方程组,包括线性方程组和非线性方程组的求解方法。

2. 线性方程组的求解2.1 利用矩阵求解线性方程组可以表示为矩阵形式,例如:Ax = b,其中A是系数矩阵,x是未知数向量,b是常数向量。

在Matlab中,可以使用线性代数工具箱中的函数来求解线性方程组。

2.1.1 使用inv函数求解如果系数矩阵A是可逆的,可以使用inv函数求解线性方程组。

具体步骤如下: 1. 计算A的逆矩阵:A_inv = inv(A) 2. 计算解向量:x = A_inv * b2.1.2 使用linsolve函数求解linsolve函数可以直接求解线性方程组,无需计算逆矩阵。

具体步骤如下: 1. 调用linsolve函数:x = linsolve(A, b)2.2 利用高斯消元法求解高斯消元法是一种常用的求解线性方程组的方法,它通过矩阵的行变换将方程组转化为上三角矩阵,然后通过回代得到解。

在Matlab中,可以使用lu函数来进行高斯消元法求解。

2.2.1 使用lu函数求解lu函数可以将方程组的系数矩阵A分解为一个下三角矩阵L和一个上三角矩阵U,即A = LU。

具体步骤如下: 1. 调用lu函数:[L, U] = lu(A) 2. 解得方程组:x = U \ (L \ b)3. 非线性方程组的求解非线性方程组是指未知数与其函数之间存在非线性关系的方程组。

与线性方程组不同,非线性方程组的求解通常需要借助数值方法。

Matlab提供了多种函数和工具箱来解决非线性方程组的求解问题。

3.1 利用fsolve函数求解fsolve函数是Matlab中用于求解非线性方程组的函数,它通过迭代的方式逼近方程组的解。

Matlab中的矩阵操作与线性代数计算

Matlab中的矩阵操作与线性代数计算

Matlab中的矩阵操作与线性代数计算Matlab是一种广泛应用于科学计算和工程领域的编程语言和环境,它提供了丰富的数学函数和工具箱,方便进行矩阵操作和线性代数计算。

在本文中,我们将探讨Matlab中常用的矩阵操作和线性代数计算的一些技巧和应用。

1. 矩阵的创建和初始化在Matlab中,我们可以使用不同的方法来创建和初始化矩阵。

最常见的方法是使用方括号来定义一个矩阵,例如:A = [1 2 3; 4 5 6; 7 8 9];这样就创建了一个3x3的矩阵A,其中每个元素的值依次为1到9。

我们还可以使用特殊的矩阵函数来创建特定类型的矩阵,如单位矩阵(eye)、全零矩阵(zeros)和全一矩阵(ones)等,例如:B = eye(4); % 创建一个4x4的单位矩阵C = zeros(2,3); % 创建一个2x3的全零矩阵D = ones(3,2); % 创建一个3x2的全一矩阵通过这种方式,我们可以方便地创建各种形状和类型的矩阵。

2. 矩阵的基本操作在Matlab中,我们可以对矩阵进行基本的操作,如矩阵的加法、减法、乘法和转置等。

这些操作可以通过运算符来实现,例如:E = A + B; % 矩阵的加法F = A - B; % 矩阵的减法G = A * B; % 矩阵的乘法H = A'; % 矩阵的转置使用这些操作,我们可以方便地进行矩阵的运算和变换。

此外,Matlab还提供了一些特殊的矩阵函数,如矩阵的逆(inv)和矩阵的行列式(det)等,以支持更复杂的线性代数计算。

3. 矩阵的索引和切片在Matlab中,我们可以通过索引和切片来访问矩阵的特定元素或子矩阵。

矩阵的索引从1开始,可以使用括号和下标来指定所需的元素或子矩阵。

例如:a = A(2,3); % 访问矩阵A的第2行第3列的元素b = A(1:2,2:3); % 获取矩阵A的前两行和第2、3列的子矩阵c = A(:,1); % 获取矩阵A的第一列的所有元素通过这种方式,我们可以方便地对矩阵的特定部分进行操作和分析,从而提高计算效率和精度。

Matlab应用线性代数

Matlab应用线性代数

矩阵的行列式
可用函数det求矩阵的行列式大小。 例:
a=[1 2 0;2 5 -1;4 10 -1]; b=det(a) b=
1
矩阵的四则运算
❖ 数组和矩阵的加减运算使用加号和减号,即 “+”和“-”。
❖ 矩阵相乘使用“*”运算符。
❖ 如果只是将两个矩阵中相同位置的元素相乘, 使用“.*”运算符。
线性方程组的求解
❖ 方形系统 p135 ❖ 超定系统 ❖ 不定系统
符号矩阵
❖ 符号矩阵的四则运算 ❖ 符号矩阵的转置运算 ❖ 符号矩阵的行列式运算 ❖ 符号矩阵的求逆运算 ❖ 符号矩阵的求秩运算 ❖ 符号矩阵的常用函数运算 ❖ 符号矩阵常用线性方程(组)的求解
符号矩阵运算的函数: symadd(a,d) —— 符号矩阵的加 symsub(a,b) —— 符号矩阵的减 symmul(a,b) —— 符号矩阵的乘 symdiv(a,b) —— 符号矩阵的除 sympow(a,b) —— 符号矩阵的幂运算 symop(a,b) —— 符号矩阵的综合运算
load mri; montage(D,map);
❖ Imwrite;将图像写成图像文件 (bmp,hdf,jpeg,tiff等); imwrite(A,文件名,‘格式’);
❖ Warp 显示图像为纹理映射表面 warp(x,y,z,….) [x,y,z]=sphere; d=imread('test.jpg'); warp(x,y,z,d); warp(x,y,z,X,map);%% load trees; 具有颜色图map的索引图X
0000
矩阵的秩
用函数rank求矩阵的秩。 例:
a=[1 2 0;2 5 -1;4 10 -1]; b=rank(a) b=

MATLAB实验报告(二)矩阵代数

MATLAB实验报告(二)矩阵代数
从而向量组的秩为3,它的一个最大线性无关组是a1,a2,a4,且a3=0.5*a1-0.5*a2,a5=5*a1+a2-5*a4。
实验总结:
通过实际的上机操作,我熟悉了MATLAB的有关线性代数运算指令和矩阵代数的MATLAB指令,学会了如何分析并解决矩阵除法、线性方程组的通解和矩相似对角化的问题,以及通过建模实验解决投入产出分析、基因遗产等应用问题,这一章节的指令比较多,也比较杂,需要分门别类地区分开,并且上机运行熟练并且记忆。
ans =
3 3%秩相等且小于4,说明有无穷多解
>> x=A\b
x =%求得一特解
1.0000
0
1.0000
0.0000
>>x0=null(A)
x0= %得到Ax=0的基础解系
-0.6255
0.6255
-0.2085
0.4170
求得通解为kx0+x
改进或思考:
>> A=[2 1 -1 1;1 2 1 -1;1 1 2 1];b=[1;2;3];
姓名:学号:实验日期:
实验目的:
1、学习MATLAB的有关线性代数运算指令;
2、熟悉矩阵代数的MATLAB指令;
3、熟悉如何应用指令解决计算和建模实验问题。
实验项目:
1、学会应用矩阵代数的MATLAB指令解决问题;
2、通过实验解决矩阵除法、线性方程组的通解和矩相似对角化的问题;
3、通过建模实验研究投入产出分析、基因遗产等应用问题。
>> C=[6/25, 2/5,1/20; 2.25/25,1/5,0.2/20; 3/25,0.2/5,1.8/20];A=(eye(3)-C)
A =

matlab在高等数学中的应用

matlab在高等数学中的应用

matlab在高等数学中的应用Matlab是一种强大的数学软件工具,广泛应用于高等数学的教学和研究中。

它提供了丰富的功能和工具,可以帮助学生和研究人员更好地理解和应用高等数学的概念和方法。

本文将介绍Matlab在高等数学中的应用,并分别从微积分、线性代数和概率论三个方面进行探讨。

Matlab在微积分中的应用非常广泛。

微积分是高等数学中的重要分支,研究函数的极限、导数、积分等概念和方法。

Matlab提供了丰富的函数和工具,可以进行符号计算、求解微分方程、绘制函数图像等。

例如,可以使用Matlab计算函数的导数和积分,从而得到函数的极值、拐点和定积分等重要信息。

此外,Matlab还可以用于求解微分方程,例如常微分方程、偏微分方程等。

通过Matlab的求解器,可以得到微分方程的近似解或精确解,进一步深入理解微积分的概念和方法。

Matlab在线性代数中的应用也非常重要。

线性代数是高等数学中的另一个重要分支,研究向量、矩阵、线性方程组等概念和方法。

Matlab提供了丰富的矩阵运算和线性代数函数,可以进行矩阵的加减乘除、转置、逆矩阵、特征值和特征向量等计算。

例如,可以使用Matlab求解线性方程组,通过矩阵的消元和回代,得到方程组的解析解或数值解。

此外,Matlab还可以进行矩阵的特征值分解和奇异值分解,从而得到矩阵的特征值、特征向量和奇异值等重要信息。

通过Matlab的计算和可视化功能,可以帮助学生更好地理解线性代数的概念和方法。

Matlab在概率论中的应用也非常突出。

概率论是高等数学中的重要分支,研究随机变量、概率分布、概率论等概念和方法。

Matlab提供了丰富的统计和概率函数,可以进行概率分布的计算、随机变量的模拟和统计分析等。

例如,可以使用Matlab计算正态分布的概率密度函数和累积分布函数,从而得到随机变量的概率分布和统计特性。

此外,Matlab还可以进行随机变量的模拟,通过生成随机数样本,估计概率分布的参数和进行假设检验等。

线性代数matlab实验指导

线性代数matlab实验指导

实验四 行列式及应用
第1章 矩阵与行列式
实验四 行列式及应用 【实验目的】 1. 了解行列式的概念,掌握行列式的性质 2.掌握行列式的计算方法 3.掌握Gramer法则求解线性方程组 【实验要求】掌握计算行列式det、解线性方程组solve、生成Vandermonde行列式vander等命令 【实验内容】 1.计算下列行列式的值: (1) ;(2) ;
第1章 矩阵与行列式
>> G=inv(A) 运行结果: G = 1/4 1/4 -1/4 1 -2 1 -3/4 5/4 -1/4 >> H=A^5 运行结果: H = 1492 1006 1460 1558 1069 1558 1914 1331 1946
第1章 矩阵与行列式
【矩阵与行列式简介】 在计算机日益发展的今天,线性代数起着越来越重要的作用。线性代数起源于解线性方程组的问题,而利用矩阵来求解线性方程组的Gauss消元法至今仍是十分有效的计算机求解线性方程组的方法。矩阵是数学研究和应用的一个重要工具,利用矩阵的运算及初等变换可以解决求解线性方程组等问题。特殊的矩阵方阵的数字特征之一是方阵的行列式,使用行列式可以描述方阵的一些重要的性质。通过计算行列式可求逆矩阵,n个
第1章 矩阵与行列式
实验三 Gauss消元法
【实验目的】掌握解线性方程组的Gauss消元法 【实验要求】掌握矩阵赋值命令、初等变换相关命令、简化矩阵为阶梯形式rref等命令 【实验内容】
用Gauss消元法解线性方程组:

第1章 矩阵与行列式
【实验过程】 1.(1)解法一:Gauss消元法. >>A=[1 2 1 8;1 2 3 10;2 3 1 13;1 2 2 9] ; >>A(2,:)=A(2,:)-A(1,:); >>A(3,:)=A(3,:)-2*A(1,:); >>A(4,:)=A(4,:)-A(1,:) 运行结果: A = 1 2 1 8 0 0 2 2 0 -1 -1 -3 0 0 1 1 >> A([2,3],:)=A([3,2],:) 运行结果: A = 1 2 1 8 0 -1 -1 -3 0 0 2 2 0 0 1 1
  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 进行比较。

相关文档
最新文档