0 Daumen
1k Aufrufe

ich befasse mich im moment mit neuer Mathematik die mir vorher noch nicht bekannt war. Und zwar möchte ich einen fest gegebenen Vektor ( 0 | 55 | -35) mit quaternionen rotieren lassen die ich aus meinem Sensor bekomme. Reicht es wenn ich die Rotationsmatrix aus meinen Quaternionen bilde und dann mit diesem Vektor Multipliziere? Und liege ich richtig in der annahme dass dieser Vektor sich um den Ursprung dreht, also beginn im Ursprung. Außerdem möchte ich diesen dann auch noch in meinem Koordinatensystem verschieben. Somit müsste ich einfach meinen Vektor um den ich meinen gedrehten Vektor verschieben will, mit diesem addieren. So habe ich es zumindes bis jetzt gelöst. Jedoch stimmt mein Ergebnis leider nur wenn ich den Gierwinkel meines sensor verändere. Sobald ich ein Nicken oder ein Rollen mit hinzufüge stimmt mein punkt nicht mehr. Habe ich irgendwo einen Fehler drin?

Avatar von

nur weil du dich noch nicht damit befasst hast ist diese mathematik noch lange nicht neu.

1 Antwort

0 Daumen

    Mit Quaternionen hab ich mich leider noch nie beschäftigt.      Ich selbst bin teoretischer Physiker, promoviert in der QM  ( !!! )   Ich gehe in Sack und Asche; schließlich gibt es keine Feldgleichung, die nicht in Quaternionen formuliert wäre.

   Von Quaternionen habe ich im Studium kein Sterbenswörtchen gehört ( Okay; ich wusste, wie sie definiert sind. )

   Ich war Mitarbeiter eines Welt_Elektronikkonzerns; was ich eben in  Wiki fand, wie durchsichtig sich in der Quaternionenwelt DrehACHSE und Drehwinkel trtennen lassen. Mein Chef hätte wohl " mutatis mutandis " gesagt

   " Alle schlauen Leute machen das so; die Doofen kapieren es nie. "

   Weil. Mein Chef sagte auch, man muss nix wissen. Man muss nur wissen, wo's steht ...

   An mehreren Stellen im Innternet lese ich eben, es sei erwiesener Maßen unmöglich, Translationen mit Hilfe von Quaternionen darzustellen

   " Es gibt einfach zu wenige. "

    Soll wohl heißen: Ihre Dimension ist mit 4 eindeutig zu niedrig. Vielleicht auch liegt es an etwas anderem.

    Willst du etwa Translationen darstellen mit Hilfe einer 3 X 3 Matrix A ; so scheiterst du von Vorn herein daran, dass Matrizen " homogen " sind, wie man das nennt.  D.h.



          x  =  0  ====>  A  x  =  0      (  1  )


      Und eine Verschiebung um den Vektor v soll doch z.B. bewirken 0  ===>  v  .


     Des Rätsels Lösung: Die vierte Dimension gibt es wirklich ===>  projektive Geometrie .

     Leider kann ich hier keine Spaltenvektoren machen; den zu verschiebenden Vektor u codierst du als 4 D Spaltenvektor:


    u  :=    (  x  |  y  |  z  |  1  )       (  2a  )


     Sagen wir, der Vektor v  der Translation  habe Komponenten ( a | b | c )  Dann tust du v codieren als 4 X 4 Matrix  T


                    1       0       0          a

                     0      1       0          b

      T  :=        0       0      1          c             (  2b  )

                      0       0      0          1



     Überzeuge dich davon, dass T u   tatsächlich die geforderte Translation bewirkt.

   ( In diesem Zusammenhang sprach mein Chef übrigens immer von den Dummen und den Schlauen. )

   Du müsstest jetzt mal bissele basteln; lässt sich obige Matmul in den Quaternionen nachbilden?  Aktion  ===>  Emil


    "  Gääben Sie mirrr einen Funkch; es intressiert mich persönlich. "

   Aber praktisch ist es ja unerheblich; diese Matmul zu implementieren, dürfte weiter kein Akt sein.

       Mein Chef hatte übrigens noch mehr so Sprüche drauf

    "  ...  Und geht doch ... "

   " Kann MAN es nicht; oder wollten Sie nur gesagt haben, dass Sie es nicht können? "

   In diesem Sinne; vielleicht gelingt dir ja zu meiner Beschämung der Nachweis, dass die T_Matrix locker mit Quaternionen geht ...

   Oder das hier; noch zwei Weisheiten von meinem Chef:

   " Sie haben eine tragende Funktion. Da drüben liegen 200 Manuals; tragense die mal her ... "

    " Jeder taugt zu irgendetwas; und sei es nur als abschreckendes Beispiel ... "

Avatar von

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community