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