From 925dde97714d176bda0792d03a75248f45eba55d Mon Sep 17 00:00:00 2001 From: Janis Hutz Date: Mon, 19 Jan 2026 21:01:29 +0100 Subject: [PATCH] [NumCS] Add notes on exam --- semester3/numcs/parts/06_python/03_sympy-ex.py | 7 ++++++- semester3/numcs/parts/07_exam/00_intro.tex | 13 +++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 semester3/numcs/parts/07_exam/00_intro.tex diff --git a/semester3/numcs/parts/06_python/03_sympy-ex.py b/semester3/numcs/parts/06_python/03_sympy-ex.py index d6c4e4e..1981cf2 100644 --- a/semester3/numcs/parts/06_python/03_sympy-ex.py +++ b/semester3/numcs/parts/06_python/03_sympy-ex.py @@ -1,6 +1,6 @@ import sympy as sp -a, b = (0, 1); +a, b = (0, 1) x, y = sp.symbols("x, y") # Create sympy symbols f = x**2 + 3 * x - 2 # Create your function # In the below, for 1D differentiation, we can omit the symbol and just use sp.diff(f) @@ -13,5 +13,10 @@ roots = sp.roots(f) # Computes the roots of function f analytically sp.hermite_poly(5) # Creates hermite poly of degree 5 sp.chebyshevt_poly(5) # Creates chebychev T (first kind) poly of degree 5 sp.chebyshevu_poly(5) # Creates chebychev U (second kind) poly of degree 5 +system = [f + y, x**3 + 2 * y, 3 * y - 2 * x] # A system of equations +sp.solve(system) # Solves a system of equations algebraically +sp.nsolve( + system, [x, y], (0, 1) +) # Input the system, the variables to solve in and interval # To print nicely rendered math expressions, you can use sp.init_printing() diff --git a/semester3/numcs/parts/07_exam/00_intro.tex b/semester3/numcs/parts/07_exam/00_intro.tex new file mode 100644 index 0000000..d2c895e --- /dev/null +++ b/semester3/numcs/parts/07_exam/00_intro.tex @@ -0,0 +1,13 @@ +A few example questions that might show up in the exam are: +\begin{itemize} + \item Reused homework tasks from the Moodle Quizzes and Code Expert (e.g. the GPS task) + \item Reused tasks from the mock exam + \item Doing quadrature on an $\arctan$ function, for which you have to use Gauss-Newton quadrature +\end{itemize} +Knowing \texttt{sympy} and having read through the docs of it (at least partially) can help tremendously. +Additionally, try to use the script with a horrible (i.e. slow and not context-aware (i.e. it start search from the start)) to get used to that. +You can get such a search function in a PDF reader by installing Firefox ESR 72 (on which to my knowledge, Safe Exam Browser is based). + +For the multiple-choice tasks, if applicable, use properties of the formulas +(e.g. for the Radau quadrature, use the fact that one of the edges of the interval has to be included and the weight computation is different for it) +or otherwise use the Jupyter notebook to run functions that are already implemented in the script, or better yet, \texttt{sympy}.