From e7f5ef77daae32a75f6482b2c9f01176e5c8deb1 Mon Sep 17 00:00:00 2001 From: Janis Hutz Date: Wed, 12 Nov 2025 13:26:20 +0100 Subject: [PATCH] [NumCS] Almost finish 6.4 and start 6.5 --- semester3/numcs/numcs-summary.tex | 3 ++- .../numcs/parts/03_zeros/03_bisection-method.tex | 12 ++++++++++++ .../numcs/parts/03_zeros/03_interval-splitting.tex | 2 -- semester3/numcs/parts/03_zeros/04_newton-one-d.tex | 2 ++ 4 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 semester3/numcs/parts/03_zeros/03_bisection-method.tex delete mode 100644 semester3/numcs/parts/03_zeros/03_interval-splitting.tex create mode 100644 semester3/numcs/parts/03_zeros/04_newton-one-d.tex diff --git a/semester3/numcs/numcs-summary.tex b/semester3/numcs/numcs-summary.tex index 7d85841..2627fde 100644 --- a/semester3/numcs/numcs-summary.tex +++ b/semester3/numcs/numcs-summary.tex @@ -152,7 +152,8 @@ Moral of the story: Use descriptive variable names and do NOT use $t$, $tt$, $tt \input{parts/03_zeros/00_intro.tex} \input{parts/03_zeros/01_termination-criteria.tex} \input{parts/03_zeros/02_fix-point-iteration.tex} -\input{parts/03_zeros/03_interval-splitting.tex} +\input{parts/03_zeros/03_bisection-method.tex} +\input{parts/03_zeros/04_newton-one-d.tex} diff --git a/semester3/numcs/parts/03_zeros/03_bisection-method.tex b/semester3/numcs/parts/03_zeros/03_bisection-method.tex new file mode 100644 index 0000000..34cbaa8 --- /dev/null +++ b/semester3/numcs/parts/03_zeros/03_bisection-method.tex @@ -0,0 +1,12 @@ +\newsection +\subsection{Intervallhalbierungsverfahren} +Die Idee hier ist, das Intervall immer weiter zu halbieren und ein bekannterer Namen für dieses Verfahren ist \bi{Bisektionsverfahren}. + +\innumpy haben wir \texttt{scipy.optimize.bisect} und \texttt{scipy.optimize.fsolve}, wobei \texttt{fsolve} ein alter Algorithmus ist. + +Im Skript auf Seiten 206 - 207 findet sich eine manuelle implementation des Bisektionsverfahren. +Der Code ist jedoch (at the time of writing) nicht ausführbar aufgrund von \texttt{IndentationErrors} + +Das Bisektionsverfahren konvergiert linear und kann nur für Funktionen verwenden, bei welchen die Nullstellen auf beiden Seiten jeweils ungleiche Vorzeichen haben. + +% TODO: Need to add the formula from SPAM script diff --git a/semester3/numcs/parts/03_zeros/03_interval-splitting.tex b/semester3/numcs/parts/03_zeros/03_interval-splitting.tex deleted file mode 100644 index 551a905..0000000 --- a/semester3/numcs/parts/03_zeros/03_interval-splitting.tex +++ /dev/null @@ -1,2 +0,0 @@ -\newsection -\subsection{Intervallhalbierungsverfahren} diff --git a/semester3/numcs/parts/03_zeros/04_newton-one-d.tex b/semester3/numcs/parts/03_zeros/04_newton-one-d.tex new file mode 100644 index 0000000..7dd9839 --- /dev/null +++ b/semester3/numcs/parts/03_zeros/04_newton-one-d.tex @@ -0,0 +1,2 @@ +\newsectionNoPB +\subsection{Newtonverfahren in 1D}