Ableitung Rotationsmatrix < Matrizen < Lineare Algebra < Hochschule < Mathe < Vorhilfe
|
Hallo,
ich habe zu vorgegebenen Rotationsvektor die Rotationsmatrix bestimmt und brauche von dieser jetzt die Ableitung bezüglich des Vektors.
Also:
Der Rotationsvektor ist [mm] \vec{v}=\pmat{a\\b\\c}. [/mm]
Der Vektor gibt die Rotationsachse an, die Länge des Vektors den Rotationswinkel.
Der Rotationswinkel ist also [mm] \theta=|\vec{v}|=\wurzel{a^{2}+b^{2} +c^{2}}.
[/mm]
Daraus ergibt sich die Rotationsmatrix:
[mm] R=cos\theta*1_{3} [/mm] + [mm] \bruch{sin\theta}{\theta}*J+\bruch{1-cos\theta}{\theta^2}\vec{v}*\vec{v}^{T}
[/mm]
wobei:
[mm] J=\summe_{i=1}^{3}(\vec{v}\times e_{k})*e_{k}^{T} [/mm] ; mit [mm] e_{k}=k-ter [/mm] Einheitsvektor
Meine Rechnung zur Ableitung:
1) [mm] \bruch{d}{d\vec{v}}cos\theta*1_{3}=\bruch{-sin\theta}{\theta}*\vektor{a*1_{3}\\b*1_{3}\\c*1_{3}}
[/mm]
2) [mm] \bruch{d}{d\vec{v}}\bruch{sin\theta}{\theta}*J=\bruch{\theta cos\theta-sin\theta}{\theta^{3}}*\pmat{a*J \\ b*J \\ c*J} [/mm] + [mm] \bruch{sin\theta}{\theta}\pmat{0 & 0 & 0 \\ 0 & 0 & -1 \\ 0 & 1& 0 \\ 0 & 0 & 1 \\ 0 & 0 & 0 \\ -1 & 0 & 0 \\ 0 & -1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 0 } [/mm]
3) [mm] \bruch{d}{d\vec{v}}\bruch{1-cos\theta}{\theta^{2}}*\vec{v}*\vec{v}^{T}=\bruch{\theta sin\theta+2cos\theta-2}{\theta^{4}}\pmat{a*\vec{v}*\vec{v}^{T}\\ b*\vec{v}*\vec{v}^{T}\\ c*\vec{v}*\vec{v}^{T}}+\bruch{1-cos\theta}{\theta^{2}}*\pmat{2a & b & c\\ b & 0 & 0 \\ c & 0 & 0 \\ 0 & a & 0 \\ a & 2b & c \\ 0 & c & 0 \\ 0 & 0 & a \\ 0 & 0 & b\\ a & b & 2c}
[/mm]
[mm] \bruch{dR}{d\vec{v}}= [/mm] 1) + 2) + 3)
Ich habe ein Programm, welches mir zu gegebenen Rotationsvektor die Rotationsmatrix und die Ableitung berechnet.
Ich habe als Beispiel [mm] \vec{v}=\vektor{0 \\ 0\\ \bruch{\pi}{2}}genommen.
[/mm]
Die Matrix stimmt mit meiner Lösung überein, die Ableitung nicht. Wo ist mein Fehler?
Falls mir jemand sagen kann, wie ich die Ableitung noch besser oder einfacher machen kann, wäre ich auch sehr dankbar.
Gruß Ned
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 14:16 Do 03.09.2009 | Autor: | djmatey |
> Hallo,
Hallo lieber Ned
>
> ich habe zu vorgegebenen Rotationsvektor die
> Rotationsmatrix bestimmt und brauche von dieser jetzt die
> Ableitung bezüglich des Vektors.
>
> Also:
> Der Rotationsvektor ist [mm]\vec{v}=\pmat{a\\b\\c}.[/mm]
> Der Vektor gibt die Rotationsachse an, die Länge des
> Vektors den Rotationswinkel.
> Der Rotationswinkel ist also
> [mm]\theta=|\vec{v}|=\wurzel{a^{2}+b^{2} +c^{2}}.[/mm]
>
>
> Daraus ergibt sich die Rotationsmatrix:
>
> [mm]R=cos\theta*1_{3}[/mm] +
> [mm]\bruch{sin\theta}{\theta}*J+\bruch{1-cos\theta}{\theta^2}\vec{v}*\vec{v}^{T}[/mm]
>
> wobei:
>
> [mm]J=\summe_{i=1}^{3}(\vec{v}\times e_{k})*e_{k}^{T}[/mm] ; mit
> [mm]e_{k}=k-ter[/mm] Einheitsvektor
>
>
>
>
> Meine Rechnung zur Ableitung:
>
> 1)
> [mm]\bruch{d}{d\vec{v}}cos\theta*1_{3}=\bruch{-sin\theta}{\theta}*\vektor{a*1_{3}\\b*1_{3}\\c*1_{3}}[/mm]
>
> 2)
> [mm]\bruch{d}{d\vec{v}}\bruch{sin\theta}{\theta}*J=\bruch{\theta cos\theta-sin\theta}{\theta^{3}}*\pmat{a*J \\ b*J \\ c*J}[/mm]
> + [mm]\bruch{sin\theta}{\theta}\pmat{0 & 0 & 0 \\ 0 & 0 & -1 \\ 0 & 1& 0 \\ 0 & 0 & 1 \\ 0 & 0 & 0 \\ -1 & 0 & 0 \\ 0 & -1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 0 }[/mm]
>
> 3)
> [mm]\bruch{d}{d\vec{v}}\bruch{1-cos\theta}{\theta}*\vec{v}*\vec{v}^{T}=\bruch{\theta sin\theta+2cos\theta-2}{\theta^{4}}\pmat{a*\vec{v}*\vec{v}^{T}\\ b*\vec{v}*\vec{v}^{T}\\ c*\vec{v}*\vec{v}^{T}}+\bruch{1-cos\theta}{\theta^{2}}*\pmat{2a & b & c\\ b & 0 & 0 \\ c & 0 & 0 \\ 0 & a & 0 \\ a & 2b & c \\ 0 & c & 0 \\ 0 & 0 & a \\ 0 & 0 & b\\ a & b & 2c}[/mm]
Hier fehlt im ersten Nenner ein Quadrat - ändert aber nichts an der Rechnung.
>
>
> [mm]\bruch{dR}{d\vec{v}}=[/mm] 1) + 2) + 3)
>
>
> Ich habe ein Programm, welches mir zu gegebenen
> Rotationsvektor die Rotationsmatrix und die Ableitung
> berechnet.
> Ich habe als Beispiel [mm]\vec{v}=\vektor{0 \\ 0\\ \bruch{\pi}{2}}genommen.[/mm]
>
> Die Matrix stimmt mit meiner Lösung überein, die
> Ableitung nicht. Wo ist mein Fehler?
> Falls mir jemand sagen kann, wie ich die Ableitung noch
> besser oder einfacher machen kann, wäre ich auch sehr
> dankbar.
Ich habe gerade mal nachgerechnet (puuuuuuuh!) und komme auf dasselbe Ergebnis für die Ableitung.
>
> Gruß Ned
>
>
LG djmatey
|
|
|
|
|
Hallo,
erst einmal Danke djmatey.
Auch wenn der Fehler nicht bei mir, sondern im Programm liegen sollte, muss ich wissen wo der Fehler ist.
Leider kann ich die Berechnung des Programms nicht ganz nachvollziehen. Für die Ableitungen werden in dem Programm vier Matrizen miteinander multipliziert, die aus heiterem Himmel zu kommen scheinen. (Die größte der Matrizen ist eine 9x21 Matrix.)
Sollte also jemand noch ein Verfahren zum Ableiten von Matrizen (insbesondere Rotationsmatrizen) kennen, wäre es schön, wenn es hier kurz erklärt werden würde.
(Vielleicht verstehe ich dann auch das Programm).
Hat jemand Tipps und Tricks zum Ableiten von Matrizen nach Verkoten?
Ich bin für jeden Link und jede Antwort dankbar.
Grüße Ned.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 00:20 Mi 09.09.2009 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|