Course Syllabus for

Computational Programming with Python
Beräkningsprogrammering med Python

NUMA01F, 7.5 credits

Valid from: Autumn 2018
Decided by: Professor Thomas Johansson
Date of establishment: 2018-11-15

General Information

Division: Mathematics
Course type: Course given jointly for second and third cycle
The course is also given at second-cycle level with course code: NUMA01
Teaching language: English

Aim

The aim of the the course is to give an introduction to computational programming in Python for postgraduate students without previous programming knowledge. Python is a modern scripting language with strong ties to Scientific Computing.

Goals

Knowledge and Understanding

For a passing grade the doctoral student must

Competences and Skills

For a passing grade the doctoral student must

Judgement and Approach

For a passing grade the doctoral student must be able to critically analyse the programs produced by fellow students and assess alternatives to his or her own programming solutions

Course Contents

Basic programming concepts, data structures, conditional statements, functions and classes. Problem-solving using a few basic numerical methods associated with mathematics and physics. The basic functions and data types of the Python programming language: arithmetic operations, arrays of vectors, matrices, graphics functions, lists, tuples, dictionaries, file management. Use of modules such as NumPy, SciPy and Matplotlib The representation of floating point numbers and their implications for arithmetic Syntax: [for], [if-else], [while], list comprehensions, generators Nested functions, self-defined functions and modules Classes and inheritance applied to mathematical objects Tests and profiling

Course Literature

Fuhrer, C., Solem, J. & Verdier, O.: Scientific Computing with Python 3 - Second Edition. 2016. ISBN 9781786463517.

Instruction Details

Types of instruction: Lectures, exercises, project

Examination Details

Examination format: Miscellaneous. Reports on programming exercises during the course, and a major programming project to be completed in groups.
Grading scale: Failed, pass
Examiner:

Admission Details

Selection criteria: Arrival time for application. At most five phd students.

Course Occasion Information

Contact and Other Information

Course coordinators:
Web page: http://www.ctr.maths.lu.se/course/NUMA01/


Complete view