Wie berechnet man geschickt Eigenwerte einer nicht sym Triagonalmatrix?



  • Ich würde vermuten, dass der Zahlenwust das Ergebnis von A*v - lambda*v ist, wobei v ein Eigenvektor zum Wert lambda sein soll. Das Ergebnis (insbesondere die Einträge die in die Millionen gehen, statt schön nah bei 0 zu sein) würde mich auch traurig stimmen.



  • Vielen Dank für deine Hilfe.

    Die Zahlen sind die Spalten der Tridiagonalmatrix:

    Unterenebendiagonale; Hauptdiagonale;Oberenebendiagonale

    Der 70.Eigenvektor ist -1.168371e+05 und die Komponenten des zugehörigen
    Eigenvektors variieren von 1.0e-63 bis 1.0e-01.

    Wenn ich nun zum Test A*v-lambda*v aus rechne, wo man Null erwarten sollte,
    bekomme ich 1.1271e+00, was zehn mal so groß ist, wie der größte Wert im Eigenvektor. Dies lässt mich an der richtigen Lösung zweifeln.



  • Sorry, wenn ich etwas unverständlich schreibe.

    Es heist nicht:
    Die Zahlen sind die Spalten der Tridiagonalmatrix:

    Sondern sollte heissen:
    Die drei Zahlenspalten sind die Unterenebendiagonale Hauptdiag. und die Oberenebendiagonale.



  • Rechne doch mal den relativen Fehler

    ||Av - lambda*v|| / ||v||

    aus. Wenn so riesige Einträge in deinem Eigenvektor drin stehen, ist ein absoluter Fehler von ≈1 ja schon fast eine Null 🙂



  • Oder mal etwas anschaulicher: Wenn theoretisch deine Konzentration von 10^5 Teile pro Volumen mit der Zeit gegen Null entwickeln sollte, aber numerisch noch zwei, drei Teile pro Volumen übrig bleiben, ist doch alles gut.



  • Huch, mir ist da gestern ein "A" verloren gegangen. Der relative Fehler ist natürlich

    ||Av - lambda*v|| / ||Av||

    (wenn man nur durch ||v|| teilen würde, wäre das Quatsch, weil die Länge eines Eigenvektors ja nicht eindeutig ist.)



  • Magst du uns denn noch erzählen, ob du das Problem inzwischen gelöst hast?



  • Hi Mups,

    habe auf deinen Vorschlag hin mal den relativen Fehler
    ||Av-lambda*v||/||Av|| unter Verwendung der Maximumsnorm und der eukl. Norm berechnet und Werte zwischen 0,2 bis 1,0 für Maxnorm und 1,0-5,0 für die eukl. Norm bekommen.
    Ich hätte 10^(-5) oder so erwartet.
    Sieht irgendwie bescheiden schön aus.

    Danke für deine Hilfe und dein Interesse.



  • Wie mir schein, hat ein dummer Programmierfehler mich ziemlich auf Glatteis gebracht. Die ausgerechneten Eigenwerte waren eigentlich die ganze Zeit recht ordentlich.

    Sorry für eure Mühen und vielen Dank



  • Das kommt in den besten Familien vor 🤡


Anmelden zum Antworten