diff --git a/semester3/numcs/numcs-summary.pdf b/semester3/numcs/numcs-summary.pdf index 86d2f9e..01dccb1 100644 Binary files a/semester3/numcs/numcs-summary.pdf and b/semester3/numcs/numcs-summary.pdf differ diff --git a/semester3/numcs/numcs-summary.tex b/semester3/numcs/numcs-summary.tex index 2e25679..832b69d 100644 --- a/semester3/numcs/numcs-summary.tex +++ b/semester3/numcs/numcs-summary.tex @@ -35,6 +35,7 @@ \begin{center} \begin{Large} ``\textit{Denken vor Rechnen}'' + ``\textit{Wer in Python Type annotation benötigt, der soll kein Python verwenden}'' (2025-10-09T10:43) \end{Large} \hspace{3cm} - Vasile Gradinaru, 2025 @@ -73,6 +74,16 @@ The numbering should match the script's numbering exactly (apart from the cases Many of the figures in this summary were taken directly from the Script or Lecture notes created by Professor Vasile Gradinaru. +To add to the one quote regarding Python and type annotation: This is objectively wrong and a really hot take. +Yes, this applies for small projects, but libraries \textit{DO} need type annotation, as you can't possibly read the entire library's code to use it. +The reason this quote was even included here is that his coding style is really awful (yes, there were semicolons in his Python-code sometimes) +and he rambled about bad coding style for about 10 minutes in this lecture. + +Meanwhile his code has variable names that neither future him, nor anybody else can make much sense of intuitively. +You can get away without type annotation in Python, even in larger projects, but only if you give variables proper names! + +Moral of the story: Use descriptive variable names and do NOT use $t$, $tt$, $ttt$, \dots + % ──────────────────────────────────────────────────────────────────── % ╭────────────────────────────────────────────────╮ diff --git a/semester3/numcs/parts/01_interpolation/01_trigonometric/00_fourier.tex b/semester3/numcs/parts/01_interpolation/01_trigonometric/00_fourier.tex index 9e143db..bb6b42e 100644 --- a/semester3/numcs/parts/01_interpolation/01_trigonometric/00_fourier.tex +++ b/semester3/numcs/parts/01_interpolation/01_trigonometric/00_fourier.tex @@ -6,7 +6,19 @@ % % Lecture: Intuitiv wird Fourier-Trans. zur Kompression genutzt, z.b. jpg format. \subsection{Fourier-Reihen} -Eine Anwendung der Schnellen Fourier-Transformation (FFT) ist die Komprimierung eines Bildes und sie wird im JPEG-Format verwendet. +Eine Anwendung der (Schnellen) Fourier-Transformation (FFT) ist die Komprimierung eines Bildes und sie wird im JPEG-Format verwendet. + +\shade{purple}{Intuition:} Wir haben eine Datenmenge $D$, die die $y$-Werte einer Frequenzmessung an $N$ äquidistanten Punkten enthält. +Die Fourier-Transformation dieser Datenmenge ergibt eine neue Datenmenge, nennen wir sie $F$, die, wenn geplottet, einem Plot der Frequenzanalyse entsprechen. +Dies ist auch korrekt, denn die Fourier-Transformation macht (vereinfacht) genau das; +Sie macht einen Basiswechsel auf der Datenmenge $D$, so dass die Frequenz auf der $x$-Achse und die ``Häufigkeit'' deren auf der $y$-Achse aufgetragen werden, +oder formaler, so dass wir statt einer Funktion der Zeit eine Funktion der Frequenz haben. + +Das Inverse davon nimmt eine Funktion der Frequenz und transformiert diese in eine Funktion der Zeit + +\vspace{0.3cm} +\hrule +\vspace{0.2cm} \fancydef{Trigonometrisches Polynom von Grad $\leq m$} Die Funktion: \rmvspace @@ -117,7 +129,7 @@ Mit $c = \pi(a + b)$ und $d = \pi(b - a)$ \includegraphics[width=0.95\textwidth]{assets/01_interpolation/01_trigonometric/overarcing.png} \end{center} \caption{Überschwingungen der Fourier-Reihe der charakteristischen Funktion des Intervalls $[a, b] \subseteq ]0, 1[$. - (Abbildung aus dem Vorlesungsdokument von Prof. V. Gradinaru, Seite 69)} + (Abbildung aus dem Vorlesungsdokument von Prof. V. Gradinaru, Seite 69)} \label{fig:trigo-interp-overarcing} \end{figure}