多语言展示
当前在线:1525今日阅读:82今日分享:48

matlab矩阵常用指令

在学习《线性代数》时,常需要借助一些常用的矩阵指令,包括常用矩阵快速创建、矩阵元素提取等,请看下文。
工具/原料

matlab 7.0 及以上

方法/步骤
1

单位矩阵创建在线性代数运算时,常需要单位矩阵E,在matlab中可使用eyes函数,如下所示即为其语法:Y = eye(n)Y = eye(m,n)Y = eye([m n])Y = eye(size(A))Y = eyeY = eye(m, n, classname)作为示例,常用Y = eye(n)指令,比如要3x3单位矩阵,则可以如下指令:>> Y = eye(3)输出:Y =     1     0     0     0     1     0     0     0     1

2

全零矩阵在线性代数运算时,有时候需要全零矩阵,可使用zeros函数。B = zeros(n)B = zeros(m,n)B = zeros([m n])B = zeros(m,n,p,...) B = zeros([m n p ...])B = zeros(size(A))Y = zeroszeros(m, n,...,classname)zeros([m,n,...],classname)以上是其全部语法,常用的指令是:B = zeros(n)与 B = zeros(m,n)如下:>> B = zeros(3)输出:B =     0     0     0     0     0     0     0     0     0

3

元素全为1阵在矩阵运算时,会遇到元素全为1矩阵,此时可以借助于ones函数。Y = ones(n)Y = ones(m,n)Y = ones([m n])Y = ones(m,n,p,...)Y = ones([m n p ...])Y = ones(size(A))Y = onesones(m, n,...,classname)ones([m,n,...],classname)如上是其全部语法,其中常用的还是:Y = ones(n) 与 Y = ones(m,n) 如下示例:>> Y = ones(3)输出:Y =     1     1     1     1     1     1     1     1     1

4

随机矩阵在概率分析或是数理推断时常需要借助随机矩阵,在matlab中可使用rand函数实现,其语法如下:r = rand(n)r = rand(m,n)r = rand([m,n])r = rand(m,n,p,...)r = rand([m,n,p,...])r = randr = rand(size(A))r = rand(..., 'double')r = rand(..., 'single')当然,常用的指令还是: r = rand(n) 和 r = rand(m,n)示例:>> r = rand(3,2)输出的是3行2列的随机矩阵:r =    0.8147    0.9134    0.9058    0.6324    0.1270    0.0975

5

对角阵在矩阵分析与计算时,尤其是计算矩阵的秩时,常会化简矩阵为对角阵,尤其是方阵分析。在matlab中可借助diag函数求特定矩阵的对角阵,如下示例:>> A = [1,2,3;             4,5,6;             7,8,9];输入的矩阵A是3x3方阵,输入如下指令:>> diag(A)函数输出如下图所示:

6

提取矩阵三角部分有时候需要提取矩阵的下三角亦或是下三角元素,可以使用tril或triu提取。输入矩阵:>> A = [1,2,3;             4,5,6;             7,8,9];下三角提取:>> trilow = tril(A)输出:trilow =     1     0     0     4     5     0     7     8     9上三角提取:>> triup = triu(A)输出:triup =     1     2     3     0     5     6     0     0     9

7

其它作为矩阵运算实验室,matlab提供许多矩阵运算指令例如矩阵翻转指令flipud、fliplr,矩阵重排reshape、矩阵求秩rank等,大家可以查阅帮助文件了解其语法。

推荐信息