diff options
author | Andreas Müller <andreas.mueller@ost.ch> | 2021-08-22 11:16:26 +0200 |
---|---|---|
committer | Andreas Müller <andreas.mueller@ost.ch> | 2021-08-22 11:16:26 +0200 |
commit | 123a5f4a7d5afb554d17a6ffc795a7bf1921abf0 (patch) | |
tree | 6dea2c8e51803ed611076724926d59eb85da4634 /buch | |
parent | Merge pull request #89 from Malarius1999/master (diff) | |
download | SeminarMatrizen-123a5f4a7d5afb554d17a6ffc795a7bf1921abf0.tar.gz SeminarMatrizen-123a5f4a7d5afb554d17a6ffc795a7bf1921abf0.zip |
add additional image
Diffstat (limited to '')
20 files changed, 1657 insertions, 17 deletions
diff --git a/buch/chapters/95-homologie/chapter.tex b/buch/chapters/95-homologie/chapter.tex index 994c400..8201937 100644 --- a/buch/chapters/95-homologie/chapter.tex +++ b/buch/chapters/95-homologie/chapter.tex @@ -35,6 +35,16 @@ Der sogenannte Randoperator ordnet jedem Dreieck, Tetraeder oder allgemein jedem Simplex seinen Rand zu. Damit wird es möglich, das Dreieck vom Rand des Dreiecks zu unterschieden. +Die Verallgemeinerung dieser Idee liefert eine algebraische Konstruktion +zu jedem topologischen Raum, die sogenannten Homologie-Gruppen. +Sie formalisieren ein mögliches Konzept der Dimension und der +Idee von ``Löchern'' in einem topologischen Raum. +Sie können dabei helfen, die topologische Struktur verschiedener +Räume zu unterscheiden. +Das Ziel dieses Kapitels ist nicht, die Homologietheorie +vollständig zu entwickeln, sondern zu zeigen, wie man Matrizen +verwenden kann, um konkrete Rechnungen durchzuführen. + \input{chapters/95-homologie/simplex.tex} \input{chapters/95-homologie/komplex.tex} \input{chapters/95-homologie/homologie.tex} diff --git a/buch/chapters/95-homologie/homologie.tex b/buch/chapters/95-homologie/homologie.tex index 905ecc3..6588f8a 100644 --- a/buch/chapters/95-homologie/homologie.tex +++ b/buch/chapters/95-homologie/homologie.tex @@ -111,6 +111,9 @@ Wenn nur von einem Kettenkomplex die Rede ist, kann auch $H_k(C)=H_k$ abgekürzt werden. \end{definition} +% XXX Visualisierung Zyklen/Ränder, Klassen von Zyklen, die sich um einen +% XXX Rand unterscheiden + Die folgenden zwei ausführlichen Beispiele sollen zeigen, wie die Homologiegruppe $H_2$ die Anwesenheit eines Hohlraumes detektieren kann, der entsteht, wenn man aus einem Tetraeder das innere entfernt. @@ -313,6 +316,815 @@ Die Homologiegruppe $H_2$ hat jetzt Dimension $1$ und zeigt damit den Hohlraum an. \end{beispiel} +\subsubsection{Basiswahl} +Die Definition der Homologiegruppen $H_k(C)$ als Quotient von +Vektorräumen ist ziemlich abstrakt. +Sie besteht aus Klassen von Zyklen, die sich höchstens um einen +Rand unterscheiden. +% XXX Verweise auf Visualisierung +Indem wir eine geeignete Basis wählen, können wir konkrete Zyklen +identifizieren, die eine Basis für den Vektorraum $H_k(C)$ bilden. + +\begin{figure} +\centering +\includegraphics{chapters/95-homologie/images/gausshomoex.pdf} +\caption{Beispiel für die Berechnung von Basisvektoren und Homologieklassen +mit Hilfe des Gauss-Algorithmus +\label{buch:homologie:fig:gausshomoex}} +\end{figure} + +Um eine Basis für $H_k(C)$ zu konstruieren, ist es zunächst nötig, +eine Basis de rZyklen $Z_k(C)$ zu bestimmen. +Ausgehend von einer beliebigen Basis der $C_k$ und einer +zugehörigen Darstellung des Randoperators $\partial_k$ als +Matrix, kann eine Basis von Zyklen mit Hilfe des Gauss-Algorithmus +gefunden werden. +Wir bezeichnen die Menge dieser Zyklen mit +\[ +\mathcal{Z}_k += +\{ +z_1^{(k)}, +z_2^{(k)}, +\dots, +z_l^{(k)} +\}. +\] +$\mathcal{Z}_k$ erzeugt den $l$-dimensionalen Vektorraum $Z_k(C)$. + +\begin{beispiel} +\label{buch:homologie:beispiel:gausshomo} +In Abbildung~\ref{buch:homologie:fig:gausshomoex} ist ein Polyeder +dargestellt, dessen Homologiegruppe $H_1$ berechnet werden soll. +Um eine Basis für die Zyklen zu berechnen, wird zunächst die Matrix +des Randoperators $\partial_1$ aufgestellt. +Sie ist +\[ +\setcounter{MaxMatrixCols}{27} +\partial_1 += +\tiny +\setlength\arraycolsep{2pt} +\begin{pmatrix*}[r] +%1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 +-1& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 1 + 1&-1& 0& 0& 0&-1& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 2 + 0& 1&-1& 0& 0& 0& 0&-1& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 3 + 0& 0& 1&-1& 0& 0& 0& 0& 0&-1& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 4 + 0& 0& 0& 1& 0& 0& 0& 0& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 5 + 0& 0& 0& 0& 1& 1& 0& 0& 0& 0& 0& 0&-1& 0& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 6 + 0& 0& 0& 0& 0& 0&-1& 1& 0& 0& 0& 0& 1& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 7 + 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 0& 0&-1& 0& 0& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 8 + 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 1& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 9 + 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 0&-1& 0& 1& 0& 0& 0& 0& 0& 0\\ %10 + 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1&-1& 0&-1& 1& 0& 0& 0& 0\\ %11 + 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 1& 0& 0& 0&-1& 0& 0& 0\\ %12 + 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 0&-1& 1& 0\\ %13 + 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 1& 0&-1\\ %14 + 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1\\ %15 +\end{pmatrix*} +\] +Die reduzierte Zeilenstufenform von $\partial_1$ ist +\begin{center} +\tiny +\setlength\tabcolsep{3pt} +\begin{tabular}{|>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|} +\hline +&1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&18&19&20&21&22&23&24&25&26&27\\ +\hline + 1&1& 0& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 1& 0& 0&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0\\ + 2&0& 1& 0& 0& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0\\ + 3&0& 0& 1& 0& 0& 0& 0& 0& 0&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 4&0& 0& 0& 1& 0& 0& 0& 0& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 5&0& 0& 0& 0& 1&-1& 0& 0& 0& 0& 0& 0& 1& 0& 0&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0\\ + 6&0& 0& 0& 0& 0& 0& 1&-1& 0& 0& 0& 0&-1& 0& 0& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 7&0& 0& 0& 0& 0& 0& 0& 0& 1&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0&-1& 0& 0& 0& 1& 0& 0& 0\\ + 8&0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1&-1& 0&-1& 0& 0& 0& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ + 9&0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0\\ +10&0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1&-1& 0&-1& 0& 0& 0& 1& 0& 0& 0\\ +11&0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1&-1& 0&-1& 0& 1& 1& 0&-1\\ +12&0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1&-1& 0& 0& 1& 0&-1\\ +13&0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1&-1&-1& 0& 1\\ +14&0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1&-1\\ +15&0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ +\hline +\end{tabular}, +\end{center} +daraus kann man die Zyklen ablesen. +{ +\begin{align*} +z_1 +&= +\tiny +\begin{pmatrix*}[r] +\phantom{-} + 1\\ + 0\\ + 0\\ + 0\\ + 1\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0 +\end{pmatrix*}, +&z_2 +&= +\tiny +\begin{pmatrix*}[r] +\phantom{-} + 0\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 1\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0 +\end{pmatrix*}, +&z_3 +&= +\tiny +\begin{pmatrix*}[r] +\phantom{-} + 0\\ + 0\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 1\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0 +\end{pmatrix*}, +&z_4 % variable 12 = 1 +&= +\tiny +\begin{pmatrix*}[r] +\phantom{-} + 0\\ + 0\\ + 0\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 1\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0 +\end{pmatrix*}, +&z_5 % variable 13 = 1 +&= +\tiny +\begin{pmatrix*}[r] +-1\\ + 0\\ + 0\\ + 0\\ +-1\\ + 0\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0 +\end{pmatrix*}, +&z_6 % variable 14 = 1 +&= +\tiny +\begin{pmatrix*}[r] + 0\\ + 0\\ +-1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ +-1\\ + 0\\ + 1\\ + 0\\ + 0\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0 +\end{pmatrix*}, +&z_7 % variable 16 = 1 +&= +\tiny +\begin{pmatrix*}[r] + 1\\ + 0\\ + 0\\ + 0\\ + 1\\ + 0\\ +-1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 1\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0 +\end{pmatrix*},\\ +z_8 % variable 18 = 1 +&= +\tiny +\begin{pmatrix*}[r] + 0\\ + 0\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 1\\ + 0\\ +-1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 1\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0 +\end{pmatrix*}, +&z_9 % variable 20 = 1 +&= +\tiny +\begin{pmatrix*}[r] +-1\\ +-1\\ + 0\\ + 0\\ + 1\\ + 0\\ + 0\\ + 0\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ +-1\\ + 0\\ + 1\\ + 0\\ + 1\\ + 1\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0 +\end{pmatrix*}, +&z_{10} % variable 22 = 1 +&= +\tiny +\begin{pmatrix*}[r] +\phantom{-} + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ %5 + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ %10 + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ %15 + 0\\ + 0\\ + 0\\ + 1\\ + 0\\ %20 + 1\\ + 1\\ + 0\\ + 0\\ + 0\\ %25 + 0\\ + 0 +\end{pmatrix*}, +&z_{11} % variable 24 = 1 +&= +\tiny +\begin{pmatrix*}[r] + 1\\ + 1\\ + 0\\ + 0\\ + 1\\ %5 + 0\\ + 0\\ + 0\\ +-1\\ + 0\\ %10 + 0\\ + 0\\ + 0\\ + 0\\ + 1\\ %15 + 0\\ +-1\\ + 0\\ +-1\\ + 0\\ %20 + 0\\ + 0\\ + 1\\ + 1\\ + 0\\ %25 + 0\\ + 0 +\end{pmatrix*}, +&z_{12} % variable 25 = 1 +&= +\tiny +\begin{pmatrix*}[r] + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ %10 + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ %15 + 0\\ + 0\\ + 0\\ +-1\\ + 0\\ %20 +-1\\ + 0\\ + 1\\ + 0\\ + 1\\ %25 + 0\\ + 0 +\end{pmatrix*}, +&z_{13} % variable 27 = 1 +&= +\tiny +\begin{pmatrix*}[r] + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 0\\ + 1\\ + 0\\ %20 + 1\\ + 0\\ +-1\\ + 0\\ + 0\\ %25 + 1\\ + 1 +\end{pmatrix*} +\end{align*} +} +\begin{figure} +\centering +\includegraphics{chapters/95-homologie/images/homocycles.pdf} +\caption{Zyklen des Randoperators $\partial_1$ im Beispiel von +Seite~\pageref{buch:homologie:beispiel:gausshomo}. +\label{buch:homologie:fig:homocycles}} +\end{figure} +Die Zyklen sind in Abbildung~\ref{buch:homologie:fig:homocycles} {\color{red}rot} dargestellt. +\end{beispiel} + +Da $B_k(C)\subset Z_k(C)$ gilt, lässt sich für jedes $c_{k+1}\in C_{k+1}$ +der Rand $\partial_{k+1}c_{k+1}$ als Linearkombination der im +vorangegangenen Schritt gefundenen Basiszyklen finden. +Wir können also aus der Standardbasis $e^{(k+1)}_i\in C_{k+1}$ eine Menge +von Vektoren $\partial_{k+1}e^{(k+1)}_i$ gewinnen, die mit Sicherheit +ganz $B_k(C)$ aufspannen. +Es ist aber davon auszugehen, dass diese Vektoren nicht linear unabhängig +sind. +Es ist also nötig, eine Teilmenge +\[ +\mathcal{B}_k += +\{ +\partial_{k+1}e^{(k+1)}_{i_1}, +\partial_{k+1}e^{(k+1)}_{i_2}, +\dots, +\partial_{k+1}e^{(k+1)}_{i_m} +\} +\] +von Vektoren auszuwählen, die linear +unabhängig sind. +Diese bilden eine Basis von $B_k(C)$. + +\begin{figure} +\centering +\includegraphics{chapters/95-homologie/images/homoboundaries.pdf} +\caption{Die Ränder $\partial_2e_i^{(2)}$ für das Beispiel von +Seite~\pageref{buch:homologie:beispiel:gausshomo}. +Die grauen Dreiecke bilden die Standardbasis $e_i^{(2)}$ von $C_2$, +die blauen Dreiecke sind die Ränder $\partial_2e_i^{(2)}$ dieser +Dreiecke. +\label{buch:homologie:fig:homoboundaries}} +\end{figure} + +Aus den Abbildungen~\ref{buch:homologie:fig:homocycles} und +\ref{buch:homologie:fig:homoboundaries} kann man auch ablesen, +wie die Ränder $\partial_2e_i^{(2)}$ aus den Zyklen von $\mathcal{Z}_1$ +linear kombiniert werden können. +Man erhält so die Beziehungen. +\begin{equation} +\setcounter{MaxMatrixCols}{29} +\setlength\arraycolsep{1pt} +\begin{array}{lcrcrcrcrcrcrcrcrcrcrcrcrcr} +\partial_2e_1^{(2)} &=&z_1& & & & & & & & & & & & & & & & & & & & & & & & \\ +\partial_2e_2^{(2)} &=& & &z_2& & & & & & & & & & & & & & & & & & & & & & \\ +\partial_2e_3^{(2)} &=& & & & &z_3& & & & & & & & & & & & & & & & & & & & \\ +\partial_2e_4^{(2)} &=& & & & & & &z_4& & & & & & & & & & & & & & & & & & \\ +\partial_2e_5^{(2)} &=& & & & & & & &-&z_5& & &+&z_7& & & & & & & & & & & & \\ +\partial_2e_6^{(2)} &=& & & & & & & & & &-&z_6& & &+&z_8& & & & & & & & & & \\ +\partial_2e_7^{(2)} &=& & & & & & & & & & & & & & & & & & &z_{10}& & & & & & \\ +\partial_2e_8^{(2)} &=& & & & & & & & & & & & & & & & & & & & &z_{11}& & & & \\ +\partial_2e_9^{(2)} &=& & & & & & & & & & & & & & & & & & & & & &-&z_{12}&+&z_{13} +\end{array} +\end{equation} +Dies reicht jedoch nicht, um herauszufinden, welche der blauen Dreiecke +linear unabhängig sind. +Im vorliegenden Fall ist dies einfach: jedes blaue Dreieck besteht aus +Kanten, die in keinem anderen blauen Dreieck vorkommen, daher müssen +sie alle linear unabhängig sein. + +\begin{figure} +\centering +\includegraphics{chapters/95-homologie/images/gausshomobasis.pdf} +\caption{Bestimmung einer Basis für die Homologiegruppe $H_k(C)$ mit +Hilfe der Vorwärtsreduktion des Gaussalgorithmus. +Die schwarzen Nullzeilen zeigen an, welche Zeilenvektoren zusammen mit +den darüberliegenden Vektoren nicht linear unabhängig sind und damit nicht +in Frage kommen für die besuchte Basis. +Übrig bleiben die {\color{red}rot} und {\color{darkgreen}grün} hervorgehobenen +Vektoren. +\label{buch:homologie:fig:gausshomobasis}} +\end{figure} + +Diese Auswahl lässt sich sehr leicht mit Hilfe der folgenden +Variante des Gauss-Algorithmus realisieren. +Dazu werden die $n_{k+1}$ Zeilen Gauss-Tableau zunächst mit den Vektoren +$\partial_{k+1}{e_i^{(k+1)}}^t$ gefüllt. +Führt man in diesem Tableau die Vorwärtsreduktion durch, wobei man +entstehende Nullzeilen einfach überspringt, bleiben nur noch Zeilen +übrig, die linear unabhängig sind. +Diese Zeilen entsprechen den linear unabhängigen Vektoren von $\mathcal{B}_k$, +die Zeilennummern sind $i_1,i_2,\dots,i_m$. +Dieses vorgehen ist schematisch im oberen Teil der +Abbildung~\ref{buch:homologie:fig:gausshomobasis} dargestellt. + +Um eine Basis von $H_k(C)$ zu konstruieren, müssen wir jetzt eine +Basis von Zyklen finden, die sich nicht nur um einen Rand unterscheiden, +die also zu verschiedenen Homologie-Klassen in $H_k(C)$ gehören. +Gesucht sind jetzt also Vektoren $\mathcal{Z}'_k$ derart, dass +die Vektoren von $\mathcal{Z}'_k\cup\mathcal{B}_k$ immer noch $Z_k(C)$ +aufspannen, aber zusätzlich linear unabhängig sind. + +Dazu kann man wie folgt vorgehen. +\begin{enumerate} +\item +Man beginnt mit $\mathcal{D}_0=\emptyset$ und setzt $j=0$. +\item +Dann testet man der Reihe nach alle noch nicht getesteten Vektoren +von $z_i^{(k)}\in\mathcal{Z}_k$ daraufhin, ob sie von den Vektoren +$\mathcal{B}_k\cup \mathcal{D}_j$ linear unabhängig sind. +Wenn ja, bildet man $\mathcal{D}_{j+1} = \mathcal{D}\cup\{z^{(k)}_i\}$ und +setzt $j=1$. +Andernfalls ignoriert man $z^{(k)}_i$. +\item +Schritt 2 wird wiederholt, bis man alle Vektoren von $\mathcal{Z}_k$ +getestet hat. +Die gesuchte Basis setzt sich zusammen aus $\mathcal{B}_k$ und +$\mathcal{D}_l$, +also +$ +\mathcal{Z}_k' += +\mathcal{B}_k +\cup +\mathcal{D}_l. +$ +\end{enumerate} + +Dieser Algorithmus kann ebenfalls mit der oben angesprochenen Variante +des Gauss-Algorithmus durchgeführt werden. +Dazu werden die Zeilen $n_k+1$ bis $n_k+1+|\mathcal{Z}_k|$ mit den +Vektoren $z_i^t$. +Dann führt man die Vorwärtsreduktion im ganzen Tableau durch, wobei +man wieder die Nullzeilen stehen lässt. +Nullzeilen zeigen wieder Vektoren an, die sich linear durch die darüber +liegenden Vektoren ausdrücken lassen. +Die auszuwählenden Vektoren sind daher genau diejenigen, die für +$\mathcal{Z}_k'$ ausgewählt werden müssen. + +Um den Algorithmus durchzuführen, bilden wir daher das Gauss-Tableau +in Abbildung~\ref{buch:homologie:beispiel:gausstableau}, +bestehend aus den Vektoren $\partial_2e_i^{(2)}$ in den ersten 9 +Zeilen und den Zyklen $z_1,\dots,z_{13}$ in den folgenden 13 Zeilen. +Das reduzierte Tableau nach der Vorwärtsreduktion ist in +Abbildung~\ref{buch:homologie:beispiel:gausstableaureduziert} +dargestellt, amn erkennt, dass die Zyklen $z_1$ bis $z_4$, $z_7$ und $z_8$, +$z_9$ und $z_{10}$ sowie $z_{13}$ weggelassen werden müssen. +Es bleiben die folgenden Zyklen: +\begin{center} +\begin{tabular}{>{$}l<{$}l} +\text{Zyklus}&Eigenschaft\\ +\hline +z_5 &Zyklus umschliesst das kleine weisse Dreieck links unten\\ +z_6 &Zyklus umschliesst das kleine weisse Dreieck rechts unten\\ +z_9 &Zyklus umschliesst das grosse weisse Dreieck\\ +z_{12}&Zyklus umschliesst das kleine weisse Dreicke oben\\ +\hline +\end{tabular} +\end{center} +Die Zyklen, die nach der Reduktion übrig bleiben, sind in +Abbildung~\ref{buch:homologie:beispiel:homoclasses} zusammengestellt. +Jede solche Klasse entspricht genau einem der ``Löcher'', der weissen +Dreiecke. +Die Homologie kann man also als eine exakte Version der Idee eines +Vektorraums erzeugt von den ``Löchern'' eines Polygons verstehen. + +\begin{figure} +\centering +\setlength\tabcolsep{1pt} +\begin{tabular}{|>{$}c<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|} +\hline +&\scriptstyle 1&\scriptstyle 2&\scriptstyle 3&\scriptstyle 4 &\scriptstyle 5 +&\scriptstyle 6 &\scriptstyle 7 &\scriptstyle 8 &\scriptstyle 9 &\scriptstyle 10 +&\scriptstyle 11 &\scriptstyle 12 &\scriptstyle 13 &\scriptstyle 14 &\scriptstyle 15 +&\scriptstyle 16 &\scriptstyle 17 &\scriptstyle 18 &\scriptstyle 19 &\scriptstyle 20 +&\scriptstyle 21 &\scriptstyle 22 &\scriptstyle 23 &\scriptstyle 24 &\scriptstyle 25 +&\scriptstyle 26 &\scriptstyle 27 +\\ +% 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 +\hline +\scriptstyle\partial_2e_1^{(2)}& 1& & & & 1&\phantom{-}1& & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle\partial_2e_2^{(2)}& & 1& & & & & 1&\phantom{-}1& & & & & & & & & & & & & & & & & & & \\ +\scriptstyle\partial_2e_3^{(2)}& & & 1& & & & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & & & \\ +\scriptstyle\partial_2e_4^{(2)}& & & &\phantom{-}1& & & & & & & 1&\phantom{-}1& & & & & & & & & & & & & & & \\ +\scriptstyle\partial_2e_5^{(2)}& & & & & & & & & & & & & 1& & 1&\phantom{-}1& & & & & & & & & & & \\ +\scriptstyle\partial_2e_6^{(2)}& & & & & & & & & & & & & &\phantom{-}1& & & 1&\phantom{-}1& & & & & & & & & \\ +\scriptstyle\partial_2e_7^{(2)}& & & & & & & & & & & & & & & & & & & 1& &\phantom{-}1& 1& & & & & \\ +\scriptstyle\partial_2e_8^{(2)}& & & & & & & & & & & & & & & & & & & &\phantom{-}1& & & 1&\phantom{-}1& & & \\ +\scriptstyle\partial_2e_9^{(2)}& & & & & & & & & & & & & & & & & & & & & & & & &\phantom{-}1&\phantom{-}1&\phantom{-}1\\ +\hline +% 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 +\scriptstyle z_{ 1}& 1& & & & 1& 1& & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 2}& & 1& & & & & 1& 1& & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 3}& & & 1& & & & & & 1& 1& & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 4}& & & & 1& & & & & & & 1& 1& & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 5}&-1& & & &-1& & 1& & & & & & 1& & & & & & & & & & & & & & \\ +\scriptstyle z_{ 6}& & &-1& & & & & &-1& & 1& & & 1& & & & & & & & & & & & & \\ +\scriptstyle z_{ 7}& 1& & & & 1& &-1& & & & & & & & 1& 1& & & & & & & & & & & \\ +\scriptstyle z_{ 8}& & & 1& & & & & & 1& &-1& & & & & & 1& 1& & & & & & & & & \\ +\scriptstyle z_{ 9}&-1&-1& & & 1& & & & 1& & & & & &-1& & 1& 1& 1& & & & & & & & \\ +\scriptstyle z_{10}& & & & & & & & & & & & & & & & & & 1& & 1& 1& & & & & & \\ +\scriptstyle z_{11}& 1& 1& & & 1& & & &-1& & & & & & 1& &-1& &-1& & & & 1& 1& & & \\ +\scriptstyle z_{12}& & & & & & & & & & & & & & & & & & &-1& &-1& & 1& & 1& & \\ +\scriptstyle z_{13}& & & & & & & & & & & & & & & & & & & 1& & 1& &-1& & & 1& 1\\ +\hline +\end{tabular} +\caption{Gauss-Tableau für die Bestimmung einer Basis von +$H_1$ für das Beispiel. +Die ersten neuen Zeilen bestehen aus den Bildern der +Basisvektoren von $C_2$. +Im vorliegenden Fall kann man sofort sehen, dass alle diese +Zeilen linear unabhängig sind. +Die folgenden Zeilen sind die Zyklen in $\mathbb{Z}_2$, sie +sind ebenfalls linear unabhängig. +Mit Hilfe der Vorwärtsreduktion müssen jetzt diejenigen +Zeilen elminiert werden, die bereits aus anderen Zyklen +mit Hilfe von Rändern der Zeilen 1--9 kombiniert werden können. +\label{buch:homologie:beispiel:gausstableau}} +\end{figure} + +\begin{figure} +\centering +\setlength\tabcolsep{1pt} +\begin{tabular}{|>{$}c<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|} +\hline +&\scriptstyle 1&\scriptstyle 2&\scriptstyle 3&\scriptstyle 4 &\scriptstyle 5 +&\scriptstyle 6 &\scriptstyle 7 &\scriptstyle 8 &\scriptstyle 9 &\scriptstyle 10 +&\scriptstyle 11 &\scriptstyle 12 &\scriptstyle 13 &\scriptstyle 14 &\scriptstyle 15 +&\scriptstyle 16 &\scriptstyle 17 &\scriptstyle 18 &\scriptstyle 19 &\scriptstyle 20 +&\scriptstyle 21 &\scriptstyle 22 &\scriptstyle 23 &\scriptstyle 24 &\scriptstyle 25 +&\scriptstyle 26 &\scriptstyle 27 +\\ +% 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 +\hline +\scriptstyle\partial_2e_1^{(2)}&\phantom{-}1& & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle\partial_2e_2^{(2)}& &\phantom{-}1& & & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & & & & & \\ +\scriptstyle\partial_2e_3^{(2)}& & &\phantom{-}1& & & & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & & & \\ +\scriptstyle\partial_2e_4^{(2)}& & & &\phantom{-}1& & & & & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & \\ +\scriptstyle\partial_2e_5^{(2)}& & & & & & & & & & & & & 1& & 1&\phantom{-}1& & & & & & & & & & & \\ +\scriptstyle\partial_2e_6^{(2)}& & & & & & & & & & & & & &\phantom{-}1& & & 1&\phantom{-}1& & & & & & & & & \\ +\scriptstyle\partial_2e_7^{(2)}& & & & & & & & & & & & & & & & & & & 1& &\phantom{-}1& 1& & & & & \\ +\scriptstyle\partial_2e_8^{(2)}& & & & & & & & & & & & & & & & & & & &\phantom{-}1& & & 1&\phantom{-}1& & & \\ +\scriptstyle\partial_2e_9^{(2)}& & & & & & & & & & & & & & & & & & & & & & & & &\phantom{-}1&\phantom{-}1&\phantom{-}1\\ +\hline +% 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 +\scriptstyle z_{ 1}& & & & & & & & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 2}& & & & & & & & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 3}& & & & & & & & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 4}& & & & & & & & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 5}& & & & & & 1& 1& & & & & & & &-1&-1& & & & & & & & & & & \\ +\scriptstyle z_{ 6}& & & & & & & & & & 1& 1& & & & & &-1&-1& & & & & & & & & \\ +\scriptstyle z_{ 7}& & & & & & & & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 8}& & & & & & & & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{ 9}& & & & & & & & 1& 1& & & & & & & 1& 1& & & &-1&-1&-1&-1& & & \\ +\scriptstyle z_{10}& & & & & & & & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{11}& & & & & & & & & & & & & & & & & & & & & & & & & & & \\ +\scriptstyle z_{12}& & & & & & & & & & & & & & & & & & & & & & 1& 1& & &-1&-1\\ +\scriptstyle z_{13}& & & & & & & & & & & & & & & & & & & & & & & & & & & \\ +\hline +\end{tabular} +\caption{Nach Durchführung der Vorwärtsreduktion kann man die Zyklen +ablesen, die nicht für eine Basis von $H_1$ gebraucht werden. +\label{buch:homologie:beispiel:gausstableaureduziert}} +\end{figure} + +\begin{figure} +\centering +\includegraphics{chapters/95-homologie/images/homoclasses.pdf} +\caption{Repräsentanten für die Reduzierten Klassen aus dem +Tableau von +Abbildung~\ref{buch:homologie:beispiel:gausstableaureduziert}, +sie bilden eine Basis der Homologie-Gruppe $H_1$. +Jeder dieser Repräsentanten umschliesst genau ein ``Loch'', +also genau ein weisses Dreieck. +\label{buch:homologie:beispiel:homoclasses}} +\end{figure} + +\subsubsection{Basis von $H_k(C)$} +Die im vorangegangenen Abschnitt konstruierte Basis kann jetzt auch +dazu verwendet werden, eine Basis von $H_k(C)$ zu finden. +Die Vektoren in $\mathcal{B}_k$ bilden eine Basis von $B_k(C)$ +und die Vektoren in $\mathcal{Z}_k'$ sind davon unabhängig. +Die Klassen der Vektoren von $\mathcal{Z}_k'$ in $H_k(C)$ sind +daher ebenfalls linear unabhängig und bilden damit eine Basis +von $H_k(C)$. +Die von obigem Algorithmus ausgewählten Zyklen bilden also automatisch +eine Basis von Zyklen, die nicht Rand irgend einer Kette in $C_{k+1}$ +sein können. + \subsection{Induzierte Abbildung \label{buch:subsection:induzierte-abbildung}} Früher haben wurde eine Abbildung $f_*$ zwischen Kettenkomplexen $C_*$ und @@ -324,6 +1136,7 @@ H_k(f) \colon H_k(C) \to H_k(D) \] zwischen den Homologiegruppen ergibt, wie wir nun zeigen wollen. +\subsubsection{Definition der induzierten Abbildung} Um eine Abbildung von $H_k(C)$ nach $H_k(D)$ zu definieren, müssen wir zu einem Element von $H_k(C)$ ein Bildelement konstruieren. Ein Element in $H_k(C)$ ist eine Menge von Zyklen in $Z^C_k$, die sich @@ -351,4 +1164,17 @@ Der letzte Term ist ein Rand in $D_k$, somit ändert sich $f_k(z)$ nur um diesen Rand, wenn man $z$ um einen Rand ändert. $f_k(z)$ und $f_k(z+b)$ führen auf die selbe Homologieklasse. +\subsubsection{Matrixdarstellung} + +\subsubsection{Spur} +Für eine Selbstabbildung von Komplexen $f_*\colon C_*\to C_*$ muss +\[ +\partial_{k}\circ f_{k} += +f_{k+1}\circ \partial_{k} +\] +man die einzelnen + + + diff --git a/buch/chapters/95-homologie/images/Makefile b/buch/chapters/95-homologie/images/Makefile index ac964ff..d14a3a2 100644 --- a/buch/chapters/95-homologie/images/Makefile +++ b/buch/chapters/95-homologie/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: dreieck.pdf polyeder.pdf +all: homocycles.pdf homoboundaries.pdf homoclasses.pdf gausshomoex.pdf gausshomobasis.pdf dreieck.pdf polyeder.pdf dreieck.pdf: dreieck.tex pdflatex dreieck.tex @@ -11,3 +11,18 @@ dreieck.pdf: dreieck.tex polyeder.pdf: polyeder.tex pdflatex polyeder.tex +gausshomobasis.pdf: gausshomobasis.tex + pdflatex gausshomobasis.tex + +gausshomoex.pdf: gausshomoex.tex + pdflatex gausshomoex.tex + +homocycles.pdf: homocycles.tex + pdflatex homocycles.tex + +homoboundaries.pdf: homoboundaries.tex + pdflatex homoboundaries.tex + +homoclasses.pdf: homoclasses.tex + pdflatex homoclasses.tex + diff --git a/buch/chapters/95-homologie/images/gausshomobasis.pdf b/buch/chapters/95-homologie/images/gausshomobasis.pdf Binary files differnew file mode 100644 index 0000000..07414bb --- /dev/null +++ b/buch/chapters/95-homologie/images/gausshomobasis.pdf diff --git a/buch/chapters/95-homologie/images/gausshomobasis.tex b/buch/chapters/95-homologie/images/gausshomobasis.tex new file mode 100644 index 0000000..ba21f54 --- /dev/null +++ b/buch/chapters/95-homologie/images/gausshomobasis.tex @@ -0,0 +1,109 @@ +% +% gaushomobasis.tex -- Bestimmung einer Basis der Homologiegruppen +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\definecolor{darkgreen}{rgb}{0,0.6,0} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\def\s{0.5} +\def\inset{0.05} +\def\w{8} + +\def\zeile#1#2{ + \fill[color=#2] ({0+\inset},{(12-#1)*\s+\inset}) + rectangle ({\w*\s-\inset},{(13-#1)*\s-\inset}); +} +\def\marke#1#2{ +\node at ({0.5*\w*\s},{12.5-#1)*\s}) {$#2\mathstrut$}; +} + +\def\gauss{ +\draw (0,0) rectangle ({\w*\s},{12*\s}); +\draw (0,{7*\s}) -- ({\w*\s},{7*\s}); +} + +\draw[->,color=red,line width=1pt] ({0.1*\s},{(12.5-1)*\s}) + to[out=180,in=90] (-3.6,-2); +\draw[->,color=red,line width=1pt] ({0.1*\s},{(12.5-2)*\s}) + to[out=180,in=90] (-2.2,-2); +\draw[->,color=red,line width=1pt] ({0.1*\s},{(12.5-4)*\s}) + to[out=180,in=90] (-0.7,-2); + +\draw[->,color=darkgreen,line width=1pt] ({0.1*\s},{(12.5-7)*\s}) + to[out=180,in=90] (0.9,-2); +\draw[->,color=darkgreen,line width=1pt] ({0.1*\s},{(12.5-8)*\s}) + to[out=180,in=90] (1.6,-2); +\draw[->,color=darkgreen,line width=1pt] ({(\w-0.1)*\s},{(12.5-12)*\s}) + to[out=0,in=90] (2.6,-2); + +\draw[->,line width=2pt] ({\w*\s+0.1},{6*\s}) -- (5.4,{6*\s}); +\node at ({0.5*(\w*\s+5.5)},{6*\s}) [above] {Gauss}; + +\begin{scope} +\zeile{1}{red!30} +\zeile{2}{red!30} +\zeile{4}{red!30} +\zeile{7}{darkgreen!30} +\zeile{8}{darkgreen!30} +%\zeile{10}{darkgreen!30} +\zeile{12}{darkgreen!30} +\marke{1}{\scriptstyle\partial_{k+1}e_1^{(k+1)}} +\marke{2}{\scriptstyle\partial_{k+1}e_2^{(k+1)}} +\marke{3}{\scriptstyle\partial_{k+1}e_3^{(k+1)}} +\marke{4}{\vdots} +\marke{5}{\scriptstyle\partial_{k+1}e_{n_{k+1}}^{(k+1)}} +\marke{6}{\scriptstyle z_1^{(k)}} +\marke{7}{\scriptstyle z_2^{(k)}} +\marke{8}{\scriptstyle z_3^{(k)}} +\marke{9}{\scriptstyle z_4^{(k)}} +\marke{10}{\vdots} +\marke{11}{\scriptstyle z_{l-1}^{(k)}} +\marke{12}{\scriptstyle z_{l}^{(k)}} +\gauss +\end{scope} + +\begin{scope}[xshift=5.5cm] +\zeile{1}{black!20} +\zeile{2}{black!20} +\zeile{3}{black} +\marke{3}{\color{white}0} +\zeile{4}{black!20} +\zeile{5}{black} +\marke{5}{\color{white}0} +\zeile{6}{black} +\marke{6}{\color{white}0} +\zeile{7}{black!20} +\zeile{8}{black!20} +\zeile{9}{black} +\marke{9}{\color{white}0} +\zeile{10}{black} +\marke{10}{\color{white}0} +\zeile{11}{black} +\marke{11}{\color{white}0} +\zeile{12}{black!20} +\gauss +\end{scope} + +\node at (-4.4,-2) [below right] {$\{ +{\color{red}\partial_{k+1}e_1^{(k+1)}}, +{\color{red}\partial_{k+1}e_2^{(k+1)}}, +{\color{red}\partial_{k+1}e_{i_3}^{(k+1)}},\dots, +{\color{darkgreen}z_2^{(k)}}, +{\color{darkgreen}z_3^{(k)}}, +\dots +{\color{darkgreen}z_l^{(k)}} +\} = {\color{red}\mathcal{B}_k} \cup {\color{darkgreen}\mathcal{Z}_k'}$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/95-homologie/images/gausshomoex.pdf b/buch/chapters/95-homologie/images/gausshomoex.pdf Binary files differnew file mode 100644 index 0000000..bc0b766 --- /dev/null +++ b/buch/chapters/95-homologie/images/gausshomoex.pdf diff --git a/buch/chapters/95-homologie/images/gausshomoex.tex b/buch/chapters/95-homologie/images/gausshomoex.tex new file mode 100644 index 0000000..df53f70 --- /dev/null +++ b/buch/chapters/95-homologie/images/gausshomoex.tex @@ -0,0 +1,120 @@ +% +% gausshomoex.tex -- Beispiel für die Bestimmung einer Basis von H_1 +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\def\s{2.0} + +\def\punkt#1#2{({((#1)+0.5*(#2))*\s},{(#2)*\s*sqrt(3)/2})} + +\def\knoten#1#2#3{ + \fill[color=white] \punkt{#1}{#2} circle[radius=0.3]; + \node at \punkt{#1}{#2} {$#3$\strut}; + \draw \punkt{#1}{#2} circle[radius=0.3]; +} +\def\dreieck#1#2#3{ + \fill[color=gray] \punkt{#1}{#2} -- \punkt{#1+1}{#2} + -- \punkt{#1}{(#2)+1} -- cycle; + \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut}; + \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm] + \punkt{#1}{#2} -- \punkt{#1+1}{#2}; + \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm] + \punkt{#1+1}{#2} -- \punkt{#1}{#2+1}; + \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm] + \punkt{#1}{#2+1} -- \punkt{#1}{#2}; +} + +\def\Dreieck#1#2#3{ + \fill[color=gray!50] \punkt{#1}{#2} -- \punkt{#1+1}{#2} + -- \punkt{#1+1}{(#2)-1} -- cycle; + \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut}; +} + +\def\kante#1#2#3{ + \fill[color=white,opacity=0.8] \punkt{#1}{#2} circle[radius=0.15]; + \node at \punkt{#1}{#2} {$\scriptstyle #3$}; +} + +\dreieck{0}{0}{1} +\dreieck{1}{0}{2} +\dreieck{2}{0}{3} +\dreieck{3}{0}{4} + +\dreieck{0}{1}{5} +\dreieck{2}{1}{6} + +\dreieck{0}{2}{7} +\dreieck{1}{2}{8} + +\dreieck{0}{3}{9} + + +\knoten{0}{0}{1} +\knoten{1}{0}{2} +\knoten{2}{0}{3} +\knoten{3}{0}{4} +\knoten{4}{0}{5} + +\knoten{0}{1}{6} +\knoten{1}{1}{7} +\knoten{2}{1}{8} +\knoten{3}{1}{9} + +\knoten{0}{2}{10} +\knoten{1}{2}{11} +\knoten{2}{2}{12} + +\knoten{0}{3}{13} +\knoten{1}{3}{14} + +\knoten{0}{4}{15} + +\kante{0.5}{0}{1} +\kante{1.5}{0}{2} +\kante{2.5}{0}{3} +\kante{3.5}{0}{4} + +\kante{0}{0.5}{5} +\kante{0.5}{0.5}{6} +\kante{1}{0.5}{7} +\kante{1.5}{0.5}{8} +\kante{2}{0.5}{9} +\kante{2.5}{0.5}{10} +\kante{3}{0.5}{11} +\kante{3.5}{0.5}{12} + +\kante{0.5}{1}{13} +\kante{2.5}{1}{14} + +\kante{0}{1.5}{15} +\kante{0.5}{1.5}{16} +\kante{2}{1.5}{17} +\kante{2.5}{1.5}{18} + +\kante{0.5}{2}{19} +\kante{1.5}{2}{20} + +\kante{0}{2.5}{21} +\kante{0.5}{2.5}{22} +\kante{1}{2.5}{23} +\kante{1.5}{2.5}{24} + +\kante{0.5}{3}{25} + +\kante{0}{3.5}{26} +\kante{0.5}{3.5}{27} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/95-homologie/images/homoboundaries.pdf b/buch/chapters/95-homologie/images/homoboundaries.pdf Binary files differnew file mode 100644 index 0000000..644f334 --- /dev/null +++ b/buch/chapters/95-homologie/images/homoboundaries.pdf diff --git a/buch/chapters/95-homologie/images/homoboundaries.tex b/buch/chapters/95-homologie/images/homoboundaries.tex new file mode 100644 index 0000000..ef8fd1a --- /dev/null +++ b/buch/chapters/95-homologie/images/homoboundaries.tex @@ -0,0 +1,114 @@ +% +% tikztemplate.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\def\s{0.4} + +\def\punkt#1#2{({((#1)+0.5*(#2))*\s},{(#2)*\s*sqrt(3)/2})} +\def\A{\punkt{0}{0}} +\def\B{\punkt{1}{0}} +\def\C{\punkt{2}{0}} +\def\D{\punkt{3}{0}} +\def\E{\punkt{4}{0}} +\def\F{\punkt{0}{1}} +\def\G{\punkt{1}{1}} +\def\H{\punkt{2}{1}} +\def\I{\punkt{3}{1}} +\def\J{\punkt{0}{2}} +\def\K{\punkt{1}{2}} +\def\L{\punkt{2}{2}} +\def\M{\punkt{0}{3}} +\def\N{\punkt{1}{3}} +\def\O{\punkt{0}{4}} + +\def\dreieck#1#2#3{ + \fill[color=gray] \punkt{#1}{#2} -- \punkt{#1+1}{#2} + -- \punkt{#1}{(#2)+1} -- cycle; +} + +\def\blau#1#2{ + \draw[color=blue] \punkt{#1}{#2} -- \punkt{#1+1}{#2} + -- \punkt{#1}{(#2)+1} -- cycle; +} + +\def\gebiet{ + \dreieck{0}{0}{1} + \dreieck{1}{0}{2} + \dreieck{2}{0}{3} + \dreieck{3}{0}{4} + \dreieck{0}{1}{5} + \dreieck{2}{1}{6} + \dreieck{0}{2}{7} + \dreieck{1}{2}{8} + \dreieck{0}{3}{9} +} + +\begin{scope} +\gebiet +\blau{0}{0} +\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_1^{(2)}$}; +\end{scope} + +\begin{scope}[xshift=3cm] +\gebiet +\blau{1}{0} +\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_2^{(2)}$}; +\end{scope} + +\begin{scope}[xshift=6cm] +\gebiet +\blau{2}{0} +\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_3^{(2)}$}; +\end{scope} + +\begin{scope}[xshift=9cm] +\gebiet +\blau{3}{0} +\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_4^{(2)}$}; +\end{scope} + +\begin{scope}[xshift=1.5cm,yshift=2.59cm] +\gebiet +\blau{0}{1} +\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_5^{(2)}$}; +\end{scope} + +\begin{scope}[xshift=7.5cm,yshift=2.59cm] +\gebiet +\blau{2}{1} +\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_6^{(2)}$}; +\end{scope} + +\begin{scope}[xshift=3cm,yshift=5.19cm] +\gebiet +\blau{0}{2} +\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_7^{(2)}$}; +\end{scope} + +\begin{scope}[xshift=6cm,yshift=5.19cm] +\gebiet +\blau{1}{2} +\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_8^{(2)}$}; +\end{scope} + +\begin{scope}[xshift=4.5cm,yshift=7.79cm] +\gebiet +\blau{0}{3} +\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_9^{(2)}$}; +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/95-homologie/images/homoclasses.pdf b/buch/chapters/95-homologie/images/homoclasses.pdf Binary files differnew file mode 100644 index 0000000..217ae75 --- /dev/null +++ b/buch/chapters/95-homologie/images/homoclasses.pdf diff --git a/buch/chapters/95-homologie/images/homoclasses.tex b/buch/chapters/95-homologie/images/homoclasses.tex new file mode 100644 index 0000000..e325d9b --- /dev/null +++ b/buch/chapters/95-homologie/images/homoclasses.tex @@ -0,0 +1,104 @@ +% +% tikztemplate.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\definecolor{darkgreen}{rgb}{0,0.6,0} +\def\s{0.4} + +\def\punkt#1#2{({((#1)+0.5*(#2))*\s},{(#2)*\s*sqrt(3)/2})} +\def\A{\punkt{0}{0}} +\def\B{\punkt{1}{0}} +\def\C{\punkt{2}{0}} +\def\D{\punkt{3}{0}} +\def\E{\punkt{4}{0}} +\def\F{\punkt{0}{1}} +\def\G{\punkt{1}{1}} +\def\H{\punkt{2}{1}} +\def\I{\punkt{3}{1}} +\def\J{\punkt{0}{2}} +\def\K{\punkt{1}{2}} +\def\L{\punkt{2}{2}} +\def\M{\punkt{0}{3}} +\def\N{\punkt{1}{3}} +\def\O{\punkt{0}{4}} + +%\def\knoten#1#2#3{ +% \fill[color=white] \punkt{#1}{#2} circle[radius=0.3]; +% \node at \punkt{#1}{#2} {$#3$\strut}; +% \draw \punkt{#1}{#2} circle[radius=0.3]; +%} +\def\dreieck#1#2#3{ + \fill[color=gray] \punkt{#1}{#2} -- \punkt{#1+1}{#2} + -- \punkt{#1}{(#2)+1} -- cycle; +% \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut}; +% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm] +% \punkt{#1}{#2} -- \punkt{#1+1}{#2}; +% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm] +% \punkt{#1+1}{#2} -- \punkt{#1}{#2+1}; +% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm] +% \punkt{#1}{#2+1} -- \punkt{#1}{#2}; +} + +%\def\Dreieck#1#2#3{ +% \fill[color=gray!50] \punkt{#1}{#2} -- \punkt{#1+1}{#2} +% -- \punkt{#1+1}{(#2)-1} -- cycle; +% \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut}; +%} + +%\def\kante#1#2#3{ +% \fill[color=white,opacity=0.8] \punkt{#1}{#2} circle[radius=0.15]; +% \node at \punkt{#1}{#2} {$\scriptstyle #3$}; +%} + +\def\gebiet{ + \dreieck{0}{0}{1} + \dreieck{1}{0}{2} + \dreieck{2}{0}{3} + \dreieck{3}{0}{4} + \dreieck{0}{1}{5} + \dreieck{2}{1}{6} + \dreieck{0}{2}{7} + \dreieck{1}{2}{8} + \dreieck{0}{3}{9} +} + +\begin{scope} +\gebiet +\draw[color=darkgreen] \B -- \G -- \J -- \F -- cycle; +\node[color=darkgreen] at ({2*\s},-0.5) {$z_5'$}; +\end{scope} + +\begin{scope}[xshift=2cm] +\gebiet +\draw[color=darkgreen] \D -- \I -- \L -- \H -- cycle; +\node[color=darkgreen] at ({2*\s},-0.5) {$z_6'$}; +\end{scope} + +\begin{scope}[xshift=4cm] +\gebiet +\draw[color=darkgreen] \C -- \L -- \N -- \K -- \M -- \J -- cycle; +\node[color=darkgreen] at ({2*\s},-0.5) {$z_9'$}; +\end{scope} + +\begin{scope}[xshift=6cm] +\gebiet +\draw[color=darkgreen] \K -- \N -- \O -- \M -- cycle; +\node[color=darkgreen] at ({2*\s},-0.5) {$z_{12}'$}; +\end{scope} + + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/95-homologie/images/homocycles.pdf b/buch/chapters/95-homologie/images/homocycles.pdf Binary files differnew file mode 100644 index 0000000..075bb65 --- /dev/null +++ b/buch/chapters/95-homologie/images/homocycles.pdf diff --git a/buch/chapters/95-homologie/images/homocycles.tex b/buch/chapters/95-homologie/images/homocycles.tex new file mode 100644 index 0000000..898cac6 --- /dev/null +++ b/buch/chapters/95-homologie/images/homocycles.tex @@ -0,0 +1,157 @@ +% +% tikztemplate.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\def\s{0.4} + +\def\punkt#1#2{({((#1)+0.5*(#2))*\s},{(#2)*\s*sqrt(3)/2})} +\def\A{\punkt{0}{0}} +\def\B{\punkt{1}{0}} +\def\C{\punkt{2}{0}} +\def\D{\punkt{3}{0}} +\def\E{\punkt{4}{0}} +\def\F{\punkt{0}{1}} +\def\G{\punkt{1}{1}} +\def\H{\punkt{2}{1}} +\def\I{\punkt{3}{1}} +\def\J{\punkt{0}{2}} +\def\K{\punkt{1}{2}} +\def\L{\punkt{2}{2}} +\def\M{\punkt{0}{3}} +\def\N{\punkt{1}{3}} +\def\O{\punkt{0}{4}} + +%\def\knoten#1#2#3{ +% \fill[color=white] \punkt{#1}{#2} circle[radius=0.3]; +% \node at \punkt{#1}{#2} {$#3$\strut}; +% \draw \punkt{#1}{#2} circle[radius=0.3]; +%} +\def\dreieck#1#2#3{ + \fill[color=gray] \punkt{#1}{#2} -- \punkt{#1+1}{#2} + -- \punkt{#1}{(#2)+1} -- cycle; +% \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut}; +% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm] +% \punkt{#1}{#2} -- \punkt{#1+1}{#2}; +% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm] +% \punkt{#1+1}{#2} -- \punkt{#1}{#2+1}; +% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm] +% \punkt{#1}{#2+1} -- \punkt{#1}{#2}; +} + +%\def\Dreieck#1#2#3{ +% \fill[color=gray!50] \punkt{#1}{#2} -- \punkt{#1+1}{#2} +% -- \punkt{#1+1}{(#2)-1} -- cycle; +% \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut}; +%} + +%\def\kante#1#2#3{ +% \fill[color=white,opacity=0.8] \punkt{#1}{#2} circle[radius=0.15]; +% \node at \punkt{#1}{#2} {$\scriptstyle #3$}; +%} + +\def\gebiet{ + \dreieck{0}{0}{1} + \dreieck{1}{0}{2} + \dreieck{2}{0}{3} + \dreieck{3}{0}{4} + \dreieck{0}{1}{5} + \dreieck{2}{1}{6} + \dreieck{0}{2}{7} + \dreieck{1}{2}{8} + \dreieck{0}{3}{9} +} + +\begin{scope} +\gebiet +\draw[color=red] \A -- \B -- \F -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_1$}; +\end{scope} + +\begin{scope}[xshift=2cm] +\gebiet +\draw[color=red] \B -- \C -- \G -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_2$}; +\end{scope} + +\begin{scope}[xshift=4cm] +\gebiet +\draw[color=red] \C -- \D -- \H -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_3$}; +\end{scope} + +\begin{scope}[xshift=6cm] +\gebiet +\draw[color=red] \D -- \E -- \I -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_4$}; +\end{scope} + +\begin{scope}[xshift=8cm] +\gebiet +\draw[color=red] \A -- \B -- \G -- \F -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_5$}; +\end{scope} + +\begin{scope}[xshift=10cm] +\gebiet +\draw[color=red] \C -- \D -- \I -- \H -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_6$}; +\end{scope} + +\begin{scope}[xshift=12cm] +\gebiet +\draw[color=red] \A -- \B -- \G -- \J -- \F -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_7$}; +\end{scope} + +\begin{scope}[xshift=0cm,yshift=-3cm] +\gebiet +\draw[color=red] \C -- \D -- \I -- \L -- \H -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_8$}; +\end{scope} + +\begin{scope}[xshift=2cm,yshift=-3cm] +\gebiet +\draw[color=red] \A -- \B -- \C -- \H -- \L -- \K -- \J -- \F -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_9$}; +\end{scope} + +\begin{scope}[xshift=4cm,yshift=-3cm] +\gebiet +\draw[color=red] \J -- \K -- \M -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_{10}$}; +\end{scope} + +\begin{scope}[xshift=6cm,yshift=-3cm] +\gebiet +\draw[color=red] \A -- \B -- \C -- \H -- \L -- \N -- \K -- \J -- \F -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_{11}$}; +\end{scope} + +\begin{scope}[xshift=8cm,yshift=-3cm] +\gebiet +\draw[color=red] \J -- \K -- \N -- \M -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_{12}$}; +\end{scope} + +\begin{scope}[xshift=10cm,yshift=-3cm] +\gebiet +\draw[color=red] \J -- \K -- \N -- \O -- \M -- cycle; +\node[color=red] at ({2*\s},-0.5) {$z_{13}$}; +\end{scope} + + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/95-homologie/komplex.tex b/buch/chapters/95-homologie/komplex.tex index 7ed5937..9787bb2 100644 --- a/buch/chapters/95-homologie/komplex.tex +++ b/buch/chapters/95-homologie/komplex.tex @@ -56,7 +56,7 @@ für jedes $k$ \circ f_{k} = -f_{k+1} +f_{k-1} \circ \partial^C_k \label{buch:komplex:abbildung} @@ -76,26 +76,26 @@ kommutatives Diagramm dargestellt werden. & C_2 \arrow[l,"\partial_2^C" above] \arrow[d, "f_2"] & \dots \arrow[l] - \arrow[l, "\partial_{k-1}^C" above] - & C_k - \arrow[l, "\partial_k^C" above] - \arrow[d, "f_k"] - & C_{k+1}\arrow[l, "\partial_{k+1}^C" above] - \arrow[d, "f_{k+1}"] + \arrow[l, "\partial_{3}^C" above] + & C_{k-1} + \arrow[l, "\partial_{k-1}^C" above] + \arrow[d, "f_{k-1}"] + & C_{k}\arrow[l, "\partial_{k}^C" above] + \arrow[d, "f_{k}"] & \dots - \arrow[l,"\partial_{k+2}^C"] + \arrow[l,"\partial_{k+1}^C" above] \\ 0 & D_0 \arrow[l, "\partial_0^D" above] & D_1 \arrow[l,"\partial_1^D" above] & D_2 \arrow[l,"\partial_2^D" above] & \dots \arrow[l] - \arrow[l, "\partial_{k-1}^D" above] - & D_k - \arrow[l, "\partial_k^D" above] - & D_{k+1}\arrow[l, "\partial_{k+1}^D" above] + \arrow[l, "\partial_{3}^D" above] + & D_{k-1} + \arrow[l, "\partial_{k-1}^D" above] + & D_{k}\arrow[l, "\partial_{k}^D" above] & \dots - \arrow[l,"\partial_{k+2}^D" above] + \arrow[l,"\partial_{k+1}^D" above] \end{tikzcd} \label{buch:komplex:abbcd} \end{equation} diff --git a/buch/chapters/95-homologie/simplex.tex b/buch/chapters/95-homologie/simplex.tex index 0cf4aa7..3bf1004 100644 --- a/buch/chapters/95-homologie/simplex.tex +++ b/buch/chapters/95-homologie/simplex.tex @@ -3,14 +3,14 @@ % % (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule % -\section{Simplices +\section{Simplizes \label{buch:section:simplexe}} -\rhead{Simplices} +\rhead{Simplizes} Die Idee, das Dreieck und seinen Rand zu unterscheiden verlangt, dass wir zunächst Dreiecke und deren höherdimensionale Verallgemeinerungen, die sogenannten Simplizes entwickeln müssen. -\subsection{Simplices und Rand +\subsection{Simplizes und Rand \label{buch:subsection:simplices}} \subsubsection{Rand eines Dreiecks} diff --git a/buch/papers/clifford/images/Makefile b/buch/papers/clifford/images/Makefile new file mode 100644 index 0000000..cc621fb --- /dev/null +++ b/buch/papers/clifford/images/Makefile @@ -0,0 +1,13 @@ +# +# Makefile +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +all: spiegelung.pdf + +spiegelung.pdf: spiegelung.tex punkte.tex + pdflatex spiegelung.tex + +punkte.tex: spiegelung.m + octave spiegelung.m + diff --git a/buch/papers/clifford/images/punkte.tex b/buch/papers/clifford/images/punkte.tex new file mode 100644 index 0000000..41d2247 --- /dev/null +++ b/buch/papers/clifford/images/punkte.tex @@ -0,0 +1,21 @@ +\coordinate (A) at (2.300,1.700); +\coordinate (B) at (4.300,2.500); +\coordinate (C) at (2.800,2.700); +\coordinate (S) at (3.133,2.300); +\coordinate (G1) at (0.489,0.873); +\coordinate (G1oben) at (4.886,8.725); +\coordinate (G1unten) at (-4.886,-8.725); +\coordinate (G2) at (0.336,-0.942); +\coordinate (G2oben) at (3.363,-9.417); +\coordinate (G2unten) at (-3.363,9.417); +\coordinate (A1) at (0.248,2.849); +\coordinate (B1) at (-0.115,4.973); +\coordinate (C1) at (0.839,3.798); +\coordinate (S1) at (0.324,3.873); +\coordinate (A2) at (-1.997,2.048); +\coordinate (B2) at (-3.061,3.921); +\coordinate (C2) at (-3.055,2.407); +\coordinate (S2) at (-2.704,2.792); +\def\winkela{60.7512} +\def\winkelb{48.9027} +\coordinate (G) at (0.489,0.873); diff --git a/buch/papers/clifford/images/spiegelung.m b/buch/papers/clifford/images/spiegelung.m new file mode 100644 index 0000000..a086cb5 --- /dev/null +++ b/buch/papers/clifford/images/spiegelung.m @@ -0,0 +1,66 @@ +# +# spiegelung.m +# +# +fn = fopen("punkte.tex", "w"); + + +a = [ 2.3; 1.7 ]; +b = [ 4.3; 2.5 ]; +c = [ 2.8; 2.7 ]; +s = (a + b + c)/3; + +fprintf(fn, "\\coordinate (A) at (%.3f,%.3f);\n", a(1, 1), a(2, 1)); +fprintf(fn, "\\coordinate (B) at (%.3f,%.3f);\n", b(1, 1), b(2, 1)); +fprintf(fn, "\\coordinate (C) at (%.3f,%.3f);\n", c(1, 1), c(2, 1)); +fprintf(fn, "\\coordinate (S) at (%.3f,%.3f);\n", s(1, 1), s(2, 1)); + +n1 = [ -2.5; 1.4 ]; +n1 = n1 / norm(n1); +S1 = eye(2) - 2 * (n1 * n1'); +g1 = [ n1(2,1); -n1(1,1) ]; + +fprintf(fn, "\\coordinate (G1) at (%.3f,%.3f);\n", g1(1,1), g1(2,1)); +fprintf(fn, "\\coordinate (G1oben) at (%.3f,%.3f);\n", 10*g1(1,1), 10*g1(2,1)); +fprintf(fn, "\\coordinate (G1unten) at (%.3f,%.3f);\n", -10*g1(1,1), -10*g1(2,1)); + +n2 = [ 1.4; 0.5 ]; +n2 = n2 / norm(n2); +S2 = eye(2) - 2 * (n2 * n2'); +g2 = [ n2(2,1); -n2(1,1) ]; + +fprintf(fn, "\\coordinate (G2) at (%.3f,%.3f);\n", g2(1,1), g2(2,1)); +fprintf(fn, "\\coordinate (G2oben) at (%.3f,%.3f);\n", 10*g2(1,1), 10*g2(2,1)); +fprintf(fn, "\\coordinate (G2unten) at (%.3f,%.3f);\n", -10*g2(1,1), -10*g2(2,1)); + +D = S2 * S1; + +a1 = S1 * a; +b1 = S1 * b; +c1 = S1 * c; +s1 = S1 * s; + +fprintf(fn, "\\coordinate (A1) at (%.3f,%.3f);\n", a1(1, 1), a1(2, 1)); +fprintf(fn, "\\coordinate (B1) at (%.3f,%.3f);\n", b1(1, 1), b1(2, 1)); +fprintf(fn, "\\coordinate (C1) at (%.3f,%.3f);\n", c1(1, 1), c1(2, 1)); +fprintf(fn, "\\coordinate (S1) at (%.3f,%.3f);\n", s1(1, 1), s1(2, 1)); + +a2 = D * a; +b2 = D * b; +c2 = D * c; +s2 = D * s; + +fprintf(fn, "\\coordinate (A2) at (%.3f,%.3f);\n", a2(1, 1), a2(2, 1)); +fprintf(fn, "\\coordinate (B2) at (%.3f,%.3f);\n", b2(1, 1), b2(2, 1)); +fprintf(fn, "\\coordinate (C2) at (%.3f,%.3f);\n", c2(1, 1), c2(2, 1)); +fprintf(fn, "\\coordinate (S2) at (%.3f,%.3f);\n", s2(1, 1), s2(2, 1)); + +winkel1 = atan2(g1(2,1), g1(1,1)) * (180 / pi); +winkel2 = acosd(g1' * g2); + +fprintf(fn, "\\def\\winkela{%.4f}\n", winkel1); +fprintf(fn, "\\def\\winkelb{%.4f}\n", 180 - winkel2); + +fprintf(fn, "\\coordinate (G) at (%.3f,%.3f);\n", g1(1,1), g1(2,1)); + +fclose(fn); diff --git a/buch/papers/clifford/images/spiegelung.pdf b/buch/papers/clifford/images/spiegelung.pdf Binary files differnew file mode 100644 index 0000000..a17d369 --- /dev/null +++ b/buch/papers/clifford/images/spiegelung.pdf diff --git a/buch/papers/clifford/images/spiegelung.tex b/buch/papers/clifford/images/spiegelung.tex new file mode 100644 index 0000000..0960456 --- /dev/null +++ b/buch/papers/clifford/images/spiegelung.tex @@ -0,0 +1,85 @@ +% +% spiegelung.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math,calc} +\begin{document} +\def\skala{1.1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\def\punkt#1{ +\fill #1 circle[radius=0.06]; +} + +\coordinate (M) at (0,0); + +\fill[color=blue] (M) circle[radius=0.06]; +\node[color=blue] at (M) [left] {$M$}; + +\input{punkte.tex} + +\fill[color=red!30] (A) -- (B) -- (C) -- cycle; +\draw[color=red] (A) -- (B) -- (C) -- cycle; +\node at (A) [below] {$A$}; +\node at (B) [above right] {$B$}; +\node at (C) [above] {$C$}; +\node at (S) {$\circlearrowleft$}; + +\fill[color=red!30] (A1) -- (B1) -- (C1) -- cycle; +\draw[color=red] (A1) -- (B1) -- (C1) -- cycle; +\node at (A1) [below] {$A'$}; +\node at (B1) [above] {$B'$}; +\node at (C1) [above right] {$C'$}; +\node at (S1) {$\circlearrowright$}; + +\fill[color=red!30] (A2) -- (B2) -- (C2) -- cycle; +\draw[color=red] (A2) -- (B2) -- (C2) -- cycle; +\node at (A2) [below] {$A''$}; +\node at (B2) [above] {$B''$}; +\node at (C2) [left] {$C''$}; +\node at (S2) {$\circlearrowleft$}; + +\draw[color=gray,dotted] (A) -- (A1); +\draw[color=gray,dotted] (B) -- (B1); +\draw[color=gray,dotted] (C) -- (C1); + +\draw[color=gray,dotted] (A1) -- (A2); +\draw[color=gray,dotted] (B1) -- (B2); +\draw[color=gray,dotted] (C1) -- (C2); + +\punkt{(A)} +\punkt{(B)} +\punkt{(C)} +\punkt{(A1)} +\punkt{(B1)} +\punkt{(C1)} +\punkt{(A2)} +\punkt{(B2)} +\punkt{(C2)} + +\fill[color=darkgreen!30] (M) -- (G1) arc ({\winkela}:{\winkela+\winkelb}:1) -- cycle; +\draw[color=darkgreen] (G1) arc ({\winkela}:{\winkela+\winkelb}:1); +\node[color=darkgreen] at ({\winkela+0.5*\winkelb}:0.7) {$\alpha$}; + +\node at ($6*(G1)$) [right] {$g\mathstrut$}; +\node at ($-5.6*(G2)$) [left] {$h\mathstrut$}; + +\clip (-3,-0.2) rectangle (4.5,5.5); + +\draw[line width=1pt] (G1oben) -- (G1unten); +\draw[line width=1pt] (G2oben) -- (G2unten); + +\fill[color=blue] (M) circle[radius=0.06]; + +\end{tikzpicture} +\end{document} + |