Discussion:
Wie kann ich die 4 Quaternion berechnen?
(zu alt für eine Antwort)
Erik Griffin
2008-06-22 20:05:20 UTC
Permalink
Hallo!

Folgendes sei gegeben: anzufahrende X, Y, Z - Koordinaten. Ein
Einheitsvektor I, J, K der die Rotationsmatrix beschreibt. Gesucht seien
die 4 Quaternion Q1, Q2, Q3 und Q4. Wie müsste die Formel dazu aussehen
um Q1 bis Q4 berechnen zu können?

Ich habe bereits bei Wikipedia, Google, etc. pp. gesucht und auch vieles
über Quaternion gefunden, aber bisher leider noch nicht wie man Sie aus
einem gegebenen Einheitsvektor berechnen kann.

Vielen Dank für jegliche Hinweise...


mfg
Erik

X'Post & F'up2 gesetzt
Hans-Bernhard Bröker
2008-06-22 21:44:15 UTC
Permalink
Post by Erik Griffin
Hallo!
Folgendes sei gegeben: anzufahrende X, Y, Z - Koordinaten. Ein
Einheitsvektor I, J, K der die Rotationsmatrix beschreibt. Gesucht seien
die 4 Quaternion Q1, Q2, Q3 und Q4. Wie müsste die Formel dazu aussehen
um Q1 bis Q4 berechnen zu können?
Du hast da einiges Durcheinander mit Plural und Singular angerichtet.
Du hast nicht einen, sondern drei Richtungsvektoren, die zusammen eine
Rotationsmatrix sind. Was du suchst sind nicht 4 Quaternionen, sondern
die 4 Koordinaten *eines* Quaternions.

Die Formeln findet Google leicht, wenn man Rotationsmatrix und
Quaternion reinruft.
Erik Griffin
2008-06-23 20:46:17 UTC
Permalink
Post by Hans-Bernhard Bröker
Post by Erik Griffin
Hallo!
Folgendes sei gegeben: anzufahrende X, Y, Z - Koordinaten. Ein
Einheitsvektor I, J, K der die Rotationsmatrix beschreibt. Gesucht seien
die 4 Quaternion Q1, Q2, Q3 und Q4. Wie müsste die Formel dazu aussehen
um Q1 bis Q4 berechnen zu können?
Du hast da einiges Durcheinander mit Plural und Singular angerichtet.
Du hast nicht einen, sondern drei Richtungsvektoren, die zusammen eine
Rotationsmatrix sind. Was du suchst sind nicht 4 Quaternionen, sondern
die 4 Koordinaten *eines* Quaternions.
Hm... mag sein das ich etwas durcheinander gebracht habe. Was ich suche
sind jedoch definitiv die 4 Quaternionen. Folgender Hintergrund: Ich
habe eine Datei (APT-Format) mit Bewegungen für eine NC-Maschine. Diese
Datei enthält viele viele Punkte und dazu eine Winkelstellung. Lt.
Recherche handelt es sich bei der Winkelstellung um einen
Einheitsvektor. Ich bin gerade dabei einen Konverter zu programmieren,
der diese Daten in korrekten Code umwandelt. Meine NC-Maschine erwartet
für Bewegungen die X, Y, Z-Koordinaten sowie die 4 Quaternionen.
Post by Hans-Bernhard Bröker
Die Formeln findet Google leicht, wenn man Rotationsmatrix und
Quaternion reinruft.
Nunja da findet man vieles ;-)



mfg
Erik
Siegfried Neubert
2008-06-24 21:06:27 UTC
Permalink
Hi Erik!
Post by Erik Griffin
Post by Hans-Bernhard Bröker
Post by Erik Griffin
Hallo!
Folgendes sei gegeben: anzufahrende X, Y, Z - Koordinaten. Ein
Einheitsvektor I, J, K der die Rotationsmatrix beschreibt. Gesucht seien
die 4 Quaternion Q1, Q2, Q3 und Q4. Wie müsste die Formel dazu aussehen
um Q1 bis Q4 berechnen zu können?
Du hast da einiges Durcheinander mit Plural und Singular
angerichtet.
Du hast nicht einen, sondern drei Richtungsvektoren, die zusammen eine
Rotationsmatrix sind. Was du suchst sind nicht 4 Quaternionen, sondern
die 4 Koordinaten *eines* Quaternions.
Hm... mag sein das ich etwas durcheinander gebracht habe. Was ich suche
sind jedoch definitiv die 4 Quaternionen. Folgender Hintergrund: Ich
habe eine Datei (APT-Format) mit Bewegungen für eine NC-Maschine. Diese
Datei enthält viele viele Punkte und dazu eine Winkelstellung. Lt.
Recherche handelt es sich bei der Winkelstellung um einen
Einheitsvektor. Ich bin gerade dabei einen Konverter zu
programmieren,
der diese Daten in korrekten Code umwandelt. Meine NC-Maschine
erwartet
für Bewegungen die X, Y, Z-Koordinaten sowie die 4 Quaternionen.
Quaternionen sind Zahlen wie 2, -3, 3/4, Wurzel(2), Pi etc.,
d.h. man kannrmit ihnen wie mit diesen bekannteren Zahlenart rechen
- addieren, subtrahieren, multiplizieren und teilen,
nur, sie sind bzgl.der Multiplikation nicht mehr Kommutativ,
d.h. im allgemeinen gilt nicht x*y = y*x und,
sie sind eben keine "Skalare" sondern Tupel, genauer Quadrupel,
mit erweiterten Rechenregeln, ähnlich den komplexen Zahlen.

D.h. eine Quaterion ist eine Zahl der Form (a, b*i, c*j, d*k),
mit der, wenn man weiß wie sich i, j, k multiplizieren, man rechnen
kann.
Addition komponentenweise und Multiplikation siehe z.B.:
http://de.wikipedia.org/wiki/Quaternion

Meine Frage, welche 4 Quaterionen meinst Du,
die einzigen ausgezeichneten die mir ad hoc einfallen wären
(1*1,0,0,0), (0,1*i,0,0), (0,0,1*j,0), (0,0,0,1*k),
also letztlich 1, i, j, k
- ggf. noch multipliziert mit einem Normierungsfaktor <1 -,
eben die Koordinaten, die Komponenten "der einen Quaterion", dem
Richtungseinheitsvektor.

Mehr verstehe ich noch nicht, ggf. hilft's trotzdem weiter!?

Gruß Siggi N. - Hamburg
Post by Erik Griffin
Post by Hans-Bernhard Bröker
Die Formeln findet Google leicht, wenn man Rotationsmatrix und
Quaternion reinruft.
Nunja da findet man vieles ;-)
mfg
Erik
Hero Wanders
2008-06-24 22:03:46 UTC
Permalink
Hallo,
Post by Siegfried Neubert
D.h. eine Quaterion ist eine Zahl der Form (a, b*i, c*j, d*k),
mit der, wenn man weiß wie sich i, j, k multiplizieren, man rechnen kann.
Hmm, meintest du nicht (a, b, c, d) oder auch a*1 + b*i + c*j + d*k?

Gruß
Hero
Erik Griffin
2008-06-25 09:33:08 UTC
Permalink
Post by Hero Wanders
Hallo,
Post by Siegfried Neubert
D.h. eine Quaterion ist eine Zahl der Form (a, b*i, c*j, d*k),
mit der, wenn man weiß wie sich i, j, k multiplizieren, man rechnen kann.
Hmm, meintest du nicht (a, b, c, d) oder auch a*1 + b*i + c*j + d*k?
Ich habe soeben probiert unsere NC-Maschine mit den Quaternion 1, i, j,
k zu füttern, was nicht klappte. Die Summe der Quadrate der Quaternion
unserer NC-Maschine muss 1 sein.

Also q1^2 + q2^2 + q3^2 + q4^2 = 1.

Da jedoch q2, q3, q4 in meinem ja bereits ein Einheitsvektor ist, ist
die Summe der Quadrate von q2, q3 und q4 bereits 1. Zzgl. meines q1 bin
ich dann bei 2 :-(

Gibt es eine Möglichkeit die Quaternion zu skalieren, also den Wert
aufzuteilen? Wenn ja wie? Ich kann nicht einfach von jedem
Quaternionquadrat 0,25 abziehen. Wenn doch, wie sehe das denn aus, wenn
ich ein Quaternionquadrat < 0,25 hätte? Dann hätte ich ein Quadrat
welches < 0 und somit eine komplexe Zahl wäre...


mfg
Erik
Jutta Gut
2008-06-25 11:59:21 UTC
Permalink
Post by Erik Griffin
Ich habe soeben probiert unsere NC-Maschine mit den Quaternion 1, i, j,
k zu füttern, was nicht klappte.
Nein, du musst sicher die Zahlenwerte der Komponenten eingeben, also a, b,
c, d (oder iun deiner Schreibweise q1, q2, q3, q4). Das Programm sollte das
automatisch als Vielfache von i, j bzw. k auffassen.

Die Summe der Quadrate der Quaternion
Post by Erik Griffin
unserer NC-Maschine muss 1 sein.
Also q1^2 + q2^2 + q3^2 + q4^2 = 1.
Da jedoch q2, q3, q4 in meinem ja bereits ein Einheitsvektor ist, ist
die Summe der Quadrate von q2, q3 und q4 bereits 1. Zzgl. meines q1 bin
ich dann bei 2 :-(
Gibt es eine Möglichkeit die Quaternion zu skalieren, also den Wert
aufzuteilen? Wenn ja wie?
Du dividierst jede Komponente durch Wurzel(q1^2 + q2^2 + q3^2 + q4^2).

Grüße
Jutta
Siegfried Neubert
2008-06-25 12:15:07 UTC
Permalink
Post by Jutta Gut
Post by Erik Griffin
Ich habe soeben probiert unsere NC-Maschine mit den Quaternion 1, i, j,
k zu füttern, was nicht klappte.
Nein, du musst sicher die Zahlenwerte der Komponenten eingeben, also
a, b, c, d (oder iun deiner Schreibweise q1, q2, q3, q4). Das
Programm sollte das automatisch als Vielfache von i, j bzw. k
auffassen.
Die Summe der Quadrate der Quaternion
Post by Erik Griffin
unserer NC-Maschine muss 1 sein.
Also q1^2 + q2^2 + q3^2 + q4^2 = 1.
Da jedoch q2, q3, q4 in meinem ja bereits ein Einheitsvektor ist, ist
die Summe der Quadrate von q2, q3 und q4 bereits 1. Zzgl. meines q1 bin
ich dann bei 2 :-(
Gibt es eine Möglichkeit die Quaternion zu skalieren, also den Wert
aufzuteilen? Wenn ja wie?
Du dividierst jede Komponente durch Wurzel(q1^2 + q2^2 + q3^2 + q4^2).
Grüße
Jutta
Siegfried Neubert
2008-06-25 12:55:45 UTC
Permalink
Post by Jutta Gut
Post by Erik Griffin
Ich habe soeben probiert unsere NC-Maschine mit den Quaternion 1, i, j,
k zu füttern, was nicht klappte.
Nein, du musst sicher die Zahlenwerte der Komponenten eingeben, also
a, b, c, d (oder iun deiner Schreibweise q1, q2, q3, q4). Das
Programm sollte das automatisch als Vielfache von i, j bzw. k
auffassen.
Die Summe der Quadrate der Quaternion
Post by Erik Griffin
unserer NC-Maschine muss 1 sein.
Also q1^2 + q2^2 + q3^2 + q4^2 = 1.
Da jedoch q2, q3, q4 in meinem ja bereits ein Einheitsvektor ist, ist
die Summe der Quadrate von q2, q3 und q4 bereits 1. Zzgl. meines q1 bin
ich dann bei 2 :-(
Gibt es eine Möglichkeit die Quaternion zu skalieren, also den Wert
aufzuteilen? Wenn ja wie?
Du dividierst jede Komponente durch Wurzel(q1^2 + q2^2 + q3^2 + q4^2).
Hi Ihr,

a) formal stimme ich der Jutta voll zu.
Ich schrieb doch auch schon
"... - ggf. noch multipliziert mit einem Normierungsfaktor <1 -,
eben die Koordinaten, die Komponenten "der einen Quaterion", dem
Richtungseinheitsvektor. ...".

Also hier, 1/Sqrt(2), wenn die "q"s schon eine Richtung (vom Betrag 1)
sind.

b) Ich bin nur nicht sicher, daß es das schon ist, dazu kenne ich
solche NC-Maschinen zu wenig.
Komplexe Zahlen und "flächenhafte Vektoren", daß sehe ich schon,
aber Quaterion und Vektoren im Raum (also 3D), da bin ich ungeübt!

Eventuell mußt Du mehr über die Aufgabe verraten!?
Und bitte sage doch auch etwas zu Deiner mathematischen Vorbildung
und die Herkunft/Ursache der Aufgabenstellung,
daß ist oft für's gegenseitige Verstehen hilfreich - wenn Du magst.

Mehr verstand ich bisher auch nicht, aber
http://trevinca.ei.uvigo.es/~formella/doc/ig04/node97.html
hilft weiter.

Danach ist's wie gedacht, nur das nun klar ist, wie Richtung und
Drehwinkel (und Normierung) zu Verstehen sind!
Also wie Du Deine "q"s zu verstehen und normieren hast - lese man mal
selbst.

So schwer war das Suchen nicht - aber man wird ja selbst nicht dümmer
dadurch!

Ich denke, bleibt wie Du aus dem was Du hast Dein NC-Programm
zusammenbaust,
aber dafür sind Ingenieure und Techniker zuständig ... ;o))



Gruß

Siggi N. - Hamburg
Post by Jutta Gut
Grüße
Jutta
Oliver Gronau
2008-06-25 12:30:52 UTC
Permalink
Post by Erik Griffin
Ich habe soeben probiert unsere NC-Maschine mit den Quaternion 1, i, j,
k zu füttern, was nicht klappte. Die Summe der Quadrate der Quaternion
unserer NC-Maschine muss 1 sein.
Also q1^2 + q2^2 + q3^2 + q4^2 = 1.
Da jedoch q2, q3, q4 in meinem ja bereits ein Einheitsvektor ist, ist
die Summe der Quadrate von q2, q3 und q4 bereits 1. Zzgl. meines q1 bin
ich dann bei 2 :-(
Gibt es eine Möglichkeit die Quaternion zu skalieren, also den Wert
aufzuteilen? Wenn ja wie? Ich kann nicht einfach von jedem
Quaternionquadrat 0,25 abziehen. Wenn doch, wie sehe das denn aus, wenn
ich ein Quaternionquadrat < 0,25 hätte? Dann hätte ich ein Quadrat
welches < 0 und somit eine komplexe Zahl wäre...
Stopp!

Und das jetzt folgende bitte nicht falsch verstehen:

Man (insbesondere Siegfried hat in seinem Beitrag viel geschrieben)
versucht wirklich Dir zu helfen, leicht ist es aber nicht weil Du
insbesondere immer wieder mit Deiner Sprechweise ankommst. Zwei Personen
hatten Dich unabhängig voneinander darauf hingewiesen:

q1,...q4 sind KEINE QUATERNIONEN!

Nenn sie Koordinaten, Komponenten, Koeffizienten im Quaternion, aber
Hauptsache nicht Quaternion!

Erst die Angabe aller vier Koordinaten (ich bleibe bei der Bezeichnung)
macht ein Quaternion aus. Es gibt natürlich Quaternionen Q die besonders
sind, nämlich die in denen nur eine Koordinate nicht Null ist:

q2 = q3 = q4 =0 => Q = q1 + q2 * i + q3 * j + q4 * k = q1
q1 = q3 = q4 =0 => Q = q1 + q2 * i + q3 * j + q4 * k = q2 * k
...

Das macht die Koordinate q1 aber noch nicht zu einem Quaternion, ohne
Aussagen über q2,...,q4 zu treffen. Und so weiter für die anderen
Koordinaten.

Also versuch bitte die Sprechweise für Dich zu übernehmen, die korrekt
ist und die die Leute kennen, so verwirrt man weniger ;-)



Zu Deinem nächsten Problem:
http://de.wikipedia.org/wiki/Quaternion#Einheitsquaternionen (Siegfried
hatte ja den allgemeinen Link gepostet) hast Du Dir durchgelesen? Du
kannst das Quaternion, in dem alle Koordinaten gleich 1 sind, normieren
indem Du durch sqrt(q1^2+q2^2+q3^2+q4^2) teilst (hat Jutta ja auch
gerade parallel geschrieben).



Und jetzt, da wir alle über das gleiche reden, sag doch bitte noch
einmal was genau Dein ursprüngliches Problem ist.

- Was ist gegeben?
(Punkte mit xyz-Koordinaten, Reihenfolge wichtig/unwichtig)

- Was sind Voraussetzungen
(Wo befindet sich die Fräse/das Werkzeug, welche Ausrichtung, wie soll
es gedreht werden, warum)

- Was ist gesucht?
(Scheinbar ja die vier Koordinaten eines Quaternions gesucht, die Frage
ist aber sinnfrei wenn nicht gesagt wird welcher Vektor in welchen
anderen Vektor rotiert werden soll)

Gib lieber zu viel Informationen als zu wenige, dann können Dir die
Leute (da rechne ich mich dazu) auch helfen. Okay?

Ciao
Olli
Erik Griffin
2008-06-26 12:41:02 UTC
Permalink
* Oliver Gronau schrieb:

[...]
Post by Oliver Gronau
Stopp!
Ok.
Post by Oliver Gronau
Man (insbesondere Siegfried hat in seinem Beitrag viel geschrieben)
versucht wirklich Dir zu helfen, leicht ist es aber nicht weil Du
insbesondere immer wieder mit Deiner Sprechweise ankommst. Zwei Personen
q1,...q4 sind KEINE QUATERNIONEN!
Das Problem an der Geschichte ist, dass die Dokumentation meiner
NC-Maschine 4 Quaternion erwartet. Also bin ich (jetzt erstmal egal was
im NC-File steht) auf der Suche nach den 4 Quaternion.
Post by Oliver Gronau
Nenn sie Koordinaten, Komponenten, Koeffizienten im Quaternion, aber
Hauptsache nicht Quaternion!
Erst die Angabe aller vier Koordinaten (ich bleibe bei der Bezeichnung)
macht ein Quaternion aus. Es gibt natürlich Quaternionen Q die besonders
q2 = q3 = q4 =0 => Q = q1 + q2 * i + q3 * j + q4 * k = q1
q1 = q3 = q4 =0 => Q = q1 + q2 * i + q3 * j + q4 * k = q2 * k
...
Das macht die Koordinate q1 aber noch nicht zu einem Quaternion, ohne
Aussagen über q2,...,q4 zu treffen. Und so weiter für die anderen
Koordinaten.
Also versuch bitte die Sprechweise für Dich zu übernehmen, die korrekt
ist und die die Leute kennen, so verwirrt man weniger ;-)
ICh werde mich bemühen, obwohl ich durch das ganze bisher noch nicht
wirklich durchgestiegen bin :S
Post by Oliver Gronau
http://de.wikipedia.org/wiki/Quaternion#Einheitsquaternionen (Siegfried
hatte ja den allgemeinen Link gepostet) hast Du Dir durchgelesen? Du
kannst das Quaternion, in dem alle Koordinaten gleich 1 sind, normieren
indem Du durch sqrt(q1^2+q2^2+q3^2+q4^2) teilst (hat Jutta ja auch
gerade parallel geschrieben).
Ok, das wäre dann in meinem Fall die Teilung durch Wurzel 2.
Post by Oliver Gronau
Und jetzt, da wir alle über das gleiche reden, sag doch bitte noch
einmal was genau Dein ursprüngliches Problem ist.
- Was ist gegeben?
(Punkte mit xyz-Koordinaten, Reihenfolge wichtig/unwichtig)
- Was sind Voraussetzungen
(Wo befindet sich die Fräse/das Werkzeug, welche Ausrichtung, wie soll
es gedreht werden, warum)
- Was ist gesucht?
(Scheinbar ja die vier Koordinaten eines Quaternions gesucht, die Frage
ist aber sinnfrei wenn nicht gesagt wird welcher Vektor in welchen
anderen Vektor rotiert werden soll)
Gegeben ist ein NC-File mit folgendem Inhalt:
X-Wert Y-Wert Z-Wert I, J, K, Punktname

GOTO / -78.989,-13.401,313.598, -0.990837,-0.130473,0.034899 00000012
GOTO / -78.608,-13.312,313.585, -0.990837,-0.130473,0.034899 00000013
GOTO / -78.252,-13.150,313.573, -0.990837,-0.130473,0.034899 00000014
GOTO / -77.936,-12.922,313.564, -0.990837,-0.130473,0.034899 00000015
GOTO / -77.671,-12.637,313.558, -0.990837,-0.130473,0.034899 00000016
GOTO / -77.468,-12.304,313.554, -0.990837,-0.130473,0.034899 00000017

IJK ist ein Einheitsvektor der die Richtung der Werkzeugachse darstellt.

Diese Anweisungen möchte ich nun in Funktionen für meine NC-Maschine
konvertieren. Dazu muss ich meine NC-Maschine lt. Dokumentation mit
folgenden Werten füttern:

X, Y, Z, Q1, Q2, Q3, Q4

Q1, Q2, Q3 und Q4 werden in der Dokumentation meiner NC-Maschine als
Quaternion 1, Quaternion 2, Quaternion 3 und Quaternion 4 bezeichnet.
Post by Oliver Gronau
Gib lieber zu viel Informationen als zu wenige, dann können Dir die
Leute (da rechne ich mich dazu) auch helfen. Okay?
Mehr Informationen habe ich dazu leider selber nicht :-(.


mfg
Erik
Bastian Erdnuess
2008-06-26 13:57:38 UTC
Permalink
Post by Erik Griffin
Das Problem an der Geschichte ist, dass die Dokumentation meiner
NC-Maschine 4 Quaternion erwartet. Also bin ich (jetzt erstmal egal was
im NC-File steht) auf der Suche nach den 4 Quaternion.
Bevor du suchst "wo" sie sind, such mal "was" sie sind.
Post by Erik Griffin
Q1, Q2, Q3 und Q4 werden in der Dokumentation meiner NC-Maschine als
Quaternion 1, Quaternion 2, Quaternion 3 und Quaternion 4 bezeichnet.
Such mal in der Doku raus, wo "Quaternion 1 ... Quarternion 4" zum
ersten mal auftaucht. Da wird bestimmt auch mal ganz grob beschrieben,
was das denn sein soll. Wenn du daraus nicht schlau wirst zitier das
mal.

Bastian
Siegfried Neubert
2008-06-25 12:55:55 UTC
Permalink
Post by Hero Wanders
Hallo,
Post by Siegfried Neubert
D.h. eine Quaterion ist eine Zahl der Form (a, b*i, c*j, d*k),
mit der, wenn man weiß wie sich i, j, k multiplizieren, man rechnen kann.
Hmm, meintest du nicht (a, b, c, d) oder auch a*1 + b*i + c*j + d*k?
Hallo Hero, moin moin - Du mal wieder. ;o)

Nein, ich meinte schon was ich geschrieben hatte,
diese Produkte (links/rechts, ggf. natürlich noch mit der "1")
definieren "die Algebra" und damit alles - oder?

Aber, ich mag/will Dir nicht widersprechen,
natürlich spielen die Komponenten insgesamt mit rein, aber die
Multiplikation mit den skalaren Werten ist doch dabei trivial,
meinst Du nicht?
Oder habe ich Dich noch ganz falsch verstanden?

Gruß

Siggi N. - Hamburg
Post by Hero Wanders
Gruß
Hero
Jutta Gut
2008-06-25 14:16:57 UTC
Permalink
Post by Siegfried Neubert
Post by Hero Wanders
Post by Siegfried Neubert
D.h. eine Quaterion ist eine Zahl der Form (a, b*i, c*j, d*k),
mit der, wenn man weiß wie sich i, j, k multiplizieren, man rechnen kann.
Hmm, meintest du nicht (a, b, c, d) oder auch a*1 + b*i + c*j + d*k?
Hallo Hero, moin moin - Du mal wieder. ;o)
Nein, ich meinte schon was ich geschrieben hatte,
diese Produkte (links/rechts, ggf. natürlich noch mit der "1") definieren
"die Algebra" und damit alles - oder?
Aber, ich mag/will Dir nicht widersprechen,
natürlich spielen die Komponenten insgesamt mit rein, aber die
Multiplikation mit den skalaren Werten ist doch dabei trivial,
meinst Du nicht?
Oder habe ich Dich noch ganz falsch verstanden?
Komplexe Zahlen kann man schreiben als Summe a + b*i oder als Zahlenpaar (a,
b), aber die Schreibweise (a, b*i) habe ich noch nicht gesehen. Bei
Quaternionen wird es genauso sein. Wahrscheinlich hat Hero das gemeint.

lg
Jutta
Siegfried Neubert
2008-06-25 16:07:06 UTC
Permalink
Yep - Gute Jutta ;o) ,

das ist wohl ungewöhnlich wie Du auch schreibst
(ist eben alles schon ein bißchen her),
und ggf. ist es auch das was Hero meinen könnte!

Aber sonst ist die Multiplikation doch im wesentlichen mit der der i,
j, k festgelegt.

Gruß Siggi N. - Hamburg
Post by Jutta Gut
Post by Siegfried Neubert
Post by Hero Wanders
Post by Siegfried Neubert
D.h. eine Quaterion ist eine Zahl der Form (a, b*i, c*j, d*k),
mit der, wenn man weiß wie sich i, j, k multiplizieren, man rechnen kann.
Hmm, meintest du nicht (a, b, c, d) oder auch a*1 + b*i + c*j + d*k?
Hallo Hero, moin moin - Du mal wieder. ;o)
Nein, ich meinte schon was ich geschrieben hatte,
diese Produkte (links/rechts, ggf. natürlich noch mit der "1")
definieren "die Algebra" und damit alles - oder?
Aber, ich mag/will Dir nicht widersprechen,
natürlich spielen die Komponenten insgesamt mit rein, aber die
Multiplikation mit den skalaren Werten ist doch dabei trivial,
meinst Du nicht?
Oder habe ich Dich noch ganz falsch verstanden?
Komplexe Zahlen kann man schreiben als Summe a + b*i oder als
Zahlenpaar (a, b), aber die Schreibweise (a, b*i) habe ich noch nicht
gesehen. Bei Quaternionen wird es genauso sein. Wahrscheinlich hat
Hero das gemeint.
lg
Jutta
Hero Wanders
2008-06-25 16:26:20 UTC
Permalink
Hi,
Post by Jutta Gut
Komplexe Zahlen kann man schreiben als Summe a + b*i oder als Zahlenpaar
(a, b), aber die Schreibweise (a, b*i) habe ich noch nicht gesehen. Bei
Quaternionen wird es genauso sein. Wahrscheinlich hat Hero das gemeint.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Genau so ist es :D

Ich habe es für sinnvoll erachtet dies hier anzumerken, eben weil Erik
eventuell Begriffsprobleme hat und die verwendeten Bezeichnungen daher
halbwegs anerkannten Normen / gewöhnlichem Gebrauch entsprechen sollten.

Gruß
Hero
Erik Griffin
2008-06-25 08:41:48 UTC
Permalink
* Siegfried Neubert schrieb:

[...]
Post by Siegfried Neubert
Meine Frage, welche 4 Quaterionen meinst Du,
die einzigen ausgezeichneten die mir ad hoc einfallen wären
(1*1,0,0,0), (0,1*i,0,0), (0,0,1*j,0), (0,0,0,1*k),
also letztlich 1, i, j, k
- ggf. noch multipliziert mit einem Normierungsfaktor <1 -,
eben die Koordinaten, die Komponenten "der einen Quaterion", dem
Richtungseinheitsvektor.
Mehr verstehe ich noch nicht, ggf. hilft's trotzdem weiter!?
Nunja so hatte ich das bisher auch verstanden und umgesetzt (meine
Quelle: http://mathematik.diefenbach.at/Quatern/quat1.htm). Aber ein
Studienkollege von mir meinte, dass das nicht alles sein kann...


mfg
Erik
Siegfried Neubert
2008-06-25 12:56:04 UTC
Permalink
Post by Erik Griffin
[...]
Post by Siegfried Neubert
Meine Frage, welche 4 Quaterionen meinst Du,
die einzigen ausgezeichneten die mir ad hoc einfallen wären
(1*1,0,0,0), (0,1*i,0,0), (0,0,1*j,0), (0,0,0,1*k),
also letztlich 1, i, j, k
- ggf. noch multipliziert mit einem Normierungsfaktor <1 -,
eben die Koordinaten, die Komponenten "der einen Quaterion", dem
Richtungseinheitsvektor.
Mehr verstehe ich noch nicht, ggf. hilft's trotzdem weiter!?
Nunja so hatte ich das bisher auch verstanden und umgesetzt (meine
Quelle: http://mathematik.diefenbach.at/Quatern/quat1.htm). Aber ein
Studienkollege von mir meinte, dass das nicht alles sein kann...
So'n Studienkollege der meint ... , aber dann auch nicht weis,
ist nicht sehr hilfreich - find ich!
Post by Erik Griffin
mfg
Erik
Ralf Kusmierz
2008-06-26 12:57:43 UTC
Permalink
X-No-Archive: Yes
Post by Siegfried Neubert
So'n Studienkollege der meint ... , aber dann auch nicht weis,
ist nicht sehr hilfreich - find ich!
Was weist der denn - oder meintest Du vielleicht "weiß" von "wissen"?


Gruß aus Bremen
Ralf
--
R60: Substantive werden groß geschrieben. Grammatische Schreibweisen:
adressiert Appell asynchron Atmosphäre Autor bißchen Ellipse Emission
gesamt hältst Immission interessiert korreliert korrigiert Laie
nämlich offiziell parallel reell Satellit Standard Stegreif voraus
Siegfried Neubert
2008-06-26 18:06:47 UTC
Permalink
Post by Ralf Kusmierz
X-No-Archive: Yes
Post by Siegfried Neubert
So'n Studienkollege der meint ... , aber dann auch nicht weis,
ist nicht sehr hilfreich - find ich!
Was weist der denn - oder meintest Du vielleicht "weiß" von "wissen"?
Gruß aus Bremen
Ralf
--
adressiert Appell asynchron Atmosphäre Autor bißchen Ellipse Emission
gesamt hältst Immission interessiert korreliert korrigiert Laie
nämlich offiziell parallel reell Satellit Standard Stegreif voraus
Siegfried Neubert
2008-06-26 18:08:38 UTC
Permalink
Post by Ralf Kusmierz
X-No-Archive: Yes
Post by Siegfried Neubert
So'n Studienkollege der meint ... , aber dann auch nicht weis,
ist nicht sehr hilfreich - find ich!
Was weist der denn - oder meintest Du vielleicht "weiß" von "wissen"?
Gruß aus Bremen
Ralf
--
adressiert Appell asynchron Atmosphäre Autor bißchen Ellipse Emission
gesamt hältst Immission interessiert korreliert korrigiert Laie
nämlich offiziell parallel reell Satellit Standard Stegreif voraus
Roland Franzius
2008-06-26 17:39:05 UTC
Permalink
Post by Erik Griffin
Hallo!
Folgendes sei gegeben: anzufahrende X, Y, Z - Koordinaten. Ein
Einheitsvektor I, J, K der die Rotationsmatrix beschreibt. Gesucht seien
die 4 Quaternion Q1, Q2, Q3 und Q4. Wie müsste die Formel dazu aussehen
um Q1 bis Q4 berechnen zu können?
Ich habe bereits bei Wikipedia, Google, etc. pp. gesucht und auch vieles
über Quaternion gefunden, aber bisher leider noch nicht wie man Sie aus
einem gegebenen Einheitsvektor berechnen kann.
Vielen Dank für jegliche Hinweise...
Ein 3-Vektor X,Y,Z wird als Quaternionelement dargestellt durch die
Linearkombination seiner Komponenten mit der Vektorraumbasis (i,j,k)

x = X i + Y j + Z k

Die quaternionische Drehung mit dem Einheitvektor mit den Komponenten
(I,J,K) Im R^3 als Achse hat die quaternionische Form

S= exp(alpha/2 I i + J j + K k) =
cos (alpha/2) + (I i + J j + K k) sin (alpha/2)

die folgendermaßen beidseitig wirkt und den gedrehte Vektor

x' = S x S^+

produziert. Dessen Komponenten ergeben sich schlicht als die Skalarwerte
der Produkte mit den Basisvektoren

x' i, x' j und x' k


oder abstrakt als Antikommutator

X'= 1/2 (i x' + x' i)
Y'= 1/2 (j x' + x' j)
Z'= 1/2 (k x' + x' k)
--
Roland Franzius
Erik Griffin
2008-07-03 04:02:00 UTC
Permalink
* Roland Franzius schrieb:

[...]
Post by Roland Franzius
Ein 3-Vektor X,Y,Z wird als Quaternionelement dargestellt durch die
Linearkombination seiner Komponenten mit der Vektorraumbasis (i,j,k)
x = X i + Y j + Z k
Die quaternionische Drehung mit dem Einheitvektor mit den Komponenten
(I,J,K) Im R^3 als Achse hat die quaternionische Form
S= exp(alpha/2 I i + J j + K k) =
cos (alpha/2) + (I i + J j + K k) sin (alpha/2)
die folgendermaßen beidseitig wirkt und den gedrehte Vektor
x' = S x S^+
produziert. Dessen Komponenten ergeben sich schlicht als die Skalarwerte
der Produkte mit den Basisvektoren
x' i, x' j und x' k
oder abstrakt als Antikommutator
X'= 1/2 (i x' + x' i)
Y'= 1/2 (j x' + x' j)
Z'= 1/2 (k x' + x' k)
Hm... und wo ist der 4. Wert? Ich benötige ein Einheitsquaternion
bestehend aus 4 Werten... Ich habe keinerlei Winkel gegeben. Was
bedeutet in diesem Fall x'?



mfg
Erik
Roland Franzius
2008-07-03 09:12:23 UTC
Permalink
Post by Erik Griffin
[...]
Post by Roland Franzius
Ein 3-Vektor X,Y,Z wird als Quaternionelement dargestellt durch die
Linearkombination seiner Komponenten mit der Vektorraumbasis (i,j,k)
x = X i + Y j + Z k
Die quaternionische Drehung mit dem Einheitvektor mit den Komponenten
(I,J,K) Im R^3 als Achse hat die quaternionische Form
S= exp(alpha/2 I i + J j + K k) =
cos (alpha/2) + (I i + J j + K k) sin (alpha/2)
die folgendermaßen beidseitig wirkt und den gedrehte Vektor
x' = S x S^+
produziert. Dessen Komponenten ergeben sich schlicht als die Skalarwerte
der Produkte mit den Basisvektoren
x' i, x' j und x' k
oder abstrakt als Antikommutator
X'= 1/2 (i x' + x' i)
Y'= 1/2 (j x' + x' j)
Z'= 1/2 (k x' + x' k)
Hm... und wo ist der 4. Wert? Ich benötige ein Einheitsquaternion
bestehend aus 4 Werten... Ich habe keinerlei Winkel gegeben. Was
bedeutet in diesem Fall x'?
Schildere die Geometrie deines Problem völlig unmathematisch mal so,
dass jeder es verstehen kann.
Dann ist es auch leicht, einen Lösungsweg mit Quaternionen anzugeben.
--
Roland Franzius
Loading...