MATPINV Pseudo-invertion matricielle
The MATPINV Block outputs the inverse of a non square input matrix using the SVD theory.if the SVD decomposition of A is equal to:
A=USV'
The pseudoinverse x of A is given by:
X=VS"U' where S"(i,j)=1/S(i,j) (if S(i,j) =0), U' and V are respectivly the transpose of U and V'.
and we have A*X*A=A and X*A*X=X. Both A*X and X*A are Hermitian . A warning message is printed if the input is badly scaled or nearly singular.
When the input is a M-by-N matrix the output is a N-by-M matrix. The eqivalent function of this block in Scilab is "pinv".
- Datatype(1=real double 2=Complex)
Ce paramètre indique le type de donnée de la sortie. Ce bloc fonctionne uniquement avec des types de donnée réels(1) et complexes(2). Si un autre type que 1 et 2 est indiqué, alors Scicos retourne le message d'erreur "Datatype is not supported".
Propriétés : Type 'vec' de taille 1.
- toujours actif: non
- direct-feedthrough: oui
- détection de passage à zéro: non
- mode: non
- entrée régulières:
- port 1 : taille [-1,-2] / type 1
- sorties régulières:
- port 1 : taille [-2,-1] / type 1
- nombre des entrées évènementielles: 0
- nombre des sorties évènementielles: 0
- possède un état continu: non
- possède un état discret: non
- possède un état objet: non
- nom de la fonction de calcul: mat_pinv
- SCI/macros/scicos_blocks/MatrixOp/MATPINV.sci [voir code]
Fady NASSIF INRIA