向量(vector)一维数值数组。MATLAB 允许你创建列向量和行向量,列向量通过在方括号内把数值用分号(;)隔开来创建
>> a = [2; 1; 4]
a =
2
1
4
要创建行向量,我们仍然是把一组数值用方括号括起来,不过这次使用的分隔符是空格或逗号,
>> v = [2 0 4]
v =
2 0 4
在 MATLAB 中,我们用单引号'
代表转置操作
MATLAB 允许把向量合并在一起创建新向量。设 u 和 v 是 MATLAB 中已经存在两个列向量,各自带有 m 和 n 个元素。我们创建第三个向量 w,它的前 m 个元素来自 u,后 n 个元素来自 v。w=[u v]
列方向叠加,w=[w;v]
行方向的叠加
有时需要创建带有等差元素的向量,差值为 q 为一个实数。创建一个首元素为 xi,末元素为 xe的向量 x 的语法如下;
x = [xi : q: xe]
插入语——注意在 MATLAB 中向量的乘方使用.^
MATLAB 还允许创建 n 个对数值相隔相同的行向量,使用的格式为logspace(a, b, n)
,n默认为100
特征化向量
命令 length
返回向量中包含元素的个数
>> A = [2;3;3;4;5];
>> length(A)
ans =
5
使用max
或 min
命令我们还可以找出向量中数值最大和最小的元素,mean
获得数列平均值
计算向量的模:
- 使用数组乘法
.*
,例如J.*J
- 求和,
sum(ans)
- 开平方,
sqrt(ans)
变量包含复数可以使用conj()
来计算向量的共轭复数向量;
·abs·返回向量的绝对值
向量的点乘和叉乘、点除
向量点乘就是相应位置元素相乘的结果,叉乘就是线代中学到的矩阵相乘
向量点除就是向量各个元素相除的结果
引用向量元素
引用单个元素:A(2)
引用向量:A(:)
,A(1:5)
引用m行n列元素:A(1,3)
,引用一整列元素A(:,3)
要选出从第 i 列到第 j 列之间的所有元素,我们输入 A(:,i:j)
引用小块矩阵(m行到n行,i列到j列的矩阵):A(m:n,i:j)
删除正行或整列可以把这行或列置空
其他操作
一个数加一个向量或者加一个矩阵,就是把这个数加到每个元素中
eye(n)
创建nxn单位矩阵
zeros(n,m)
创建nxm的零矩阵
ones(n,m)
创建nxm的一矩阵
行列式和求解
det(A)
求矩阵的行列式、
rank
求矩阵的秩
inv(A)
求逆矩阵
rref(A)
产生高斯消元后的梯形矩阵
方程组求解 只需使用左除即可,例如:x=A\b
LU分解,即一个矩阵A可以分为一个上三角和一个下三角
>> A = [-1 2 0; 4 1 8; 2 7 1];
>> [L, U] = lu(A)
L =
-0.2500 0.3462 1.0000
1.0000 0 0
0.5000 1.0000 0
U =
4.0000 1.0000 8.0000
0 6.5000 -3.0000
0 0 3.0385