matlab特殊矩阵构造函数

功能函数 说明
ones(n) 构建一个 nxn 的 1 矩阵(矩阵的元素全部是 1)
ones( m , n ,…, p) 构建一个 mxnx···xp 的1矩阵
ones( size(A)) 构建一个和矩阵 A 同样大小的 1矩阵
zeros(n) 构建一个 nxn 的0矩阵(输出矩阵的元素全部是 0)
zeros(m , n ,…, p) 构建一个 mxnx···xp的0矩阵
zeros( size(A) ) 构建一个和矩阵 A 同样大小的 0矩阵
eye(n) 构建一个 nxn 的单位矩阵
eye(m, n) 构建一个 mxn 的单位矩阵
eye( size(A) ) 构建一个和矩阵 A 同样大小的单位矩阵
magic(n) 构建一个 nxn 的矩阵,其每一行、每一列的元素之和都相等
rand(n) 构建一个 nxn 的矩阵,其元素为 0~1之间均匀分布的随机数
rand(m , n …, p) 构建一个 mxnx···xp 的矩阵,其元素为 0~1之间均匀分布的随机数
randn (n) 构建一个 nxn 的矩阵,其元素为零均值、单位方差的正态分布随机数
randn (m , n …·., p) 构建一个 mxnx·.·xp 的矩阵,其元素为零均值、单位方差的正态分布随机数
diag(x) 构建一个n 维的方阵,它的主对角线元素值取自向量 x,其余元素的值都为 0
diag(A , k) 构建一个由矩阵 A 第k 条对角线的元素组成的列向量k=0 为主对角线;k<0为下第k条对角线;k>0为上第k条对角线
diag(x , k) 构建一个(n+k)x(n+k))维的矩阵,该矩阵的第k条对角线元素取自向量x,其余元素都为 0(关于参数K,参考上个命令)
triu(A) 构建一个和 A 大小相同的上三角矩阵,该矩阵的主对角线上元素为 A 中相应元素,其余元素都为 0
triu(A , k) 构建一个和 A大小相同的上三角矩阵,该矩阵的第k条对角线及其以上元素为A中相应元素,其余元素都为0
tril(A) 构建一个和 A 大小相同的下三角矩阵,该矩阵的主对角线上元素为 A 中相应元素,其余元素都为 0
tril(A, k) 构建一个和 A 大小相同的下三角知阵,该知阵的第k条对角线上及其以下元素为 A 中相应元素,其余元素都为0

ones

>> ones(4)

ans =

     1     1     1     1
     1     1     1     1
     1     1     1     1
     1     1     1     1

>> ones(4,3,2)

ans(:,:,1) =

     1     1     1
     1     1     1
     1     1     1
     1     1     1


ans(:,:,2) =

     1     1     1
     1     1     1
     1     1     1
     1     1     1
     
>> A=[2 3 4;5 6 7]

A =

     2     3     4
     5     6     7

>> ones(size(A))

ans =

     1     1     1
     1     1     1

zeros

>> A=[2 3 4;5 6 7]

A =

     2     3     4
     5     6     7

>> ones(size(A))

ans =

     1     1     1
     1     1     1

>> zeros(size(A))

ans =

     0     0     0
     0     0     0

>> zeros(3)

ans =

     0     0     0
     0     0     0
     0     0     0

>> zeros(4,3,2)

ans(:,:,1) =

     0     0     0
     0     0     0
     0     0     0
     0     0     0


ans(:,:,2) =

     0     0     0
     0     0     0
     0     0     0
     0     0     0

eye

>> eye(3,3)

ans =

     1     0     0
     0     1     0
     0     0     1

>> eye(4)

ans =

     1     0     0     0
     0     1     0     0
     0     0     1     0
     0     0     0     1
     
>> eye(size(A))

ans =

     1     0     0
     0     1     0

magic


>> magic(3)

ans =

     8     1     6
     3     5     7
     4     9     2

rand

>> rand(3)

ans =

    0.8147    0.9134    0.2785
    0.9058    0.6324    0.5469
    0.1270    0.0975    0.9575

>> rand(3,4)

ans =

    0.9649    0.9572    0.1419    0.7922
    0.1576    0.4854    0.4218    0.9595
    0.9706    0.8003    0.9157    0.6557

diag

>> a=magic(3)

a =

     8     1     6
     3     5     7
     4     9     2

>> diag(a)

ans =

     8
     5
     2
     
>> diag(a,2)

ans =

     6

>> diag(a,1)

ans =

     1
     7

>> b=diag(a,0)

b =

     8
     5
     2

>> diag(b,2)

ans =

     0     0     8     0     0
     0     0     0     5     0
     0     0     0     0     2
     0     0     0     0     0
     0     0     0     0     0

triu tril

>> a=magic(3)

a =

     8     1     6
     3     5     7
     4     9     2

>> triu(a)

ans =

     8     1     6
     0     5     7
     0     0     2

>> triu(a,1)

ans =

     0     1     6
     0     0     7
     0     0     0

>> tril(a)

ans =

     8     0     0
     3     5     0
     4     9     2

>> tril(a,1)

ans =

     8     1     0
     3     5     7
     4     9     2

你可能感兴趣的:(Matlab,matlab,矩阵,开发语言)