MATLAB是一种高性能的数值计算和可视化软件,广泛应用于工程、科学研究和教育领域。本文档介绍MATLAB中矩阵的表示和简单操作,包括创建矩阵、访问矩阵元素以及矩阵的基本运算。
矩阵的表示:
1. ones()函数用于创建一个元素全为1的矩阵,如ones(m,n)创建一个m行n列的矩阵。
2. zeros()函数用于创建一个元素全为0的矩阵。
3. rand()函数用于创建一个元素在0到1之间均匀分布的随机矩阵。
4. eye()函数用于创建一个对角线上元素为1其余位置为0的单位矩阵。
5. linspace(a,b,n)用于创建一个线性间隔的向量,包含n个在a和b之间的元素。
6. randn()函数用于创建一个元素服从标准正态分布的随机矩阵。
7. reshape()函数用于改变矩阵的形状而不改变其元素。
8. sub2ind()和ind2sub()函数用于实现线性索引和多重索引之间的转换。
矩阵的元素访问:
1. A(i,j)表示矩阵A中第i行第j列的元素。
2. A(i,:)表示矩阵A的第i行。
3. A(:,j)表示矩阵A的第j列。
4. A(i:i+m,:)表示矩阵A的第i行到第i+m行。
5. A(:,k:k+m)表示矩阵A的第k列到第k+m列。
6. A(i:i+m,k:k+m)表示矩阵A中第i行到第i+m行与第k列到第k+m列交叉的部分。
矩阵的基本运算:
1. 加减乘除运算符用于矩阵的线性代数运算,如AB表示矩阵乘法。
2. 点乘(.*)/点除(./)/点幂(.^)表示元素间的乘除幂运算。
3. 关系运算符(<,<=,>,>=,==,~=)用于比较矩阵中对应元素的大小。
4. 逻辑运算符(&,|,~)用于进行逻辑运算。
矩阵的其他操作:
1. diag()函数用于提取矩阵的对角线元素或用向量创建对角矩阵。
2. triu(A,k)和tril(A,k)分别用于提取矩阵A的上三角和下三角部分。
3. rot90(A,k)函数用于将矩阵旋转90度。
4. fliplr(A)和flipud(A)分别用于左右和上下翻转矩阵。
特殊矩阵:
1. magic(n)用于创建一个n阶魔方矩阵。
2. vander(V)用于创建一个Vandermonde矩阵。
3. hilb(n)和invhilb(n)用于创建和计算Hilbert矩阵及逆。
4. toeplitz(x,y)用于创建一个以向量x和y为第一行和第一列的Toeplitz矩阵。
***pan(p)用于创建一个companion矩阵。
矩阵的高级操作:
1. pinv(A)表示矩阵A的伪逆。
2. det(A)表示矩阵A的行列式。
3. trace(A)表示矩阵A的迹。
4. rank(A)表示矩阵A的秩。
5. norm(V,2)表示向量V的欧几里得范数。
6. cond(A,p)表示矩阵A的条件数,p可为1、2或inf。
7. eig(A)用于计算矩阵A的特征值和特征向量。
MATLAB与ASCII字符间的转换:
1. abs()和double()函数用于将数值转换为ASCII字符。
2. char()函数用于将ASCII码转换为字符。
3. eval()函数用于计算字符串形式的表达式。
4. eval_r(t)用于在非交互模式下执行字符串t。
5. spconvert(T)用于将文本转换为稀疏矩阵。
MATLAB的矩阵操作功能强大且直观,本文件仅介绍了其中的基础内容,更多高级功能及应用方法需要用户在使用过程中不断探索和学习。