Come trovare gli autovalori interni con il metodo del sottospazio di Krylov?


10

Mi chiedo come trovare gli autovalori di una matrice sparsa in un dato intervallo [a, b] con il metodo iterativo. Per la mia comprensione personale, è più ovvio usare il metodo del sottospazio di Krylov per trovare gli autovalori estremi piuttosto che quelli interni.


Hai considerato le risposte fornite qui ?
Deathbreath,

Sono curioso ... Quanto è grande la tua matrice? Hai bisogno di tutti gli autovalori interni o quelli più vicini a un valore particolare?
Paolo

@Paul Questa è solo una ricerca on-goning, la dimensione sarà di miliardi per miliardi di matrici sparse e abbiamo bisogno solo di alcuni autovalori in un certo intervallo per eseguire la modellazione.
Willowbrook,

@Deathbreath Grazie per il tuo promemoria. Ho considerato quelle risposte.
Willowbrook,

Forse conosci già questa risorsa , ma può essere utile comunque ... www-users.cs.umn.edu/~saad/eig_book_2ndEd.pdf saluti, Tom
Tom

Risposte:


10

La seguente strategia si chiama spostamento e inversione e dipende da due fatti importanti:

  1. UN-τioUNτλσ(A)λ-τσ(UN-τio)
  2. UNUN-1UNλσ(UN)1/λσ(UN-1)

UN-un'+B2ioUNun'+B2UNun'+B2(UN-un'+B2io)-1


La mia domanda è con il metodo shift e invert, possiamo amplificare tutti gli autovalori vicino a, che ovviamente includerà quelli indesiderati originariamente meno di un e quindi come filtrare quegli autovalori. L'altra domanda è come utilizzare l'altro endpoint b nell'interazione.
Willowbrook,

1
È possibile filtrare determinati autovalori usando i filtri polinomiali. Per una panoramica accessibile di questa tecnica vedi Sorensen: "Metodi numerici per grandi problemi di autovalori" in Acta Numerica journals.cambridge.org/action/…
Reid.Atcheson

c=(un'+B)/2
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.