Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
spantwo
soma e interseção de subespaços
Seqüência de Chamamento
[Xp,dima,dimb,dim]=spantwo(A,B, [tol])
Parâmetros
- A, B
duas matrizes de reais ou complexos com igual número de linhas
- Xp
matriz quadrada não-singular
- dima, dimb, dim
inteiros, dimensões dos subespaços
- tol
número real não-negativo
Descrição
Dadas duas matrizes A
e B
com
o mesmo número de linhas, retorna uma matriz quadrada
Xp
(não-singular, mas não necessariamente ortogonal)
tal que :
[A1, 0] (dim-dimb linhas) Xp*[A,B]=[A2,B2] (dima+dimb-dim linhas) [0, B3] (dim-dima linha) [0 , 0]
As primeiras dima
colunas de
inv(Xp)
geram Im(A
).
As colunas de dim-dimb+1
até
dima
de inv(Xp)
geram a interseção
de Im(A) e Im(B).
As primeiras dim
colunas de
inv(Xp)
geram
Im(A
)+Im(B
).
As colunas de dim-dimb+1
até
dim
de inv(Xp)
geram
Im(B
).
A matrix [A1;A2]
tem posto-linha cheio (=
posto(A)), a matrix [B2;B3]
tem posto-linha cheio
(=posto(B)), a matriz [A2,B2]
tem posto-linha (=posto(A
inter B)) e a matriz [A1,0;A2,B2;0,B3]
tem posto-linha
cheio (=posto(A+B)).
Exemplos
A=[1,0,0,4; 5,6,7,8; 0,0,11,12; 0,0,0,16]; B=[1,2,0,0]';C=[4,0,0,1]; Sl=ss2ss(syslin('c',A,B,C),rand(A)); [no,X]=contr(Sl('A'),Sl('B'));CO=X(:,1:no); //Parte controlável [uo,Y]=unobs(Sl('A'),Sl('C'));UO=Y(:,1:uo); //Parte inobservável [Xp,dimc,dimu,dim]=spantwo(CO,UO); //Decomposição de Kalman Slcan=ss2ss(Sl,inv(Xp));
Report an issue | ||
<< spanplus | Subspaces | givens >> |