Scientific Computing with Python
MCNAcourses ▸ NUMA01/ ÄMAD01 – autumn 2017

Short Description

URL
http://ctr.maths.lu.se/na/courses/NUMA01
Credits:
7,5 points
Instructors:
Claus Führer
Computer lab instructors:
Sadia Asim, Kenneth Batstone, Siobhan Correnty, Peter Meisriemel, Fatemeh Mohammadi, Alexandros Sopasakis, Lea Versbach
Grading:
U, G
Examination:
Two hand-in assignments and graded final programming project with project presentation. Note: Students taking this course within the teacher's program (ÄMAD01) have one hand-in assignment and the graded final project with project presentation.
Prerequisites:
Elementary courses in mathematics

Contents/Aim

The course gives an introduction to programming in Python and has a strong orientation towards computational mathematics. Python is a modern scripting language with ties to Scientific Computing due to powerful scientific libraries like SciPy, NumPy and Matplotlib. The course covers elementary programming concepts (arithmetic expressions, for-loops, logical expressions, if-statements, functions and classes) that are closely connected to mathematical/technical problems and examples, as well as mathematical manipulations and problm solving (e.g.~setting up matrices, solving linear problems, solving differential equations, finding roots). Students enrolled in the Bachelor´s Programme in Mathematics, Physics, Theoretical Physics and Astronomy are taking this course together with the courses MATA21 Analysis in One Variable and MATA22 Linear Algebra 1 during their first semester in Mathematics. A final lecture will cover syntactical differences between Python/SciPy and MATLAB, to fascilitate the transition to MATLAB, if needed.

Course book

The main book of this course is the book Führer, Solem, Verdier: Scientific Computing with Python 3, Packtpub 2016 (paperback, epub, Kindle)

course book cover

You will also find additional material on our Python home page.

Goal

The goal of the course is to give students in an early stage of their education in mathematics and science competence to use state-of-the-art tools for scientific computations. The course is not a replacement for other courses in computer science.