矩阵创建
手动完整输入
每一行的元素用逗号或者空格隔开,不同行用分号隔开,整个矩阵用中括号括起来。如:
1 | A = [1 2 3; 4 5 6; 7 8 9] |
使用函数创建
ones 全为1的矩阵
ones(n, m)
将创建n×m的元素全为1的矩阵。
ones(n)
将创建n×n的元素全为1的方阵。
zeros 全为0的矩阵
用法同ones。
eye 单位矩阵
eye(n)
生成n阶单位矩阵(对角元素为1,其他为0的方阵)。
rand 均匀分布随机矩阵
用法同ones。
randn 正态分布随机矩阵
用法同ones。
magic 魔方矩阵
magic(n)生成n阶魔方矩阵。
生成的矩阵各行、列的和相等,元素为1~n^2。(这样的矩阵不唯一)
diag 对角矩阵
diag(A, k),A为一组数字(1×n矩阵),k为数字。
生成的矩阵对角元素为A中的数字,在对角线上方k个元素远处(若k等于0则在对角线上,k小于0则在对角线下方)。例:
1 | >> diag([1,2,3,4],0) |
矩阵运算
一般运算
Matlab中矩阵的运算符号由一般的运算符号表示,数字(数组)运算有时要在运算符号前面加个点表示。
符号 | 功能 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
/ | 右除 |
\ | 左除 |
^ | 乘方 |
' | 共轭转置 |
.' | 非共轭转置 |
注:
A/B == A右除B == A*B的逆
B\A == B左除A == B的逆*A
A*B即矩阵乘法
A.*B为A与B对应位置的元素分别相乘
特定函数
函数 | 功能 |
---|---|
det() | 行列式 |
inv() | 逆矩阵 |
rank() | 求秩 |