Computer: Mathematik – Vektorräume – Lineare Algebra

Gehört zu: Mathematik

Siehe auch: Diriac-Notation, Tensor-Algebra, Relativitätstheorie

Benutzt: WordPress-Plugin Latex

Was ist ein Vektorraum?

Eine der Voraussetzungen zum Verständnis vieler Dinge (z.B. in der Allgemeinen Relativitätstheorie und der Quantenmechanik) sind sog. Vektorräume.

Es gibt dazu eine Menge Videos auf Youtube; z.B. von 3Blue1Brown:  https://youtu.be/fNk_zzaMoSs  – Playlist: https://goo.gl/R1kBdb

Vektorräume verfügen über eine Operation, die Addition genannt wird und eine kommutative Gruppe bildet. Weiterhin muss jeder Vektorraum einen Körper von sog. Skalaren haben, mit denen die Vektoren mutipliziert (“skaliert”) werden können. Man spricht dann von einem Vektorraum “über” einem Körper seiner Skalaren.

Der Physiker stellt sich Vektoren gern als “Pfeile” vor, die also eine Richtung und eine Länge haben, also eher “geometrisch“. Der Computer-Mensch stellt sich Vektoren eher als Liste von Koordinaten vor (Vektor = Liste) – wozu man aber ersteinmal ein Koordinatensystem haben muss. Der abstrakte Mathematiker sagt, Vektoren sind einfach “etwas”, was man addieren kann (Gruppe) und was man mit “Skalaren” skalieren kann – fertig, einfach ein paar Axiome und das war’s.

Geschrieben werden Vektoren meist als eine Liste von Koordinaten, aber nicht waagerecht, sondern senkrecht angeordnet (bei waagerechter Anordnung denkt man eher an einen Punkt im Raum).

\( \Large \vec{v} = \left( \begin{array}{c} x \\\ y \\\ z  \end{array}\right) \)

oder auch in eckigen Klammern:

\( \Large \vec{v} = \left[ \begin{array}{c} x \\\ y \\\ z  \end{array} \right] \)

Wenn ich Vektoren als Liste von Koordinaten schreiben will, muss ich ersteinmal ein Koordinatensystem haben.

Vektoren, und das ist wichtig, exisitieren auch ohne Koordinatensysteme, also einfach geometrisch im Raum. Unabhängig von einem Koordinatensystem hat jeder Vektor eine Länge und eine Richtung. Dies sind also sog. “Invarianten”; d.h. bei Änderung des Koordinatensystems ändern sich diese Eigenschaften nicht.
Also: Vektoren ansich sind invariant gegenüber einem Wechsel des Koordinatensystems. Aber die Vektorkomponenten verändern sich beim Wechsel des Koordinatensystems, sind wie man sagt “variant“. Wie Vektorkomponenten bei Wechsel des Koordinatensystems hin- und hergerechnet werden können, behandeln wir weiter unten. So ein Vektor ist damit der Sonderfall eines Tensors, nämlich ein Tensor vom Rang 1.

Für die Länge eines Vektors (man sagt auch “Norm”) schreibt man:  \( \Large ||  \vec{v}  ||  \)

Für den Winkel zwischen zwei Vektoren schreibt man: \( \Large  \angle \left( \vec{v}, \vec{w} \right)  \)

Das innere Produkt zweier Vektoren (auch Skalarprodukt genannt) ist dann – unabhängig von einem Koordinatensystem – definiert als:

\( \Large \vec{v} \cdot \vec{w} = ||  \vec{v} || \enspace || \vec{w} || \cos(\angle \left( \vec{v}, \vec{w} \right)) \)

Als Schlussfolgerung kann man die Länge eines Vektors auch per innerem Produkt darstellen als:

\( \Large || \vec{v} ||  = \sqrt{\vec{v} \cdot \vec{v}} \)

Basis, Koordinatensystem, Dimension

In einem Vektorraum kann ich viele Koordinatensysteme haben. Jedes Koordinatensystem ist bestimmt durch eine Menge sog. Basis-Vektoren.

Die “Basis” eines Vektorraums besteht aus einer Menge von Vektoren, mit denen man den gesamten Vektorraum “aufspannen” kann. Wobei “Aufspannen” bedeutet, dass jeder Vektor des Vektorraums als sog. Linearkombination aus den Basis-Vektoren hergestellt werden kann. Eine solche “Linearkombination” ist eine Summe von Basis-Vektoren, die mit geeigneten Skalaren multipliziert wurden.

Beispiel für eine Linearkombination:

\( \Large a  \vec{v} + b \vec{w} + c \vec{u} \)

Ganz genau genommen, spannt eine Basis nicht nur den ganzen Vektorraum auf (das wäre ein Erzeugendensystem), sondern enthält dabei eine minimale Anzahl von Vektoren (was äquivalent ist mit der eindeutigen Darstellung aller Vektoren des Vektorraums in Form von Linearkombinationen).

Eine Einheitsbasis (normal basis) ist eine Basis, bei der alle Basisvektoren die Länge 1 haben (“auf die Länge 1 normiert sind”).

Beispiel für eine Basis (im Vektorraum \(\mathbb{R}^3\) ):

\( \hat{i} =\left[ \begin{array}{c} 1 \\\ 0 \\\ 0  \end{array} \right]   \hat{j} =\left[ \begin{array}{c} 0 \\\ 1 \\\ 0  \end{array} \right] \hat{k} =\left[ \begin{array}{c} 0 \\\ 0 \\\ 1  \end{array} \right] \)

Und man schreibt dann auch gerne:

\( \Large \vec{v} = \left[ \begin{array}{c} x \\\ y \\\ z  \end{array} \right] = x \hat{i} + y \hat{j} + z \hat{k}\)

Ein Vektorraum kann mehrere Basen haben, die jeweils ein Koordinatensystem definieren. Dabei werden die Koordinaten (Komponenten) ein und desselben Vektors in verschiedenen Koordinatensystem auch verschieden sein, der Vektor selbst aber ist “invariant”. Wenn man einen Vektor als Liste von Koordinaten hinschreibt, muss man immer sagen. welche Basis gemeint ist.

Ein Vektorraum kann mehrere Basen haben, aber die Anzahl der Vektoren in einer Basis ist immer die gleiche. Diese Anzahl nennt man “Dimension” des Vektorraums.

Lineare Transformationen

Lineare Transformationen sind Transformationen, bei denen Geraden Geraden bleiben und der Null-Punkt (Origin) unverändert bleibt.
Genauer gesagt, bleiben Parallelen parallel und die Koordinatengitter gleichmäßig unterteilt. Man kann das auch abstrakt durch zwei Formeln ausdrücken:

\( L(\vec{v} +  \vec{w}) = L(\vec{v}) +  L(\vec{w})  \)

und

\( L(c \vec{v}) = c L(\vec{v}) \\ \)

Eine Lineare Tranformation kann eindeutig beschrieben werden durch die Werte auf die die Basis-Vektoren abgebildet (transformiert) werden.

Beispielsweise heisst das im Vektorraum \(\mathbb{R}^2\) mit dem kanonischen Koordinatensystem und den Basisvektoren \( \hat{i} \) und \( \hat{j}  \) folgendes:

Wenn wir einen Vektor \( \vec{v} = \left[ \begin{array}{c} x \\\ y  \end{array} \right] = x \hat{i} + y\hat{j} \) betrachten, so wirkt eine Lineare Transformation L wie folgt:

\( L(\vec{v}) = x L(\hat{i}) + y L(\hat{j} )  \)

Wenn wir also die transformierten Basisvektoren \( L(\hat{i}) \) und \( L(\hat{j}) \)  kennen, ist damit die Lineare Transformation L vollständig festgelegt.

Diese transformierten Basis-Vektoren können im verwendeten Koordinatensystem als Matrix schreiben.

Wenn bei unserer Linearen Transformation beispielsweise \( L(\hat{i}) = \left[ \begin{array}{c} 3 \\\ -2  \end{array} \right] \)   und \( L(\hat{j}) = \left[ \begin{array}{c} 2 \\\ 1  \end{array} \right] \)  wäre, bekämen wir eine Matrix:

\(\left[ \begin{array}{rr} 3 & 2 \\  -2 & 1 \\  \end{array} \right] \)

Wir schreiben also in den Spalten der Matrix die transformierten Basisvektoren. Die Lineare Transformation könnte im benutzten Koordinatensystem als Matrixmultiplikation aufgefasst werden:

\(\left[ \begin{array}{rr} 3 & 2 \\  -2 & 1 \\  \end{array} \right]  \left[ \begin{array}{c} x \\\ y  \end{array} \right] = x  \left[ \begin{array}{c} 3 \\\ -2  \end{array} \right] + y  \left[ \begin{array}{c} 2 \\\ 1  \end{array} \right] = \left[ \begin{array}{c} 3x+2y \\\ -2x+1y  \end{array} \right]\)

Völlig analog werden auch Lineare Transformationen in drei oder mehr Dimensionen behandelt.

Wechsel von Koordinatensystemen

Wenn wir zwei Koordinatensysteme betrachten, dann haben die also zwei Basen (wir nennen sie “alte Basis” und “neue Basis”). Intuitiv ist klar, dass wenn die neue Basis z.B. längere Basisvektoren hat, dann sind die Vektorkomponenten kürzer (weil ja der gleiche Vektor wieder herauskommen soll). Die Vektorkomponenten verhalten sich also “umgekehrt” wie die Längen der Basisvektoren. Deshalb nennt man diese Vektoren “kontravariant“.

Wir können das auch haarklein ausrechnen:

  • Die “alte Basis” sei: \( \vec{e}_i  \)
  • Die “neue Basis” sei: \( \tilde{\vec{e}}_i  \)

Dann transformieren sich die Basisvektoren wie folgt:

Alt -> Neu (“Foreward”):

\(  \tilde{\vec{e}}_i =  \sum\limits_{k=1}^{n} F_{ki} \vec{e_k}\)

Neu -> Alt (“Backward”):

\(  \vec{e}_i =  \sum\limits_{j=1}^{n} B_{j i} \widetilde{\vec{e_j}}\)

Für die Komponenten eines Vektors \( \vec{v} \) gilt dann die umgekehrte Richtung (deshalb nennt man sie “kontravariant“)

Alt -> Neu:

\( \tilde{v_i} = \sum\limits_{j=1}^{n} B_{ij} v_j  \)

Neu -> Alt

\( v_i = \sum\limits_{j=1}^{n} F_{ij}\tilde{v_j}   \)

Berechnung der Länge eines Vektors aus seinen Komponenten

Wir sind ja gewöhnt, die Länge eines z.B. dreidimensionalen Vektors über seine Koordinaten und den Lehrsatz des Pythagoras zu berechnen:

Im Beispiel sei der Vektor \( \Large \vec{v} = \left[ \begin{array}{c} v_1 \\\ v_2 \\\ v_3  \end{array} \right] \)

Dann wäre die Länge dieses Vektors gegeben durch: \( || \vec{v} ||= \sqrt{v_1^2 + v_2^2 + v_3^2} \)  (der gute alte Pythagoras)

In verschiedenen Koordinatensystemen würde dieser Vektor aber mit verschiedenen Koordinaten (Komponenten) beschrieben und es würden mit obiger Formel dann unterschiedliche Längen heraus kommen.

Uns ist ja klar, dass wir zu den Koordinaten (Komponenten) eines Vektors auch immer angeben müssen, in welchem Koordinatensystem diese gemessen werden; d.h. wir müssen zu den Koordinaten die dazugehörige Basis angeben – und berücksichtigen.

Wenn wir als Basis allgemein schreiben: \( \vec{e}_i  \)

dann können wir mit den Komponenten unseres Vektors zu dieser Basis schreiben:

\( \Large \vec{v} = \left[ \begin{array}{c} v_1 \\\ v_2 \\\ v_3  \end{array} \right] = v_1 \vec{e}_1 + v_2 \vec{e}_2 + v_3 \vec{e}_3\)

Im Spezialfall der orthonormalen Basis:

\( \vec{e}_1 = \hat{i}, \vec{e}_2 = \hat{j}, \vec{e}_3 = \hat{k}   \)

hätten wir die Länge unseres Vektors nach Pythagoras (s.o.); mit den Koordinaten zu einer anderen Basis müssten wir umrechnen…

Länge eines Vektors in einem beliebigen Koordinatensystem.

Wir hatten die Länge eines Vektors unabhängig von einem Koordinatensystem (also invariant) definiert über:

\( \Large {||  \vec{v}  ||}^2 = \vec{v} \cdot \vec{v} \\\)

Wir nehmen jetzt ein beliebiges Koordinatensystem definiert durch seine Basisvektoren \( \vec{e}_i\).
Dann können wir die Länge des Vektors wie folgt aus seinen Komponenten (Koordinaten) berechnen:

\( \Large  ||  \vec{v} ||^2 = (v_1 \vec{e}_1 + v_2 \vec{e}_2 + v_3 \vec{e}_3) \cdot(v_1 \vec{e}_1 + v_2 \vec{e}_2 + v_3 \vec{e}_3) \\ \)

Wenn wir das ausmultiplizieren bekommen wir:

\( \Large ||  \vec{v} ||^2 =  \sum\limits_{ij} v_{ij}   \enspace \vec{e}_i \cdot \vec{e}_j \\ \)

Um die Länge eines Vektors in einem beliebigen Koordinatensystem zu ermitteln, benötigen wir also “lediglich” alle Kombinationen der inneren Produkte der Basisvektoren dieses Koordinatensystems; d.h. alle \( \vec{e}_i \cdot \vec{e}_j \)

Als Matrix können wir diese Produkte so hinschreiben:

\(\Large g =  \left[ \begin{array}{rrr} \vec{e}_1 \cdot \vec{e}_1 & \vec{e}_1 \cdot \vec{e}_2 & \vec{e}_1 \cdot \vec{e}_3\\  \vec{e}_2 \cdot \vec{e}_1 & \vec{e}_2 \cdot \vec{e}_2 & \vec{e}_2 \cdot \vec{e}_3 \\  \vec{e}_3 \cdot \vec{e}_1 & \vec{e}_3 \cdot \vec{e}_2 & \vec{e}_3 \cdot \vec{e}_3 \end{array} \right]  \\\)

Diese Matrix g nennt man auch den Metrik-Tensor des Koordinatensystems.

Mit Hilfe dieses Metrik-Tensors ergibt sich dann die Länge des Vektors \(\vec{v}\) ganz einfach als Matrixprodukt:

\(\Large || \vec{v} ||^2  =  \left[ \begin{array}{c} v_1 & v_2 & v_3  \end{array} \right]  g  \left[ \begin{array}{c} v_1 \\\ v_2 \\\ v_3  \end{array} \right] \\\)

Ganz allgemein kann man mit diesem Metrik-Tensor das innere Produkt zweier Vektoren aus den Komponenten berechnen:

\( \Large \vec{v} \cdot \vec{w} =  \left[ \begin{array}{c} v_1 & v_2 & v_3  \end{array} \right]  g  \left[ \begin{array}{c} w_1 \\\ w_2 \\\ w_3  \end{array} \right] \)

Das funktioniert, weil der Metrik-Tensor nicht “irgendeine” Matrix ist, sondern “invariant” ist; d.h. unabhängig vom gewählten Koordinatensystem kommt immer das gleiche Ergebnis heraus.

Der Metrik-Tensor

Der Metrik-Tensor definiert also eine (bilinerare) Abbildung:

\(  g: V \times V \to \mathbb{R} \\\)

Dies ist auch im Prinzip der Metrik-Tensor, der in den Einsteinschen Feldgleichungen als \( g_{\mu \nu} \) vorkommt.

Oben hatten wir das innere Produkt zweier Vetoren ja versucht unabhängig von einem Koordinatensystem zu definieren.
Man kann das Ganze nun aber auch umgekehrt “aufzäumen”.  Wenn wir einen Vektorraum und eine Basis haben (damit also ein Koordinatensystem), brauchen wir nur noch einen Metrik-Tensor “g” und können damit ein inneres Produkt zwischen zwei Vektoren v und w als schlichte Matrix-Multiplikation definieren:

\( \Large \vec{v} \cdot \vec{w} =  \vec{v}^T   \enspace g  \enspace \vec{w} \\ \)

Wobei das hochgestellte T “transponiert” meint. So wird aus einem Spaltenvektor ein Zeilenvektor.

Beispielsweise definiert der folgende Metrik-Tensor die übliche Metrik für alle Koordinatensysteme mit einer orthonormaler Basis – denn das innere Produkt verschiedener Basisvektoren ist Null (weil orthogonal) und das innere Produkt eines Basisvektors mit sich selbst ist 1 (weil Länge 1):

\(\Large g =  \left[ \begin{array}{rrr} 1 & 0 & 0\\  0 & 1 & 0 \\  0 & 0 & 1 \end{array} \right]  \\\)

Das gilt z.B. für ein “normales” Koordinatensystem im Euklidischen Raum.
Mit dieser Metrik ist die Länge eines Vektors also:
\( || \vec{v} ||^2 = v_1^2 + v_2^2 + v_3^2 \)
und diese Länge ist invariant gegenüber Koordinatentransformationen.

Und eine Minkowski-Metrik wird definiert durch den Metrik-Tensor:

\(\Large \eta =  \left[ \begin{array}{rrrr} 1 & 0 & 0 & 0\\  0 & -1 & 0  & 0\\  0 & 0 & -1 & 0\\ 0 & 0 & 0 & -1\end{array} \right]  \\\)

Mit dieser Metrik wäre die Länge eines Vektors also gegeben durch:

\( || \vec{v} ||^2  =  v_1^2 – v_2^2 – v_3^2 – v_4^2\)

Diese so definierte Länge wäre invariant gegenüber Lorentz-Transformationen, die wir später in der Speziellen Relativitätstheorie kennenlernen werden.

Bilineare Formen

Der Begriff “Form” wird traditionell gerne verwendet, wenn eine Abbildung Vektoren als Definitionsbereich hat.

Wir betrachten jetzt mal ganz allgemein Abbildungen

\( \mathbb{B}: V \times V \to \mathbb{R} \)

So eine Abbildung heist “bilinear” (später sagen wir “multilinear”), wenn eine “Scaling Rule” und “Addition Rules” erfüllt sind.

Scaling Rule:

\(  a B(\vec{v}, \vec{w}) = B(a \vec{v}, \vec{w}) = B(\vec{v}, a \vec{w}) \\\)

Addition Rules:

\( B(\vec{v} + \vec{u}, \vec{w}) = B(\vec{v}, \vec{w}) + B(\vec{u}, \vec{w}) \)

und

\( B(\vec{v}, \vec{w} + \vec{t}) = B(\vec{v},\vec{w}) + B(\vec{v}, \vec{t}) \\\)

Ein Metrik-Tensor ist eine spezielle Bilineare Abbildung, die erstens symmetrisch ist und zweitens immer positive Werte liefert.

Was ist ein Tensor?

Der oben beschriebene Metrik-Tensor ist ein Tensor vom Rank 2. D.h. eine zweidimensionale (also “normale”) Matix, die sich bei Transformation der Koordinatensysteme “freundlich” verhält, sodass wir von “Invarianz” sprechen können.

Allgemein und formal ist ein Tensor T eine multilineare Abbildung von einem cartesischen Produkt von Vektorräumen über einem gemeinsamen Körper von Skalaren in diesen Skalaren-Körper:

\( T: V_1 \times V_2 \times … \times V_n \to K \)

Wobei die \(V_i\) Vektorräume über K sind.

Das allgemeine Thema “Tensor” ist mathematisch vielschichtig, deshalb habe ich begonnen, einen separaten Artikel darüber zu geschrieben.

Link: https://youtu.be/8ptMTLzV4-I

Determinante und Rank

Diese Konzepte werden in Video 6 und Video 7 behandelt.

Bei einer Linearen Transformation wird die Fläche des Quadrats aus den Basisvektoren  um einen Faktor “transformiert”. Damit wird auch jede beliebige Fläche um diesen Faktor “transformiert”. Diesen “Faktor” nennen wir die Determinante der Linearen Transformation.

Entsprechend ist das auch in höheren Dimensionen z.B. mit drei Dimensionen, wo die Größe des Volumens transformiert wird.

Eine negative Determinante bedeutet, dass sich bei der linearen Transformation die “Orientierung” des Vektorraums umkehrt.

Der Rank meint die Dimension des Ausgaberaums einer Linearen Transformation. Wenn der Rank einer Transformation nicht die volle Dimension (“full rank”) unseres Vektorraums ist, ist die Determinante dieser Transformation natürlich Null, aber der Rank kann etwas differenzierter aussagen was da los ist z.B. der Rank einer 3-dimensionalen Matrix (Transformation) könnte 2 sein, dann ist der Ausgaberaum eine Ebene (2 Dimensionen), wenn der Rank 1 wäre, hätten wir als Ausgaberaum eine Linie (eine Dimension) etc. Dieser “Ausgaberaum” wird auch “Column Space” genannt, weil die Spaltenvektoren diesen aufspannen…

Vektorfelder und Skalarfelder

Was meint man mit dem Begriff “Feld”?

Das Wort “Feld” wird gerne gebraucht, wenn eigentlich eine ganz normale Abbildung (auch manchmal Funktion genannt) gemeint ist – “just to confuse the Russians”.

Jenachdem ob der Wertebereich ein Vektorraum oder ein Körper (von Skalaren) ist, spricht man von “Vektorfeld” oder “Skalarfeld”.

Der Definitionsbereich der Abbildung (Funktion) wird dabei offen gelassen.

Beispiele

  • Wenn wir jedem Punkt im Raume seine Temperatur zuordnen, haben wir ein Skalarfeld.
  • Wenn wir jedem Punkt auf einer Landkarte die Höhe über dem Meeresspiegel zuordnen, haben wir ein Skalarfeld.
  • Wenn wir jedem Punkt auf einer Landkarte die Windrichtung und Windstärke zuordnen, haben wir ein Vektorfeld.
  • Wenn wir jedem Punkt im Raum die Richtung und Stärke der Gravitationskraft zuordnen (wäre mit einem kleinen Probekörper zu bestimmen), haben wir ein Vektorfeld, genannt Gravitationsfeld
  • Ein elektrisches Feld (ein Vektorfeld) gibt für jeden Punkt im Raum die Richtung und Stärke der elektrischen Kraft an, die auf ein kleines Probeteilchen der elektrischen Ladung +1 wirkt
  • Ein magnetisches Feld (ein Vektorfeld) gibt für jeden Punkt im Raum die Richtung und Stärke der magnetischen Kraft an, die auf ein kleines Probeteilchen wirkt

Visuelle Veranschaulichung von Feldern

Skalarfelder kann man beispielsweise durch Linien im Definitionsbereich, die alle einen gleichen Skalarwert haben, veranaschaulichen (z.B. Isotermen, Isohypsen etc.)

Vektorfelder veranschaulicht man sich gerne durch sog. “Feldlinien”.