MATLAB学习笔记——矩阵

创建一个数组

  • 冒号法

X=初值:增量:终值

>> x=1:2:9
x =
     1     3     5     7     9

>> y=0:-1:-5
y =
     0    -1    -2    -3    -4    -5
  • 调用函数linspace(初始值,终值,个数)
>> linspace(1,pi,10)

ans =

    1.0000    1.2380    1.4759    1.7139    1.9518    2.1898    2.4277    2.6657    2.9036    3.1416
  • 生成特殊矩阵的指令
指令 功能 指令 功能
[  ] 空矩阵 randn(m,n) 正太随机分布矩阵
zeros(m,n) 零矩阵 fix(m*rand(n)) 整数随机阵
eye(m,n) 单位矩阵 magic(n) 幻方阵
ones(m,n) 1矩阵 randperm(n) 1~n随机排列
rand(m,n) 均匀随机分布矩阵    

 元素定位

指令 功能 指令 功能
A(i,j) i行j列 A(i1:i2,j1:j2) i1~i2行,j1~j2列
A(r,:) 第r行 A(:,r) 第r列
A(K,L) 扩充 A([i,j],:) 部分列
A(:,[i,j]) 部分列 A([i,j],[s,t]) 子块

矩阵操作

指令 功能 指令 功能
A(i1:i2,:)=[  ] 删除i1~i2行 A(:,i1:i2)=[  ] 删除i1~i2列
A(:) 拉伸成列 [A B]或[A;B] 拼接矩阵
diag(A)

对矩阵取对角

对数组做对角阵

triu(A) 上三角阵
tril(A) 下三角阵    

复杂函数指令 

指令 功能 指令 功能
det(A) 行列式 inv(A)或者A^(-1) 逆矩阵
size(A) 阶数 rank(A) 矩阵的秩
[V,D]=eig(A) 特征值与特征向量 rref(A) 行阶梯最简式
orth(A) 正交化 trace(A)
length 数组的长度    

相关矩阵、数组计算函数

矩阵运算按照矩阵法则来运算

矩阵运算指令 指令含义 矩阵运算指令 指令含义
A' 矩阵转置 s-B,B-s 标量矩阵相减
A+B 矩阵相加 A*B 矩阵相乘
A-B 矩阵相减 A/B A右除B
s+B 标量加矩阵 B\A A左除B%相当于解方程A=B*X
ivn(A) 矩阵求逆 A^n 方阵的n次幂

数组无论怎么运算都是 对元素逐个进行

数组运算指令 指令含义 数组运算指令 指令含义
A.+B 对应元素相加 B.\A A的对应元素被B的对应元素除
A.-B 对应元素相减 s./B,B.\s s分别被B的元素除
A.*B 同维数组对应元素相乘 A.^n A的每个元素n次方(A和n不同时为矩阵)
s.*A A的每一个元素乘s log(A) 对A的每个元素取对数
A./B A的元素被B的对应元素除 f(A) 求A每个元素的函数值
sqrt(A)      

对于A/B与B\A的辨析,可以这样想

A/B=X\Leftrightarrow AB^{-1}=X\Leftrightarrow A=XB

B\setminus A=X\Leftrightarrow B^{-1}A=X\Leftrightarrow A=BX

A.'非共轭转置

A'共轭转置

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

A =

     1     2     3
     4     5     6
     7     8     9

>> B=fix(10*rand(3,3))

B =

     1     1     4
     6     0     9
     2     7     4

>> C=A+B*i

C =

   1.0000 + 1.0000i   2.0000 + 1.0000i   3.0000 + 4.0000i
   4.0000 + 6.0000i   5.0000 + 0.0000i   6.0000 + 9.0000i
   7.0000 + 2.0000i   8.0000 + 7.0000i   9.0000 + 4.0000i

>> c'
未定义函数或变量 'c'。
 
是不是想输入:
>> C'

ans =

   1.0000 - 1.0000i   4.0000 - 6.0000i   7.0000 - 2.0000i
   2.0000 - 1.0000i   5.0000 + 0.0000i   8.0000 - 7.0000i
   3.0000 - 4.0000i   6.0000 - 9.0000i   9.0000 - 4.0000i

>> C.'

ans =

   1.0000 + 1.0000i   4.0000 + 6.0000i   7.0000 + 2.0000i
   2.0000 + 1.0000i   5.0000 + 0.0000i   8.0000 + 7.0000i
   3.0000 + 4.0000i   6.0000 + 9.0000i   9.0000 + 4.0000i

猜你喜欢

转载自blog.csdn.net/qq_43264642/article/details/88382017