pinv--求矩阵的伪逆矩阵

pinv--求矩阵的伪逆矩阵

【功能简介】用于求矩阵的伪逆矩阵。

【语法格式】

1.B=pinv(A)

函数返回矩阵A的伪逆矩阵。如果矩阵A是可逆(非奇异)的,那么pinv(A)与inv(A)的结果是一样的,而且pinv比inv效率低。但如果矩阵A是奇异矩阵,则inv(A)不存在,但pinv(A)仍然存在,并表现出一些与逆矩阵类似的性质。在pinv函数中,A不一定是方阵。

2.B=pinv(A,tol)

采用tol代替默认的精确度。

【实例3.28】求方阵和普通矩阵的伪逆矩阵。

>> a=[1,2,3;4,5,6;7,8,9];  
>> rank(a,1e-6)     %求矩阵a的秩  
ans =  
     2 
>> pinv(a)          %矩阵a的伪逆矩阵  
ans =  
   -0.6389   -0.1667    0.3056  
   -0.0556    0.0000    0.0556  
   0.5278    0.1667   -0.1944  
>> b=[1,2,3;4,5,6];  
>> inv(b)           %矩阵b不是方阵,因此没有逆矩阵  
??? Error using ==> inv  
Matrix must be square.  
 >> pinv(b)         %矩阵b有伪逆矩阵  
ans =  
   -0.9444    0.4444  
   -0.1111    0.1111  
   0.7222   -0.2222  

【实例分析】矩阵a的秩小于矩阵行数,是奇异矩阵,其逆矩阵不存在,但伪逆矩阵存在。矩阵b不是方阵,没有逆矩阵,但可以有伪逆矩阵。

你可能感兴趣的:(MATLAB矩阵的基本运算)