Scripting Tools for Scientific Computing

by Hans Petter Langtangen, Simula Res. Lab. and Dept. of Informatics, UiO

Registration

About the course

The goal of the coarse is to demonstrate the power of scripting in a scientific computing setting. Our programming paradigm for high-performance computing is to use C/C++ or Fortran for the most CPU-intensive algorithms and manage the rest by scripts, written in the very high-level language Python. A more detailed description of the course is available. Experience with programming in some language like Fortran 77/90, C, C++, Java or Matlab is assumed. For the GUI part we assume some familiarity with class programming (C++, Java, for instance).

The course consists lectures in the MH-building, Aud 5, and "hands-on" exercises in the computer room XXX.

Here is a rough sketch of the time schedule:

Tuesday 10:15-12:00 Overview of scripting: What is it? What's in it for me as a computational scientist? How does scripting differ from Fortran, C/C++ and Java programming? How does it related to Matlab?
Tuesday 13:15-16:00 Basic intro to Python. Conducting numerical experiments. Overview of what Python can do.
Wednesday 08:00-10:00 Introductory exercises in the computer room.
Wednesday 10:15-12:00 More overview of what Python can do. Numerical computations in Python.
Wednesday 13:15-15:00 Mixed language programming for high-performance computing: Python, C/C++, and Fortran. Regular expression and text processing.
Wednesday 15:15-18:00 Exercises in the computer room.
Thursday 9:15-12:00 More on regular expressions. Easy creation of graphical user interfaces. Making Web services (interactive Web pages).
Thursday 13:15-15:00 Exercises in the computer room.

Course material

The PostScript or PDF version of the slides is recommended for printing. The HTML page with all slides is recommended for working with exercises and projects, as you can easily search the text.