Scientific Computing

Scientific Computing



Computers are mainly employed to model complex systems in the real world, because it is often impossible or expensive to observe or make experiments with the real system, e.g.: The dynamical properties of the atmosphere with special reference to weather prediction, mechanical stability of large bridges and safety systems of nuclear plants. These models are becoming more and more comprehensive and detailed in order to obtain precise information about the real systems. The study of such models by means of computers also requires more and more powerful machine architectures and algorithms. Not all architectures and algorithms preserve efficiency and accuracy when scaled to larger and larger models.

Scientific computation (or better: large scale computation) tries to find machine architectures and algorithms that are both efficient and accurate for large scale models. Examples of problems that fall in the area of computer science are: Organization of main memory with a large address space, synchronization and efficient cooperation of parallel processing architectures and visualization of the huge amount of output produced by simulations.

The course includes an introduction to parallel programming, numerical analysis and visualisation

See http://www.daimi.au.dk/~pmn/scf02/CDROM/SCF02/scf02.html for examples of projects.

Lecturer:
Peter Møller-Nielsen

Literature:
Ian Foster, Designing and Building Parallel Programs.
( available as: http://www.mcs.anl.gov/~itf/dbpp/)

Prerequisites:
Programming, linear algebra and calculus

Lectures:
2 hours/week

Course Language:
Danish or English

Evaluation:
Satisfactory completion of a project is required for passing the full course.

Credits:
10 ECTS

Quarter
3+4