与矩阵有关的函数
1、矩阵重新定维
用于改变一个向量或数组的维数或大小,但是元素个数保持不变
函数格式:y=matrix(v,n,m)
函数功能:将v转为n*m的矩阵。注意这种转化是按列进行的,即先取第一列的数据依此排入新尺寸矩阵中的第一列数据,如若未排满,依次取原矩阵的下一列数据。
2、size函数
用于求矩阵或向量的大小
函数格式:y=size(x [,sel])
函数功能:返回矩阵或向量的每一维的大小,结果y为一个行向量。如果矩阵x是个二维矩阵,则y中的元素分别取代了该矩阵的行与列的个数。可选项sel是个不大于矩阵维数的整数,表示专门对第sel维求大小。
例如:-->a=[1 2 3;4 5 6];
-->s=size(a)
s=
! 2. 3. !
3、矩阵提取
(1)tril函数用于提取下三角矩阵
函数格式:y=tril(x[,k])
函数功能:提取矩阵x主对角线以下的元素,其他值为0。可选项k为一个整数,如看过k>0则在主对角线以上扩大k级提取范围,k<0则相反,k默认值为0
(2)triu函数用于提取上三角矩阵,用法同tril
(3)diag函数,用于产生对角矩阵或提取矩阵的对角线元素。
函数格式:[y]=diag(vm[,k])
函数功能:
a、如果vm是一个向量,则产生一个以vm的值为对角元素,其他元素的值为0的矩阵。参数k为可选项,如果k>0,则vm为矩阵主对角线之上的第k条对角线;如果k<0则相反,默认值为0
b、如果vm是一个矩阵,则提取矩阵的对角元素,产生一个列向量。参数k可选,用法同上。
4、特征值和特征向量
对于一个n*n的方阵A,如果满足以下关系式:
Av=av
其中v为一向量,a为一标量。
则a为A的特征值,v为对应于该特征值的特征向量。Scialb提供求解特征值和特征向量的函数,分别为spec和bdiag
(1)求矩阵特征值
函数格式:evals=spec(A)
A为实数或复数方阵
evals:返回的特征值是个实数或复数向量
(2)求矩阵特征向量函数
函数格式:[Ab[,X[,bs]]]=bdiag(A)
其中:
A:实数或复数方阵
Ab:实数或复数的分块对角矩阵,如果每一个子块大小为1,对角线上的元素为矩阵特征值;
X:实数或复数非奇异矩阵,每一列对应于一个特征向量;
bs:整数向量给出各个子块的大小,缺省各元素值为1。
该函数其实是用来实现矩阵的分块对角化的,对角化的同时给出特征向量。
阅读(2621) | 评论(0) | 转发(0) |