[NumCS] Time complexity; Set up next section

This commit is contained in:
2025-09-25 11:04:47 +02:00
parent 6321dce2e7
commit d57aac0aa6
4 changed files with 13 additions and 1 deletions

View File

@@ -0,0 +1,2 @@
\newsection
\subsection{Rechnen mit Matrizen}

View File

@@ -23,7 +23,7 @@ Zusätzlich kommt hinzu, dass durch Unterläufe (in diesem Kurs ist dies eine Za
\end{remark}
\setcounter{all}{18}
\fancyex{Ableitung mit imaginärem Schritt} Als Referenz in Graphen wird hier oftmals die Implementation des Differenzialquotienten verwendet.
\fancyex{Ableitung mit imaginärem Schritt} Als Referenz in Graphen wird hier oftmals die Implementation des Differenzialquotienten verwendet.
Der Trick hier ist, dass wir mit Komplexen Zahlen in der Taylor-Approximation einer glatten Funktion in $x_0$ einen rein imaginären Schritt durchführen können:
\begin{align*}

View File

@@ -0,0 +1,10 @@
\newsection
\subsection{Rechenaufwand}
In NumCS wird die Anzahl elementarer Operationen wie Addition, Multiplikation, etc benutzt, um den Rechenaufwand zu beschreiben.
Wie in Algorithmen und * ist auch hier wieder \tco{\ldots} der Worst Case.
Teilweise werden auch andere Funktionen wie $\sin, \cos, \sqrt{\ldots}, \ldots$ dazu gezählt.
Die Basic Linear Algebra Subprograms (= BLAS), also grundlegende Operationen der Linearen Algebra, wurden bereits stark optimiert und sollten wann immer möglich verwendet werden und man sollte auf keinen Fall diese selbst implementieren.
Dieser Kurs verwendet \texttt{numpy}, \texttt{scipy}, \texttt{sympy} (collection of implementations for symbolic computations) und \texttt{matplotlib}.
Dieses Ecosystem ist eine der Stärken von Python und ist interessanterweise zu einem Grossteil nicht in Python geschrieben, da dies sehr langsam wäre.