diff options
-rw-r--r-- | vorlesungen/10_mseliealgebra/slides.tex | 5 | ||||
-rw-r--r-- | vorlesungen/slides/7/Makefile.inc | 3 | ||||
-rw-r--r-- | vorlesungen/slides/7/chapter.tex | 3 | ||||
-rw-r--r-- | vorlesungen/slides/7/images/Makefile | 12 | ||||
-rw-r--r-- | vorlesungen/slides/7/images/drehung.inc | 142 | ||||
-rw-r--r-- | vorlesungen/slides/7/images/interpolation.ini | 8 | ||||
-rw-r--r-- | vorlesungen/slides/7/images/interpolation.m | 54 | ||||
-rw-r--r-- | vorlesungen/slides/7/images/interpolation.pov | 10 | ||||
-rw-r--r-- | vorlesungen/slides/7/images/test.pov | 7 | ||||
-rw-r--r-- | vorlesungen/slides/7/interpolation.tex | 112 | ||||
-rw-r--r-- | vorlesungen/slides/7/logarithmus.tex | 82 | ||||
-rw-r--r-- | vorlesungen/slides/test.tex | 2 |
12 files changed, 436 insertions, 4 deletions
diff --git a/vorlesungen/10_mseliealgebra/slides.tex b/vorlesungen/10_mseliealgebra/slides.tex index e4493a3..936139a 100644 --- a/vorlesungen/10_mseliealgebra/slides.tex +++ b/vorlesungen/10_mseliealgebra/slides.tex @@ -19,6 +19,9 @@ \section{Exponentialabbildung} \folie{7/dg.tex} +\folie{7/logarithmus.tex} +% Interpolation +\folie{7/interpolation.tex} \section{Integration} \folie{7/haar.tex} @@ -28,7 +31,5 @@ \folie{7/integration.tex} % LOG Reihe -% Interpolation % Mittelung auf einer Lie-Gruppe -% Vektorprodukt als Lie-Gruppe diff --git a/vorlesungen/slides/7/Makefile.inc b/vorlesungen/slides/7/Makefile.inc index 52c37d8..ffd5091 100644 --- a/vorlesungen/slides/7/Makefile.inc +++ b/vorlesungen/slides/7/Makefile.inc @@ -21,6 +21,9 @@ chapter5 = \ ../slides/7/kommutator.tex \ ../slides/7/bch.tex \ ../slides/7/dg.tex \ + ../slides/7/interpolation.tex \ + ../slides/7/exponentialreihe.tex \ + ../slides/7/logarithmus.tex \ ../slides/7/zusammenhang.tex \ ../slides/7/quaternionen.tex \ ../slides/7/qdreh.tex \ diff --git a/vorlesungen/slides/7/chapter.tex b/vorlesungen/slides/7/chapter.tex index 172b78a..3736e0f 100644 --- a/vorlesungen/slides/7/chapter.tex +++ b/vorlesungen/slides/7/chapter.tex @@ -20,6 +20,9 @@ \folie{7/kommutator.tex} \folie{7/bch.tex} \folie{7/dg.tex} +\folie{7/interpolation.tex} +\folie{7/exponentialreihe.tex} +\folie{7/logarithmus.tex} \folie{7/zusammenhang.tex} \folie{7/quaternionen.tex} \folie{7/qdreh.tex} diff --git a/vorlesungen/slides/7/images/Makefile b/vorlesungen/slides/7/images/Makefile index cc67c8a..6f99bc3 100644 --- a/vorlesungen/slides/7/images/Makefile +++ b/vorlesungen/slides/7/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: rodriguez.jpg +all: rodriguez.jpg test.png rodriguez.png: rodriguez.pov povray +A0.1 -W1920 -H1080 -Orodriguez.png rodriguez.pov @@ -16,4 +16,14 @@ commutator: commutator.ini commutator.pov common.inc jpg: for f in c/c*.png; do convert $${f} c/`basename $${f} .png`.jpg; done +dreibein/timestamp: interpolation.m + octave interpolation.m + touch dreibein/timestamp +test.png: test.pov drehung.inc dreibein/d025.inc dreibein/timestamp + povray +A0.1 -W1080 -H1080 -Otest.png test.pov + +dreibein/d025.inc: dreibein/timestamp + +animation: + povray +A0.1 -W1080 -H1080 -Ointerpolation/i.png interpolation.ini diff --git a/vorlesungen/slides/7/images/drehung.inc b/vorlesungen/slides/7/images/drehung.inc new file mode 100644 index 0000000..c9b4bb7 --- /dev/null +++ b/vorlesungen/slides/7/images/drehung.inc @@ -0,0 +1,142 @@ +// +// common.inc +// +// (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#version 3.7; +#include "colors.inc" + +global_settings { + assumed_gamma 1 +} + +#declare imagescale = 0.23; +#declare O = <0, 0, 0>; +#declare at = 0.02; + +camera { + location <8.5, 2, 6.5> + look_at <0, 0, 0> + right x * imagescale + up y * imagescale +} + +//light_source { +// <-14, 20, -50> color White +// area_light <1,0,0> <0,0,1>, 10, 10 +// adaptive 1 +// jitter +//} + +light_source { + <41, 20, 10> color White + area_light <1,0,0> <0,0,1>, 10, 10 + adaptive 1 + jitter +} + +sky_sphere { + pigment { + color rgb<1,1,1> + } +} + +#macro arrow(from, to, arrowthickness, c) +#declare arrowdirection = vnormalize(to - from); +#declare arrowlength = vlength(to - from); +union { + sphere { + from, 1.0 * arrowthickness + } + cylinder { + from, + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + arrowthickness + } + cone { + from + (arrowlength - 5 * arrowthickness) * arrowdirection, + 2 * arrowthickness, + to, + 0 + } + pigment { + color c + } + finish { + specular 0.9 + metallic + } +} +#end +#declare r = 1.0; + +arrow(< -r-0.2, 0.0, 0 >, < r+0.2, 0.0, 0.0 >, at, Gray) +arrow(< 0.0, 0.0, -r-0.2>, < 0.0, 0.0, r+0.2 >, at, Gray) +arrow(< 0.0, -r-0.2, 0 >, < 0.0, r+0.2, 0.0 >, at, Gray) + +#declare farbeX = rgb<1.0,0.2,0.6>; +#declare farbeY = rgb<0.0,0.8,0.4>; +#declare farbeZ = rgb<0.4,0.6,1.0>; + +#declare farbex = rgb<1.0,0.0,0.0>; +#declare farbey = rgb<0.0,0.6,0.0>; +#declare farbez = rgb<0.0,0.0,1.0>; + +#macro quadrant(X, Y, Z) + intersection { + sphere { O, 0.5 } + plane { -X, 0 } + plane { -Y, 0 } + plane { -Z, 0 } + pigment { + color rgb<1.0,0.6,0.2> + } + finish { + specular 0.95 + metallic + } + } + arrow(O, X, 1.1*at, farbex) + arrow(O, Y, 1.1*at, farbey) + arrow(O, Z, 1.1*at, farbez) +#end + +#macro drehung(X, Y, Z) +// intersection { +// sphere { O, 0.5 } +// plane { -X, 0 } +// plane { -Y, 0 } +// plane { -Z, 0 } +// pigment { +// color Gray +// } +// finish { +// specular 0.95 +// metallic +// } +// } + arrow(O, 1.1*X, 0.9*at, farbeX) + arrow(O, 1.1*Y, 0.9*at, farbeY) + arrow(O, 1.1*Z, 0.9*at, farbeZ) +#end + +#macro achse(H) + cylinder { H, -H, at + pigment { + color rgb<0.6,0.4,0.2> + } + finish { + specular 0.95 + metallic + } + } + cylinder { 0.003 * H, -0.003 * H, 1 + pigment { + color rgbt<0.6,0.4,0.2,0.5> + } + finish { + specular 0.95 + metallic + } + } +#end diff --git a/vorlesungen/slides/7/images/interpolation.ini b/vorlesungen/slides/7/images/interpolation.ini new file mode 100644 index 0000000..f07c079 --- /dev/null +++ b/vorlesungen/slides/7/images/interpolation.ini @@ -0,0 +1,8 @@ +Input_File_Name=interpolation.pov +Initial_Frame=0 +Final_Frame=50 +Initial_Clock=0 +Final_Clock=50 +Cyclic_Animation=off +Pause_when_Done=off + diff --git a/vorlesungen/slides/7/images/interpolation.m b/vorlesungen/slides/7/images/interpolation.m new file mode 100644 index 0000000..31554e8 --- /dev/null +++ b/vorlesungen/slides/7/images/interpolation.m @@ -0,0 +1,54 @@ +# +# interpolation.m +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +global N; +N = 50; +global A; +global B; + +A = (pi / 2) * [ + 0, 0, 0; + 0, 0, -1; + 0, 1, 0 +]; +g0 = expm(A) + +B = (pi / 2) * [ + 0, 0, 1; + 0, 0, 0; + -1, 0, 0 +]; +g1 = expm(B) + +function retval = g(t) + global A; + global B; + retval = expm((1-t)*A+t*B); +endfunction + +function dreibein(fn, M, funktion) + fprintf(fn, "%s(<%.4f,%.4f,%.4f>, <%.4f,%.4f,%.4f>, <%.4f,%.4f,%.4f>)\n", + funktion, + M(1,1), M(3,1), M(2,1), + M(1,2), M(3,2), M(2,2), + M(1,3), M(3,3), M(2,3)); +endfunction + +G = g1 * inverse(g0); +[V, lambda] = eig(G); +H = real(V(:,3)); + +D = logm(g1*inverse(g0)); + +for i = (0:N) + filename = sprintf("dreibein/d%03d.inc", i); + fn = fopen(filename, "w"); + t = i/N; + dreibein(fn, g(t), "quadrant"); + dreibein(fn, expm(t*D)*g0, "drehung"); + fprintf(fn, "achse(<%.4f,%.4f,%.4f>)\n", H(1,1), H(3,1), H(2,1)); + fclose(fn); +endfor + diff --git a/vorlesungen/slides/7/images/interpolation.pov b/vorlesungen/slides/7/images/interpolation.pov new file mode 100644 index 0000000..71e0257 --- /dev/null +++ b/vorlesungen/slides/7/images/interpolation.pov @@ -0,0 +1,10 @@ +// +// commutator.pov +// +// (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#include "drehung.inc" + +#declare filename = concat("dreibein/d", str(clock, -3, 0), ".inc"); +#include filename + diff --git a/vorlesungen/slides/7/images/test.pov b/vorlesungen/slides/7/images/test.pov new file mode 100644 index 0000000..5707be1 --- /dev/null +++ b/vorlesungen/slides/7/images/test.pov @@ -0,0 +1,7 @@ +// +// test.pov +// +// (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +// +#include "drehung.inc" +#include "dreibein/d025.inc" diff --git a/vorlesungen/slides/7/interpolation.tex b/vorlesungen/slides/7/interpolation.tex new file mode 100644 index 0000000..249ee26 --- /dev/null +++ b/vorlesungen/slides/7/interpolation.tex @@ -0,0 +1,112 @@ +% +% interpolation.tex -- slide template +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\def\bild#1#2{\only<#1|handout:0>{\includegraphics[width=\textwidth]{../slides/7/images/interpolation/#2.png}}} +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Interpolation} +\vspace{-20pt} +\begin{columns}[t,onlytextwidth] +\begin{column}{0.48\textwidth} +\begin{block}{Aufgabe} +Finde einen Weg $g(t)\in \operatorname{SO}(3)$ zwischen +$g_0\in\operatorname{SO}(3)$ +und +$g_1\in\operatorname{SO}(3)$: +\[ +g_0=g(0) +\quad\wedge\quad +g_1=g(1) +\] +\end{block} +\vspace{-10pt} +\uncover<2->{% +\begin{block}{Lösung} +$g_i=\exp(A_i) \uncover<3->{\Rightarrow A_i^t=-A_i}$ +\begin{align*} +\uncover<4->{A(t) &= (1-t)A_0 + tA_1}\uncover<8->{ \in \operatorname{so}(3)} +\\ +\uncover<5->{A(t)^t +&=(1-t)A_0^t + tA_1^t} +\\ +&\uncover<6->{= +-(1-t)A_0 - t A_1} +\uncover<7->{= +-A(t)} +\\ +\uncover<9->{\Rightarrow +g(t) &= \exp A(t) \in \operatorname{SO}(3)} +\\ +&\uncover<10->{\ne +\exp (\log(g_1g_0^{-1})t) g_0} +\end{align*} +\end{block}} +\end{column} +\begin{column}{0.48\textwidth} +\uncover<11->{% +\begin{block}{Animation} +\centering +\ifthenelse{\boolean{presentation}}{ +\bild{12}{i00} +\bild{13}{i01} +\bild{14}{i02} +\bild{15}{i03} +\bild{16}{i04} +\bild{17}{i05} +\bild{18}{i06} +\bild{19}{i07} +\bild{20}{i08} +\bild{21}{i09} +\bild{22}{i10} +\bild{23}{i11} +\bild{24}{i12} +\bild{25}{i13} +\bild{26}{i14} +\bild{27}{i15} +\bild{28}{i16} +\bild{29}{i17} +\bild{30}{i18} +\bild{31}{i19} +\bild{32}{i20} +\bild{33}{i21} +\bild{34}{i22} +\bild{35}{i23} +\bild{36}{i24} +\bild{37}{i25} +\bild{38}{i26} +\bild{39}{i27} +\bild{40}{i28} +\bild{41}{i29} +\bild{42}{i30} +\bild{43}{i31} +\bild{44}{i32} +\bild{45}{i33} +\bild{46}{i34} +\bild{47}{i35} +\bild{48}{i36} +\bild{49}{i37} +\bild{50}{i38} +\bild{51}{i39} +\bild{52}{i40} +\bild{53}{i41} +\bild{54}{i42} +\bild{55}{i43} +\bild{56}{i44} +\bild{57}{i45} +\bild{58}{i46} +\bild{59}{i47} +\bild{60}{i48} +\bild{61}{i49} +\bild{62}{i50} +}{ +\includegraphics[width=\textwidth]{../slides/7/images/interpolation/i25.png} +} +\end{block}} +\end{column} +\end{columns} +\end{frame} +\egroup diff --git a/vorlesungen/slides/7/logarithmus.tex b/vorlesungen/slides/7/logarithmus.tex new file mode 100644 index 0000000..58065d7 --- /dev/null +++ b/vorlesungen/slides/7/logarithmus.tex @@ -0,0 +1,82 @@ +% +% logarithmus.tex -- slide template +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\begin{frame}[t] +\setlength{\abovedisplayskip}{5pt} +\setlength{\belowdisplayskip}{5pt} +\frametitle{Logarithmus} +\vspace{-20pt} +\begin{columns}[t,onlytextwidth] +\begin{column}{0.48\textwidth} +\begin{block}{Taylor-Reihe} +\begin{align*} +\frac{d}{dx}\log(1+x) +&= \frac{1}{1+x} +\\ +\uncover<2->{ +\Rightarrow\quad +\log (1+x) +&= +\int_0^x \frac{1}{1+t}\,dt} +\end{align*} +\begin{align*} +\uncover<3->{\frac{1}{1+t} +&= +1-t+t^2-t^3+\dots} +\\ +\uncover<4->{\log(1+x) +&=\int_0^x +1-t+t^2-t^3+\dots +\,dt} +\\ +&\only<5>{= +x-\frac{x^2}{2} + \frac{x^3}{3} - \frac{x^4}4 + \dots} +\uncover<6->{= +\sum_{k=1}^\infty (-1)^{k-1}\frac{x^k}{k}} +\\ +\uncover<7->{\log (I+A) +&= +\sum_{k=1}^\infty \frac{(-1)^{k-1}}{k}A^k} +\end{align*} +\end{block} +\end{column} +\begin{column}{0.48\textwidth} +\uncover<8->{% +\begin{block}{Konvergenzradius} +Polstelle bei $x=-1$ +\( +\varrho =1 +\) +\end{block}} +\vspace{-5pt} +\begin{block}{\uncover<9->{Alternative: Spektraltheorie}} +\uncover<9->{ +Logarithmus $\log z$ in $\{z\in\mathbb{C}\;|\; \neg(\Re z\le 0\wedge\Im z=0)\}$ +definiert:} +\vspace{-15pt} +\uncover<8->{ +\begin{center} +\begin{tikzpicture}[>=latex,thick] +\uncover<9->{ + \fill[color=red!20] (-2.1,-2.1) rectangle (2.5,2.1); +} +\draw[->] (-2.2,0) -- (2.9,0) coordinate[label={$\Re z$}]; +\draw[->] (0,-2.2) -- (0,2.4) coordinate[label={right:$\Im z$}]; +\fill[color=blue!40,opacity=0.5] (1,0) circle[radius=1]; +\draw[color=blue] (1,0) circle[radius=1]; +\uncover<9->{ + \draw[color=white,line width=5pt] (-2.2,0) -- (0.1,0); +} +\fill (1,0) circle[radius=0.08]; +\node at (2.3,1.9) {$\mathbb{C}$}; +\node at (1,0) [below] {$1$}; +\end{tikzpicture} +\end{center}} +\end{block} +\end{column} +\end{columns} +\end{frame} +\egroup diff --git a/vorlesungen/slides/test.tex b/vorlesungen/slides/test.tex index 35ebf03..7434b0b 100644 --- a/vorlesungen/slides/test.tex +++ b/vorlesungen/slides/test.tex @@ -3,5 +3,5 @@ % % (c) 2021 Prof Dr Andreas Müller, Hochschule Rapperswil % -\folie{7/integration.tex} +\folie{7/logarithmus.tex} |