Drehmatrix im R^n

31/07/2008 - 08:18 von Philipp Kraus | Report spam
Hallo,

ich benutze für Drehungen im R^3 folgende Matrizen:

[1 0 0; 0 cos -sin; 0 sin cos] X-Achse
[cos 0 sin; 0 1 0; -sin 0 cos] Y-Achse
[cos -sin 0; sin cos 0; 0 0 1] Z-Achse

Nun möchte ich aber die Gleichung M*v =v_{gedreht} nicht im R^3,
sondern R^n haben.
n und der Winkel Phi sind mir bekannt und ich müsste nur wissen, wie
ich schnell (für C++) diese Matrix aufbauen kann.

Danke für die Hilfe

Philipp
 

Lesen sie die antworten

#1 Jan Fricke
31/07/2008 - 09:04 | Warnen spam
Philipp Kraus wrote:
Hallo,

ich benutze für Drehungen im R^3 folgende Matrizen:

[1 0 0; 0 cos -sin; 0 sin cos] X-Achse
[cos 0 sin; 0 1 0; -sin 0 cos] Y-Achse
[cos -sin 0; sin cos 0; 0 0 1] Z-Achse

Nun möchte ich aber die Gleichung M*v =v_{gedreht} nicht im R^3, sondern
R^n haben.
n und der Winkel Phi sind mir bekannt und ich müsste nur wissen, wie ich
schnell (für C++) diese Matrix aufbauen kann.


Durch n und phi ist die Drehung (wie auch im R^3) noch nicht eindeutig
bestimmt. Du solltest Dir überlegen, wie Drehungen im R^n aussehen (für
n>3 sieht das nàmlich etwas anders aus). Welche Anforderungen sollen
Deine Drehungen erfüllen? Das obige System beschreibt auch nicht alle
Drehungen des R^3, aber man kann alle daraus erzeugen. Brauchst Du ein
Erzeugendensystem? Das besteht zum Beispiel aus allen Matrizen

/ cos phi (i,j) = (k,k) und (i,j) = (l,l)
/ sin phi (i,j) = (k,l)
a_ij = < -sin phi (i,j) = (l,k)
\ 1 i = j =/= k,l
\ 0 sonst

für 1 <= k < l <= n und 0 <= phi < 2 * Pi.


Viele Grüße Jan

Ähnliche fragen