[zurück]

Vektor- und Matrizenrechnung, räumliche Koordinatentransformation

(Steffen Fuchs)
[vor]

Was ist ein Vektor?

Wenn man ihn abstrakt definieren will, ist ein Vektor eine einfache Zeilen- oder Spaltenstruktur, die mit Zahlen gefüllt ist. So ist zum Beispiel a = (a1, a2, ...,an) ein Zeilenvektor und
b = æ
ç
ç
è
b1
b2
:
bn
ö
÷
÷
ø
ein Spaltenvektor, wobei der Unterschied in der Regel erst bei Matrizenrechnung bedeutend wird.

Anschaulich kann man sich einen Vektor als etwas vorstellen, das nicht nur eine Länge, sondern - über die Angabe der Anteile entlang der Koordinatenachsen - auch eine Richtung hat. So gibt zum Beispiel c = ( 1, 2, 3 ) einen Punkt mit den Koordinaten x = 1, y = 2 und z = 3 oder eine Verschiebung um eine Einheit in x-, zwei in y- und drei in z-Richtung an. Deswegen pflegt man den Vektorpfeil über den Buchstaben für den Vektor zu machen, jedenfalls wenn nicht von vornherein klar ist, dass es sich um einen Vektor handelt.

Vektorrechnung

Vektoren gleicher Dimension und gleicher Art können komponentenweise addiert und subtrahiert werden. So ergibt sich zum Beispiel aus a = (10, 20, 30) und b = (6, 8, 3) die Summe a + b = (16, 28, 33) und die Differenz a - b = (4,12, 27). Der Betrag eines Vektors a = (a1, a2, ..., an) ergibt sich nach dem Satz des Pythagoras zu |a| = Öa12 + a22 + ¼ + an2. Zum Beispiel ist der Betrag von a = (5,7,13) gleich |a| = Ö52+72+132 = Ö243.

Vektoren können auch multipliziert werden, und zwar auf verschiedene Arten, wobei hier nur das sogenannte Skalarprodukt erwähnt wird. Man schreibt das Skalarprodukt von a und b als a · b oder áa|bñ. Die Vektoren a und b müssen auch in diesem Fall gleich viele Elemente besitzen. Das Skalarprodukt von a = (a1, a2, ¼, an) mit b = (b1, b2, ¼, bn) ist a · b = a1b1 + a2b2 + ¼+ anbn. Das Ergebnis ist also eine Zahl (ein Skalar) und kein Vektor.

Die Schreibweise mit den spitzen Klammern hat P. A. M. Dirac in die Physik eingeführt. Er schreibt einen Zeilenvektor als áa| und nennt ihn "bra", einen Spaltenvektor als |bñ und nennt ihn "ket" . Zusammen sind sie - na klar - ein "bracket" (Klammer). Zeilen- mal Spaltenvektor, als Matrizenprodukt (s. u.) aufgefasst, ist nämlich dasselbe wie das Skalarprodukt.

Eine einfache Anwendung ist die Formel für die mechanische Arbeit, wenn Kraft und Weg nicht parallel sind: W = F · s. Eine besondere Eigenschaft des Skalarprodukts ist, dass es für aufeinander senkrechte Vektoren 0 wird.

Man kann einen Vektor auch mit einer Zahl a multiplizieren, also Vielfache bilden, indem man jedes Element des Vektors mit a multipliziert. N Vektoren, die linear unabhängig sind, das heißt, dass keiner von ihnen durch Vielfache der anderen ausgedrückt werden kann, spannen einen N-dimensionalen Raum auf; sie heißen dann Basisvektoren des Vektorraums RN. Jeder andere Vektor dieses Raumes kann als Linearkombination, das heißt als Summe von Vielfachen der Basisvektoren, dargestellt werden. Zum Beispiel spannen die üblichen Einheitsvektoren

e1 = æ
ç
è
1
0
0
ö
÷
ø
, e2 = æ
ç
è
0
1
0
ö
÷
ø
und e3 = æ
ç
è
0
0
1
ö
÷
ø
den bekannten 3-dimensionalen Raum auf. In der Regel versucht man Basisvektoren eines Vektorraums so festzulegen, dass sie aufeinander senkrecht stehen (das Skalarprodukt verschiedener Basisvektoren ist stets 0) und normiert sind (die Länge jedes Basisvektors ist 1).

Matrizen

Matrizen sind rechteckige Zahlenanordnungen der folgenden Art:

A = æ
ç
ç
è
a11
a21
:
am1
a12
a22
:
am2
¼
¼

¼
a1n
a2n
:
amn
ö
÷
÷
ø

Die Zahlen aij innerhalb der Matrix heißen ihre Elemente oder Koeffizenten, und deren Indizes geben die Zeilen- und die Spaltennummer (in dieser Reihenfolge) an.

Man kann Matrizen in Zeilen- und Spaltenvektoren zerlegen, indem man sich eine Zeile bzw. Spalte der Matrix herausgreift. Zum Beispiel ist der i-te Zeilenvektor Ai = (ai1, ai2, ai3,¼, ain).

Eine wichtige Matrix ist die sogenannte Einheitsmatrix

I = æ
ç
ç
è
1
0
:
0
0
1
:
0
¼
¼

¼
0
0
:
1
ö
÷
÷
ø

Matrizen können genau wie Vektoren elementweise addiert, subtrahiert und mit einer Zahl multipliziert werden, wobei genau wie bei Vektoren Zeilen- und Spaltenanzahl übereinstimmen müssen.

Wenn man Matrizen miteinander multiplizieren will, so muss die Anzahl der Spalten der ersten Matrix gleich der Zeilenzahl der zweiten Matrix sein, man kann also zum Beispiel eine (m × n)-Matrix (das heißt m Zeilen und n Spalten) mit einer (n × p)-Matrix multiplizieren. Daran sieht man auch, dass die Matrizen bei der Multiplikation in der Regel nicht vertauscht werden dürfen. Falls man in der misslichen Lage ist, so etwas von Hand ausrechnen zu müssen, verwendet man am besten das Schema von Falk. Dazu zeichnet man sich ein Kreuz, trägt die erste Matrix links unten, die zweite rechts oben ein.

|
|
|
|
|
æ
ç
ç
è
b11
b21
:
bn1
b12
b22
:
bn1
¼
¼

¼
b1p
b2p
:
bnp
ö
÷
÷
ø


æ
ç
ç
è
a11
a21
:
am1
a12
a22
:
am1
¼
¼

¼
a1n
a2n
:
amn
ö
÷
÷
ø
|
|
|
|
|
æ
ç
ç
è
c11
c21
:
cm1
c12
c22
:
cm1
¼
¼

¼
c1p
c2p
:
cmp
ö
÷
÷
ø

Das Produkt der beiden Matrizen steht rechts unten; es hat m Zeilen und p Spalten. Die cij errechnen sich so:

cij = n
å
k = 1
 
aikbkj = ai1b1j + ai2b2j + ... + ainbnj

Für die Einheitsmatrix I und eine beliebige Matrix A gilt dabei: I A = A I = A, d. h. Matrizen bleiben bei Multiplikation mit der Einheitsmatrix unver&ändert. Wenn man eine Matrix mit einem Vektor multiplizieren will, wird der Vektor als einzeilige oder (meistens) als einspaltige Matrix betrachtet. Deshalb ist es entweder m&öglich, einen Zeilenvektor mit einer Matrix oder eine Matrix mit einen Spaltenvektor zu multiplizieren. Dabei entsteht als Produkt ein Vektor, der dieselbe Form wie der Ausgangsvektor hat.

|
|
|
|
|
æ
ç
ç
è
b1
b2
:
bn
ö
÷
÷
ø


æ
ç
ç
è
a11
a21
:
am1
a12
a22
:
am1
¼
¼

¼
a1n
a2n
:
amn
ö
÷
÷
ø
|
|
|
|
|
æ
ç
ç
è
c1
c2
:
cm
ö
÷
÷
ø

R&äumliche Koordinatentransformation

Dieses Produkt einer Matrix mit einem Vektor kann man gut auf den dreidimensionalen Raum anwenden, indem man dreizeilige Spaltenvektoren verwendet und als Ortsvektoren im Raum interpretiert. Allgemein kann man eine r&äumliche Koordinatentransformation so aufschreiben:

xneu = A · xalt + v,

wobei xalt der Punkt im alten Koordinatensystem, xneu der im neuen, A die Transformationsmatrix und v ein zus&ätzlicher Verschiebevektor ist.

Beide Koordinatensysteme sind identisch, wenn A die Einheitsmatrix und v der Nullvektor ist. Einfache Verschiebungen realisiert man mit A = I und v je nach gewünschter Verschiebung. Wenn man entlang der Koordinatenachsen strecken, stauchen und / oder spiegeln will, verwendet man eine Matrix

A = æ
ç
è
a
0
0
0
b
0
0
0
c
ö
÷
ø
,

wobei a die x-, b die y- und c die z-Achse beeinflusst.

Wenn a oder b oder c negativ sind, so wird die entsprechende Koordinate gespiegelt, bei positiven Werten nicht. Wenn der Betrag größer als 1 ist, wird zusätzlich gestreckt, wenn er kleiner als 1 ist, wird gestaucht. Wenn er gleich 1 ist, bleibt die Koordinate bis auf evtl. Spiegelung erhalten.

Zur senkrechten Parallelprojektion kommt man, wenn man a oder b oder c auf Null setzt. Für a = 0 projiziert man auf die y-z-Ebene (Seitenansicht), für b = 0 auf die x-z-Ebene (Frontansicht) und für c = 0 auf die x-y-Ebene (Grundriss). Wenn zwei der Werte 0 sind, projiziert man auf die übrigbleibende Achse, und wenn alles 0 ist, findet man anschließend jeden Punkt im Ursprung wieder.

Drehung

Drehen wir zunächst um die z-Achse. (Eine Drehung um eine beliebig im Raum liegende Achse sieht nur komplizierter aus, bringt aber keine neuen Erkenntnisse.) Dabei verändert sich die z-Koordinate des Punktes nicht, sondern nur die x- und y-Koordinate. Es ergibt sich folgende Matrix:

A = æ
ç
è
a11
a21
0
a12
a22
0
0 
0 
1
ö
÷
ø

(die Zahlen a11, a12, a21, a22 kennen wir noch nicht). Aus den Formeln für das Produkt von Matrizen mit Vektoren ergibt sich:

xneu = a11xalt + a12yalt     und      yneu = a21xalt + a22yalt

Aus dem Satz des Pythagoras:

x2neu + y2neu = x2alt + y2alt

(die Länge des Vektors soll bei der Drehung unverändert bleiben) und aus dem Drehwinkel a erhält man dann die endgültige Drehmatrix

Az = æ
ç
è
cos a
- sina
0
sin a
cos a
0
0
0
1
ö
÷
ø
.

Entsprechend ergibt sich für die Drehung um die x- und y-Achse:

Ax = æ
ç
è
1
0
0
0
cos a
- sina
0
sin a
cos a
ö
÷
ø
     und      Ay = æ
ç
è
cos a
0
- sina
0
1
0
sin a
0
cos a
ö
÷
ø

Aus den bis jetzt aufgeführten Transformationen kann man sämtliche anderen, z. B. Drehschubstreckspiegelungen, durch Hintereinanderausführung zusammensetzen. Dazu führt man (in der richtigen Reihenfolge) die erste Transformation aus, berechnet also aus den ersten xalt, yalt usw. die ersten xneu, setzt diese in die zweite Transformation als xalt ein, berechnet wieder die xneu usw. und setzt das solange fort, bis man die letzte Transformation durchgegangen ist. Oder, wenn die Transformationen ohne Verschiebungen sind, multipliziert man die 2. Transformationsmatrix mit der 1., dann die 3. mit deren Produkt, dann die 4. mit deren, usw. (Reihenfolge beachten !!) und erhält eine Transformation, die alle Teile enthält. Man braucht dann nur noch diese auf jeden Punkt anzuwenden. Es gibt zu allen Transformationen Umkehrungen, außer zu solchen, bei denen danach alle Punkte in einer Ebene - oder gar auf einer Geraden oder in einem Punkt - liegen, da dabei dann die Information über eine Koordinate verloren geht.

Diese Transformationen sind relativ leicht auf höherdimensionale Räume zu übertragen, da auch dort jede Transformation aus Streckungen, Spiegelungen, Drehungen und Verschiebungen zusammensetzbar ist.


[zurück] [Inhaltsverzeichnis] [vor]