Das Mises-Wielandt-Verfahren

 
  • Das Verfahren von von Mises bzw. Wielandt ist ein sehr einfaches Verfahren zur Bestimmung des betragsmäßig größten bzw. kleinsten Eigenwertes einer beliebigen Matrix A.
  • Die direkte Vektoriteration nach v.Mises liefert den betragsmäßig größten Eigenwert und die inverse Iteration nach Wielandt den betragsmäßig kleinsten (über seinen Reziprokwert), wenn der Shift zu null gewählt wird, sonst den dem Shift am nächsten gelegenen Eigenwert (jeweils über den zugehörigen Eigenvektor).
  • Beide Iterationen sind im Prinzip gleich. Die inverse Iteration ist lediglich die Anwendung der direkten, v.Mises Iteration auf die inverse Matrix. Der betragsmäßig größte Eigenwert von A-1 ist der Reziprokwert des betragsmäßig kleinsten Eigenwertes von A. Die Inverse wird aber nicht explizit gebildet, vielmehr wird mit Gleichungslösung und Gausselimination gearbeitet.
  • Zusätzlich kann das Spektrum mit entsprechend zu wählendem Shift mu so verschoben werden, daß verschiedene Eigenwerte aus dem Spektrum von A auf die betragsmäßig kleinsten der Matrix A - mu I abgebildet werden.
  • Die Konvergenz des Verfahrens ist i.A. sehr langsam, deshalb hat es in der Praxis nur geringe Bedeutung, mit variablem Shift gehört es jedoch zu den Grundlagen des QR- und QL-Verfahrens.
  • Es gibt zwei Eingabeseiten, da die Eingabe sonst zu lang ist: 4 Faelle und Eingabe einer eigenen Matrix
 

Eingabeseiten: Predefined und User defined

 

Die Eingaben: Predefined Variante

 
  • Zunächst muß die Art der Iteration gewählt werden. Direkt = v.Mises Vektoriteration = betragsmäßig größter Eigenwert oder Invers = Wielandt-Iteration = betragsmäßig kleinster Eigenwert.
  • Zur Auswahl stehen vier vordefinierte Matrizen, mit bekannten Eigenwerten. Die genauen Beschreibungen befinden sich bei den Auswahlpunkten.
  • Ein Startvektor für die Iteration kann entweder angegeben werden, oder es besteht die Möglichkeit einen zufälligen Startvektor bestimmen zu lassen.
  • Der Shift mu muß angegeben werden.
  • Der Parameter eps steuert den Abbruch der Iteration. Die Berechnung wird beendet, wenn der relative Fehler im zu bestimmenden Eigenwert kleiner als eps ist. Wichtig: 1.E-11 <= eps <= 1.E-2 !
  • Die maximale Anzahl von Iterationen iter. Wichtig: iter <= 10000 !
  • Wird die Ausgabe der Matrix A gewünscht ?.
  • Wird die Ausgabe des approximierten Eigenvektors gewünscht ?.
 

Die Ausgaben : Predefined Variante

 
  • Ausgegeben wird die Matrix A, falls dies gewünscht war.
  • Die Anzahl der Iterationen.
  • Der approximative Eigenwert, falls kein Programmabbruch aufgetreten ist.
  • Der approximative Eigenvektor, falls dies gewünscht war und kein Programmabbruch aufgetreten ist.
  • Eine Grafik, die den dekadischen Logarithmus des relativen Fehlers im Eigenwert und den dekadischen Logarithmus der Normen der Änderungen der Eigenvektornäherungen angibt.
 

Fragen: Predefined Variante ?!

 
  • Wie hängt die Konvergenzrate vom Shift ab ?
  • Was passiert, wenn viele Eigenwerte in der Nähe des zu bestimmenden liegen? Was bei mehrfachen? ?
  • Was passiert bei komplexen Eigenwerten ?
  • Was passiert bei "falscher" Startvorgabe und niedriger bzw. hoher Genauigkeitsforderung ?
 

Das Eingabeformular: Predefined Variante

 

Die Eingaben: User defined Variante

 
  • Zunächst muß die Art der Iteration gewählt werden. Direkt = v.Mises Vektoriteration = betragsmäßig größter Eigenwert und Invers = Wielandt-Iteration = betragsmäßig kleinster Eigenwert (von A-mu*I).
  • Die Dimension n der Matrix A. Wichtig: 2 <= n <= 30 !
  • Zur Auswahl stehen zwei Möglichkeiten:
    1. Die Eingabe von n Eigenwerten, aus denen mit einer festen Eigenvektormatrix die Matrix A erzeugt wird und
    2. die Eingabe einer eigenen n x n Matrix.
  • Ein Startpunkt der Iteration kann entweder angegeben werden, oder es besteht die Möglichkeit, einen zufälligen Startvektor bestimmen zu lassen.
  • Der Shift mu muß angegeben werden.
  • Der Parameter eps steuert den Abbruch der Iteration. Die Berechnung wird beendet, wenn die relative Änderung im Eigenvektor kleiner als eps ist. Wichtig: 1.E-11 <= eps <= 1.E-2 !
  • Die maximale Anzahl von Iterationen iter. Wichtig: iter <= 10000 !
  • Wird die Ausgabe der Matrix A gewünscht ?.
  • Wird die Ausgabe des approximierten Eigenvektors gewünscht ?.
 

Die Ausgaben : User defined Variante

 
  • Ausgegeben wird die Matrix A, falls dies gewünscht war.
  • Die Anzahl der Iterationen.
  • Der approximative Eigenwert, falls kein Programmabbruch aufgetreten ist.
  • Der approximative Eigenvektor, falls dies gewünscht war und kein Programmabbruch aufgetreten ist.
  • Eine Grafik, die den dekadischen Logarithmus der Normen der Änderungen der Eigenvektornäherungen angibt.
 

Fragen: Userdefined Variante ?!

 
  • Wie hängt die Konvergenzrate vom Shift ab ?
  • Wie hängt die Konvergenz von der Eigenwertverteilung ab ?
  • Was passiert bei komplexen Eigenwerten ?
  • Was passiert bei Eigenwertclustern ?
  • Was passiert bei "falscher" Startvorgabe und niedriger bzw. hoher Genauigkeitsforderung ?
 

Das Eingabeformular: User defined Variante

 
 

Zurück: Eigenwertprobleme

 
Back to the top!

09.01.2009