Syllabus academic year 2011/2012
(Created 2011-09-01.)
ADVANCED COURSE IN NUMERICAL ALGORITHMS WITH PYTHON/SCIPYFMNN25
Credits: 7,5. Grading scale: UG. Cycle: A (Second Cycle). Main field: Technology. Language of instruction: The course will be given in English on demand. Optional for: D4, E4, E4pv, F4, F4bs, Pi4. Course coordinator: Claus Führer, claus@maths.lth.se, Numerical Analysis. Recommended prerequisits: Basic course in numerical analysis. Programming experience in some of the languages Java, C,C++,Fortran, Python and Matlab. Assessment: Weekly programming assignments. A larger programming project to be carried out in group, with a written report to be presented orally to the rest of the course. Opposition on the report of another group. Compulsory attendance at all oral reports. Home page: http://www.maths.lth.se/na/courses/.

Aim
The course is intended as an algorithm oriented complement to most of the basic and specialized courses in numerical analysis, which are focused on analysis of methods. The course emphasizes the coupling between complex numerical algorithms and modern programming languages.

Knowledge and understanding
For a passing grade the student must

- have developed an understanding for the basic principles of computational algorithms.

- have reinforced her/his knowledge about a number of important computational problems, and ways to attack them.

Skills and abilities
For a passing grade the student must

- have developed a programming ability at a high level.

- have learnt how to code, test and evaluate the results of complex numerical algorithms, using established programme libraries.

- be able to carry out a group programming project, including identifying subproblems, distribution of tasks within the group and responsibility for the completion of his/her task.

- be able to account for a computational project, both in a written report and orally.

Contents
Introduction to Python for students already familar with another programming language, the use of object oriented programming in scientific computing, Scipy/Numpy datastructures.

Examples of complex numerical algorithms from varying subjects in numerical analysis,

Coupling to advanced numerical libraries in C and Fortran (Netlib).

Automatic tests in scientific computing. Graphical representation of mathematical results (animation). The use of Python to control system processes.

The course may be complemented with special contributions of invited guest teachers.

Literature
Führer,C, Solem,, J.E, Verdier, O: Scientific Computing with Python. Centre for Mathematical Sciences 2011.