Date: 11 - 13 April 2012

Python is modern, object-oriented programming language which has become popular in several areas of software development. This course introduces the basic concepts of the Python programming language and how it can be used effectively in high-performance computing. Fast array interface (numpy), message-passing interface (mpi4py), and several other useful Python packages such as scipy and matplotlib are introduced. C extension, i.e how to integrate code written in C directly as a part of a Python program, are also shown.  Examples include prototyping and solving numerical problems with Python, steering simulations with Python scripts and analyzing results with the help of Python.

Course consists of lectures and hands-on exercises.

This course is organised by the PRACE Advanced Training Center hosted by CSC - IT Center for Science.


    Prerequisites

    Participants are expected to have some experience in computer programming and to be familiar with the basic concepts (e.g. variables, statements, control structures, subroutines) but previous knowledge of Python is not required. Previous experience in high-performance computing (batch systems, MPI, etc.) may be useful.


Program


    Day 1, Wednesday April 11

        Introduction to Python

        Data types and expressions

        Control structures

        Functions and modules

        File I/O

        Text processing

    Day 2, Thursday April 12

        Object oriented programming with Python

        NumPy - fast array interface to Python
Day 3, Friday April 13
        C extensions for integrating efficient C routines in Python

        mpi4py - message-passing interface for Python

        Scipy-package for scientific computinig

        Matplotlib-package for visualization

https://events.prace-ri.eu/event/63/

Event types:

  • Workshops and courses


Activity log