矩阵及其运算
数据组织方式
标量(scalar) 单个数据矢量(向量,数组)(vector) 一行或一列数据矩阵(matrix) m行n列的二维数据列阵(array) 三维以上的数据数据网格(meshgrid) 多元变量的数据形式基元列阵(cell array) 不同类型数据混合组成的列阵结构列阵(structure array) 有域名的不同数据的列阵矩阵的输入与建立矩阵指令
zeros 零矩阵
ones 元素为1的矩阵eye 单位矩阵rand 随机数矩阵magic 建立幻方阵randnn维正态分布的随机数矩阵cell 建立基元列阵diag建立对角矩阵或提取对角元logspa生成对数等分的行向量
linspace(a,b,n) 在ab间等间距的n个数
修改矩阵的指令
repmat
用矩阵组成新矩阵reshape
将矩阵元素重排flipud
将矩阵上下翻转fliplr
将矩阵左右翻转rot90
矩阵逆时针转90度
矩阵的标识
A(i,j)第i行j列元素A(:,j) 第j列所有元素A(i,:) 第i行所有元素A(2:4,j)第2到4行的第j列元素A(i,2:4) 第2到4列的第i行元素A(end,j) 第j列的最后一个元素A(end-1,j) 第j列的倒数第二个元素A(i,end) 第i行的最后一个元素A(i,end-1) 第i行的倒数第二个元素A(k) 矩阵按列向量排列后的第k个元素矩阵运算指令
sum(A) 各列元素和det(A) 行列式的值prod(A) 各列元素积eig(A) 本征值inv(A) 矩阵的逆rank(A) 矩阵的秩
max(A) 各列最大元素min(A) 各列最小元素median(A) 各列中位元素sort(A) 元素递增排序
mean(A) 各列平均值std(A) 各列标准差trace(A) 矩阵的迹rank(A) 矩阵的秩cumsum(A) 各列累计和cumprod(A) 各列累计积kron张量积cross 向量叉积
矩阵的运算
每个元素作运算:如sin(A)单个矩阵内元素的运算对矩阵的一列或一行元素作运算:如sum(A)对整个矩阵运算:如inv(A)求矩阵的逆数组运算:两个矩阵的对应元素之间的数学运算.矩阵运算:两个矩阵按矩阵代数法则进行的运算.加++减--乘*.*右除/. /左除\\.\\幂^.^两个矩阵之间的运算矩阵运算算符标量运算算符转置A′(取共轭)A.′(不取共轭)要点:?矩阵运算是MATLAB最大优点,表现为用算符与指令代替程序作运算(矢量化编程).?矩阵运算包括了线性代数的数值计算.?数组运算解决了数据运算的批处理.35?72?123?198
????134
????2=?56????327
思考题
数组运算与矩阵运算有什么不同?谢谢!