数学实验

Download Report

Transcript 数学实验

实验一
矩阵的基本运算(一)
一、实验目的

熟悉MATLAB软件中关于矩阵的基本命令,掌握
利用MATLAB软件进行向量、矩阵的输入,向量
与向量的运算,矩阵与矩阵的运算,矩阵与向量的
运算。
二、相关知识

在线性代数中,我们曾经学过关于向量与向量的运
算,主要包括向量与向量的加减法,数与向量的乘
法;我们还学习过矩阵与矩阵的运算,主要包括矩
阵的加减法,乘法,矩阵与向量的乘法,数与矩阵
的乘法;矩阵的转置;矩阵求逆;矩阵求特征值;
矩阵的初等变换;向量组的线性相关性等。我们现
在要利用MATLAB软件的相关命令来完成这些运
算。在MATLAB中,我们把向量看做1行n列(行
向量)或n行1列(列向量)的矩阵,这样就可以将
向量和矩阵放在一起讨论。

为了进行矩阵的各种运算,首先要输入矩阵。在
MATLAB中,矩阵的输入方法主要有两种,一种
是在MATLAB的命令窗口中输入,这种方法适合
输入一些阶数较低的矩阵,而对于一些阶数较高的
矩阵,则最好采用建立磁盘文件的方法,这样便于
矩阵的初等变换;向量组的线性相关性等。我们现
在要利用MATLAB软件的相关命令来完成这些运
算。在MATLAB中,我们把向量看做1行n列(行
向量)或n行1列(列向量)的矩阵,这样就可以将
向量和矩阵放在一起讨论。


为了进行矩阵的各种运算,首先要输入矩阵。在
MATLAB中,矩阵的输入方法主要有两种,一种
是在MATLAB的命令窗口中输入,这种方法适合
输入一些阶数较低的矩阵,而对于一些阶数较高的
矩阵,则最好采用建立磁盘文件的方法,这样便于
多次利用,也方便在需要的时候可以修改数据。在
命令窗口输入的方法为:
>>A=[1,2,3;4,5,6;7,8,9];

这表示在命令窗口中输入矩阵,
1 2 3 
A  4 5 6
7 8 9
多次利用,也方便在需要的时候可以修改数据。在
命令窗口输入的方法为:
 >>A=[1,2,3;4,5,6;7,8,9];


这表示在命令窗口中输入矩阵,
 1 2 3


A   4 5 6
7 8 9

注意,逗号表示同行元素,也可用空格代替,分号
表示换行。
• 如果使用磁盘文件的方法,则需要建立一个以m为
后缀的文本文件,它可以用MATLAB提供的编辑
器编辑,也可以用任何一个能够编辑文本文件的编
辑器来编辑,但我们建议大家使用MATLAB提供
的编辑器来编辑,因为该编辑器不但提供了编辑环
境,同时还提供了MATLAB程序的调试环境。该
注意,逗号表示同行元素,也可用空格代替,分号
表示换行。

如果使用磁盘文件的方法,则需要建立一个以m为
后缀的文本文件,它可以用MATLAB提供的编辑
器编辑,也可以用任何一个能够编辑文本文件的编
辑器来编辑,但我们建议大家使用MATLAB提供
的编辑器来编辑,因为该编辑器不但提供了编辑环
境,同时还提供了MATLAB程序的调试环境。该
编辑器的使用方法是在MATLAB主菜单中选File —
>New —>M-File,就打开了一个编辑器的窗口,如
下图所示:

文本文件的内容与在命令窗口中输入的相同。将文
本文件放在一个特定的位置(某一个文件夹中),
并将该位置加入到MATLAB的工作目录中,用
File->Setpath来完成,这在绪论中已有介绍。使用
时,先在命令窗口输入文件名,接着,就可以使用
该文件中的所有数据了。注意:多个矩阵可以存放
编辑器的使用方法是在MATLAB主菜单中选File —
>New —>M-File,就打开了一个编辑器的窗口,如
下图所示:
文本文件的内容与在命令窗口中输入的相同。将文
本文件放在一个特定的位置(某一个文件夹中),
并将该位置加入到MATLAB的工作目录中,用
File->Setpath来完成,这在绪论中已有介绍。使用
时,先在命令窗口输入文件名,接着,就可以使用
该文件中的所有数据了。注意:多个矩阵可以存放
在一个文件中。
 关于一些常见的矩阵运算在MATLAB中的实现方
法,我们将MATLAB中关于矩阵的基本命令和功
能列表如下:

序号
1
2
功能
求矩阵A的转置
求矩阵A与矩阵B的和
3
4
求矩阵A减矩阵B
求数k乘以矩阵A
MATLAB命令
A’
A+B
A-B
k*A
在一个文件中。
 关于一些常见的矩阵运算在MATLAB中的实现方
法,我们将MATLAB中关于矩阵的基本命令和功
能列表如下:

序号
1
功能
求矩阵A的转置
MATLAB命令
A’
2
3
4
求矩阵A与矩阵B的和
求矩阵A减矩阵B
求数k乘以矩阵A
A+B
A-B
k*A
5
6
7
8
求矩阵A乘以矩阵B
求A的行列式
A的秩
A的逆
A*B
det(A)
rank(A)
inv(A)
9
10
B左乘A的逆;或A右除B,即B*inv(A)
B右乘A的逆;或A左除B,即inv(A)*B
B/A
A\B
11
A的n次幂
A^n
12
A与B的对应元素相乘
A.*B
13
选择A的第i行生成一个行向量
ai=A(i,:)
14
选择A的第j列生成一个列向量
aj=A(:,j)
5
6
7
求矩阵A乘以矩阵B
求A的行列式
A的秩
A*B
det(A)
rank(A)
8
A的逆
inv(A)
9
10
B左乘A的逆;或A右除B,即B*inv(A)
B右乘A的逆;或A左除B,即inv(A)*B
B/A
A\B
11
A的n次幂
A^n
12
A与B的对应元素相乘
A.*B
13
选择A的第i行生成一个行向量
ai=A(i,:)
14
选择A的第j列生成一个列向量
aj=A(:,j)
15
选择A的某几行、某几列上
交叉元素生成A的子矩阵
A(起始行:步长:终行,
起始列:步长:终列),
步长为1时可以省略
16
生成n阶零矩阵
zeros(n)
17
生成n阶单位阵
eye(n)
18
两个向量的内积
a1*a2’
MATLAB的一些其它命令:
序号
功能
MATLAB命令
1
存储工作空间变量,即命令窗
口使用过的变量
save 文件名 变量名
15
选择A的某几行、某几列上
交叉元素生成A的子矩阵
A(起始行:步长:终行,
起始列:步长:终列),
步长为1时可以省略
16
生成n阶零矩阵
zeros(n)
17
生成n阶单位阵
eye(n)
18
两个向量的内积
a1*a2’
MATLAB的一些其它命令:
序号
功能
MATLAB命令
1
存储工作空间变量,即命令窗
口使用过的变量
save 文件名 变量名
2
列出工作空间的所有变量
whos
3
help 函数名
可查阅该命令的用法
help命令
4
运行演示程序demo
demo命令
三、实验内容

1.已知矩阵A、B、b如下:
4  1 1  9 10 
3
6

5
0
7
4

16


 1  4 7 1 6
8 
A

2

4
5

6
12

8


 3 6  7 8  1 1 


1
3
0 
 8  4 9
6 3 2 
1 2 4
 7 9 16  5 8  7 


 8 11 20 1
5
5 
B

10
15
28
13

1
9


12 19 36 25  7 23 


5 
 2 4 6  3 0
b  1 3 5 7 9 11

在磁盘上建立一个名为sy1sj.m的文件,将矩阵A、
B、b输入其中;
三、实验内容
2.在1的基础上,在磁盘上建立文件sy1cx.m,完
成下列计算:
 1)X11=A’,X12=A+B,X13=A-B,X14=AB;
 2)X21=|A|,X22=|B|;
 3)X31=R(A),X32=R(B);
 4)X4=A-1;

b  1 3 5 7 9 11
 在磁盘上建立一个名为sy1sj.m的文件,将矩阵A、
B、b输入其中;
2.在1的基础上,在磁盘上建立文件sy1cx.m,完
成下列计算:
 1)X11=A’,X12=A+B,X13=A-B,X14=AB;
 2)X21=|A|,X22=|B|;
 3)X31=R(A),X32=R(B);
 4)X4=A-1;
 5)作矩阵C,其元素为A的元素乘以每个元素的行
标再乘以每个元素的列标。
 3.完成实验报告。
