"Wurzel" aus Matrix berechnen



  • rapso schrieb:

    inverse aus A multipliziert mit B.

    Magst du deine Idee mal etwas ausführlicher darstellen? Im Moment kann ich mir beim besten Willen nicht vorstellen was du meinst bzw. wie das funktionieren soll.
    Und erkläre auch was bei dir A und was bei dir B sein soll bzw. deine Notation bei der ausführlicheren Erklärung.



  • rapso schrieb:

    inverse aus A multipliziert mit B.

    das geht ja wohl schlecht, da B ja vorher nicht bekannt ist.
    B will ich ja ermitteln.

    Gruss
    frank



  • S.T.A.L.K.E.R. schrieb:

    ...Wenn die Matrix diagonalisierbar ist, dann ist es einfach.

    Da wird das Problem liegen.
    Die vorgegebene Matrix ist eine Perpektivische Transformation (Entzerren/ Verzerren von Bild- Perspektiven). Da können alle möglichen Kombinationen von 3x3 double Werten drinstehen.

    Wenn das nicht prinzipiell geht, nutzt mir das leider nix.
    (Was wäre das für ein Programm, was je nach Werten funktioniert oder auch nicht 😃 🙂 )

    Der Link hat mir da nicht viel gebracht.
    Ich hab auch wenig Ahnung davon - bin eher Programmierer.

    Gruss
    Frank



  • Also ich habe etwas gesucht und zum diagonalisieren gibt es einmal das Jacobi-Verfahren und einmal das Gauß-Seidel-Verfahren, beide sind numerische Verfahren.
    Allerdings funktioniert ersteres nur für diagonaldominante Matrizen, letzteres immerhin auch für symmetrisch positiv definite Matrizen.
    Aber du wirst sicher keine symmetrische Matrix haben und diagonaldominant wohl auch eher nicht.

    Dann bleibt nur die Jordansche Normalform und nach etwas Suchen wird es wohl auch so gemacht. Ich habe allerdings nur eine mathematische Vorgehensweise (Beitrag 5) gefunden, d.h. das meiste muss man sich noch selber erarbeiten.

    Alternativ würde ich dir raten mal in einem Matheforum zu fragen, da rennen bestimmt ein paar talentierte Numeriker rum die dir sinnvoller helfen können, als ich es kann.



  • Also ich habe etwas gesucht und zum diagonalisieren gibt es einmal das Jacobi-Verfahren und einmal das Gauß-Seidel-Verfahren, beide sind numerische Verfahren.

    Kannste Knicken, da nicht jede Matrix Diagonalisierbar ist. Diagonalisierbarkeit ist mit Auflagen verbunden. Um genauer zu sein muss für jeden Eigenwert der Matrix gelten: Algebraische Vielfachheit=geometrische Vielfachheit. Das zweite Problem ist, dass nicht jede diagonalisierbare Matrix reell ist. Es gibt auch Complexwertige Lösungen.

    Und eine nicht Diagonalisierbare Matrix hat keine Wurzeldarstellung.



  • otze schrieb:

    Also ich habe etwas gesucht und zum diagonalisieren gibt es einmal das Jacobi-Verfahren und einmal das Gauß-Seidel-Verfahren, beide sind numerische Verfahren.

    Kannste Knicken, da nicht jede Matrix Diagonalisierbar ist. Diagonalisierbarkeit ist mit Auflagen verbunden. Um genauer zu sein muss für jeden Eigenwert der Matrix gelten: Algebraische Vielfachheit=geometrische Vielfachheit. Das zweite Problem ist, dass nicht jede diagonalisierbare Matrix reell ist. Es gibt auch Complexwertige Lösungen.

    Und eine nicht Diagonalisierbare Matrix hat keine Wurzeldarstellung.

    Also ich kann verstehen, dass du den nächsten Satz übersehen hast indem ich geschrieben habe für welche Matrizen diese Anwendbar sind.

    Aber mir ist rätselhaft wie du darauf kommst, dass mir das nicht bewusst ist, wenn ich danach mit der Jordanschen Normalform komme 😕



  • sorry, hatte mich verlesen (war ein wenig in eile). dachte du willst einen space in den anderen transformieren.

    ich glaube fuer dein problem gibt es bisher nur eine naehrungs formel.

    ich wuerde die matrix an deiner stelle zerlegen, in translation, rotation, skalierung und dann jeden dieser werte einzeln interpolieren und wieder zu einer matrix zusammenbauen. suchstichwort: matrix decomposition.

    aber das wissen die mathe leute sicher besser 🙂



  • Dieser Thread wurde von Moderator/in rapso aus dem Forum Spiele-/Grafikprogrammierung in das Forum Mathematik verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Ansonsten könnte man auch das LGS lösen:

    A=(abcdefghi)2A=\begin{pmatrix} a & b & c \\ d & e & f \\ g & h & i \end{pmatrix}^2



  • Naja halt (b_{ij})^2 = A.



  • Das ist nicht linear


Anmelden zum Antworten