Implementierung der Jacobi-Davidson-Methode für das kubische Eigenwertproblem


9

Ich habe ein großes kubisches Eigenwertproblem:

(EIN0+λEIN1+λ2EIN2+λ3EIN3)x=0.

Ich könnte dies lösen, indem ich in ein lineares Eigenwertproblem konvertiere, aber es würde zu einem System so groß ist:32

[- -EIN0000ich000ich]][xyz]]=λ[EIN1EIN2EIN3ich000ich0]][xyz]],

Dabei ist und . Welche anderen Techniken stehen zur Lösung eines kubischen Eigenwertproblems zur Verfügung? Ich habe gehört, dass es eine Version von Jacobi-Davidson gibt, die das Problem lösen wird, aber keine Implementierung gefunden hat.y=λxz=λy

Außerdem muss ich in der Lage sein, bestimmte Eigenwerte ähnlich der Shift-and-Invert-Methode von ARPACK anzuvisieren und die zugehörigen Eigenvektoren zu finden.


Was sind die Dimensionen der beteiligten Matrizen?
— Bill Barth

ist Ordnung10000×10000. Ich habe zwei verschiedene Formulierungen dieses Problems, eine, in der A i dicht und in der anderen spärlich ist. Ai10000×10000Ai
— OSE

1
SLEPc verfügt über Routinen für quadratische Eigenwertprobleme und nichtlineare Eigenwertprobleme, sodass Sie möglicherweise dort finden, was Sie benötigen. Es verfügt auch über Shift-and-Invert-Funktionen und eine Schnittstelle zu ARPACK.
— Geoff Oxberry

Antworten:


5

Mit dem umgekehrten Kommunikationsprotokoll von ARPACK müssen Sie die Matrix nicht explizit speichern : Sie müssen nur zwei Funktionen bereitstellen, die berechnen:3n×3n

und [ x y z ] → [ A 1 x + A 2 y + A 3 z y z ][xyz]→[−A0xyz][xyz]→[A1x+A2y+A3zyz]

3×n

x↦M−1xx↦Mxλ′sλ−1M−1xMA0

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.