Postgraduate Course: Parallel Numerical Algorithms (PGPH11076)
|School||School of Physics and Astronomy
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 11 (Postgraduate)
||Availability||Not available to visiting students
|Summary||The demand for performance of scientific applications as the driver for massive parallelism in computational science is reviewed. Basic algorithmic complexity theory is described, and parallel scaling introduced. Computational patterns, sometimes known as the ¿seven dwarfs¿¿ and how they are implemented in serial and parallel are described, how they scale, and which applications use them. The use of
libraries such as ScaLAPACK and PETSc are reviewed.
- Computational science as the third methodology
- Fundamentals of algorithmic complexity O(N) etc
- Basic numerics, floating-point representation and exceptions
- Complexity theory and parallel scaling analysis
(weak and strong scaling)
- Implementing parallelism in the ¿seven dwarfs¿, scaling and example applications
(N-body/particle methods, Simple ODEs, Dense Linear Algebra ,algorithms and libraries (LAPACK)
- Sparse Linear Algebra
(PDEs, BVPs and their solution (pollution problem), IVPs and implicit methods)
- Spectral methods
(FFW and applications)
- Structured grids
- Unstructured grids
Entry Requirements (not applicable to Visiting Students)
||Other requirements|| None
Course Delivery Information
|Academic year 2015/16, Not available to visiting students (SS1)
|Learning and Teaching activities (Further Info)
Lecture Hours 22,
Seminar/Tutorial Hours 11,
Summative Assessment Hours 2,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
|Additional Information (Learning and Teaching)
Please contact the School for further information
|Assessment (Further Info)
|Additional Information (Assessment)
||100% examination consisting of a two hour exam
||Hours & Minutes
|Main Exam Diet S1 (December)||2:00|
| On completion of this course students should be able to:
- explain why computer simulation is an essential technique in many areas of science, and understand
its advantages and limitations
- Explain how real-valued quantities are represented on a computer as floating-point variables.
- Discuss the various sources of error relevant for computational simulation.
- Explain when different methods (particle, grid, stationary, time dependent) are applicable, and
compare the strengths and weaknesses of different parallelisation strategies.
- Convert simple partial differential equations into numerical form.
- Select and implement the most appropriate method for solving a given system of linear equations.
- Use standard numerical libraries in their own codes.
- Diagnose when a numerical algorithm may be failing due to limited machine precision or floating point
|Graduate Attributes and Skills
|Course organiser||Dr Christopher Johnson
|Course secretary|| Yuhua Lei
Tel: (0131 6) 517067
© Copyright 2015 The University of Edinburgh - 18 January 2016 4:37 am