pagesvd
Decomposição em valores singulares de cada página de um array 3-D.
Categoria: Mathematics > Linear Algebra
Sintaxe
S = pagesvd(A)
Retorna os valores singulares de cada página A(:,:,k), em ordem decrescente.
[U, S, V] = pagesvd(A)
Retorna os fatores de cada página, de modo que cada página satisfaz A(:,:,k) = U(:,:,k)*S(:,:,k)*V(:,:,k)'.
[U, S, V] = pagesvd(A, 'econ')
Calcula os fatores de tamanho econômico de cada página.
Descrição
pagesvd aplica svd de forma independente a cada página m-por-n de um array m-por-n-por-p. Evita escrever um laço sobre a terceira dimensão e devolve os resultados empilhados na mesma ordem das páginas.
Com uma saída o resultado é uma pilha de vetores coluna, útil para comparar os espectros de várias matrizes de uma vez.
Argumentos de entrada
A- Array numérico cujas páginas (as duas primeiras dimensões) são as matrizes a decompor.
'econ'- Opção que descarta os vetores singulares que não correspondem a um valor singular.
Argumentos de saída
S- Com uma saída, um array de tamanho
min(m,n)-por-1-por-pcom os valores singulares de cada página. Com três saídas, as matrizes diagonais de valores singulares, uma por página. U, V- Fatores ortogonais (unitários) de cada página.
Exemplo
Valores singulares de duas páginas
A = cat(3, [1 2; 3 4], [2 0; 0 1]);
S = pagesvd(A);
disp(S(:,:,1)')
disp(S(:,:,2)')
Saída
5.4650 0.3660
2 1