矩阵的生成除了直接输入法,还可以利用M文件生成法和文本文件生成法等。
1.利用M文件创建
当矩阵的规模比较大时,直接输入法就显得笨拙,出差错也不易修改。为了解决这些问题,可以将所要输入的矩阵按格式先写入一文本文件中,并将此文件以m为其扩展名,即M文件。
M文件是一种可以在MATLAB环境下运行的文本文件,它可以分为命令式文件和函数式文件两种。在此处主要用到的是命令式M文件,用它的简单形式来创建大型矩阵。在MATLAB命令行窗口中输入M文件名,所要输入的大型矩阵即可被输入到内存中。
M文件中的变量名与文件名不能相同,否则会造成变量名和函数名的混乱。运行M文件时,需要先将M文件sample.m复制到当前目录文件夹下,否则运行时无法调用。
2.利用文本创建
MATLAB中的矩阵还可以由文本文件创建,即在文件夹(通常为work文件夹)中建立txt文件,在命令行窗口中直接调用此文件名即可。
用户可以直接用函数来生成某些特定的矩阵,常用的函数如下:
eye(n):创建n×n单位矩阵。
eye(m,n):创建m×n的单位矩阵。
eye(size(A)):创建与A维数相同的单位矩阵。
ones(n):创建n×n全1矩阵。
ones(m,n):创建m×n全1矩阵。
ones(size(A)):创建与A维数相同的全1阵。
zeros(m,n):创建m×n全0矩阵。
zeros(size(A)):创建与A维数相同的全0阵。
rand(n):在[0,1]区间内创建一个n×n均匀分布的随机矩阵。
rand(m,n):在[0,1]区间内创建一个m×n均匀分布的随机矩阵。
rand(size(A)):在[0,1]区间内创建一个与A维数相同的均匀分布的随机矩阵。
compan(P):创建系数向量是P的多项式的伴随矩阵。
diag(v):创建一向量v中的元素为对角的对角阵。
hilb(n):创建n×n的Hilbert矩阵。
magic(n):生成n阶魔方矩阵。
sparse(A):将矩阵A转化为稀疏矩阵形式,即由A的非零元素和下标构成稀疏矩阵S。若A本身为稀疏矩阵,则返回A本身。
MATLAB矩阵运算
1.矩阵元素的修改
矩阵建立起来之后,还需要对其元素进行修改。下表列出了常用的矩阵元素修改命令:
2.矩阵的变维
矩阵的变维可以用符号“:”法和reshape函数法。reshape函数的调用形式如下:
reshape(X,m,n)
将已知的矩阵变为m行n列的矩阵。
3.矩阵的变向
Rot(90):将A逆时针旋转90度
Rot(90,k):将A逆时针旋转90度*k,k可为正整数或负整数
Fliplr(X):将X左右翻转
flipud(X):将X上下翻转
flipdim(X,dim)q:dim=1时对行翻转,dim=2对列翻转