Calcular os menores vetores próprios de uma matriz


8

Parece que o Matlab eigsestá me dando más aproximações dos menores vetores próprios de uma matriz.

Suponho que posso usar alguns métodos mais lentos que também seriam mais precisos ...

Estou procurando encontrar o segundo menor vetor próprio de uma matriz lapalciana (conhecido como vetor "fiedler"). Sei, é claro, que o menor vetor próprio de uma matriz laplaciana é o vetor constante.

Alguma sugestão para um método mais preciso?

PS Em todas as situações acima, quando digo "menor autovetor", quero dizer o autovetor associado ao autovalor de menor magnitude.

Respostas:


5

Existe uma maneira direta de explorar seu conhecimento a priori do menor par de autovalores: você pode simplesmente projetar o componente da estimativa atual do vetor próprio na direção do vetor constante em cada iteração, por exemplo, iteração inversa. Você deve esperar que a iteração converja para o vetor próprio correspondente ao segundo menor valor próprio, seu vetor Fiedler desejado.

UMA-1



1

Você pode obter a composição completa do eigend com eig(full(A))


obrigado, mas irrelevante para uma enorme matriz esparsa 100000X100000 :)
olamundo

@noam Por favor, edite sua pergunta para incluir informações importantes como essa.
David Ketcheson
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.