Postgraduate Course: Scientific Computing (MATH11198)
|School||School of Mathematics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 11 (Postgraduate)
||Availability||Available to all students
|Summary||Computational skills are in high demand in both academia and industry, particularly in the context of applying these skills to advanced mathematical problems. This course seeks to introduce and then develop general scientific computing skills in the context of familiar applications. No prior knowledge of particular programming languages or previous experience of scientific computing is assumed.
* This course is available to Mathematics MSc students only. *
The course introduces scientific computing assuming no prior knowledge, and will be taught using a suitable computer language. First, fundamental commands and data structures for scientific computing will be discussed in the context of familiar mathematical problems. This is followed by a thorough
introduction to basic programming structures such as loops and conditional execution, along with a discussion of efficiency and loop vectorisation. Scripts and functions are then introduced to facilitate the computation of solutions using elementary algorithms and structured programs. Various approaches to the display and analysis of data will also then be introduced and discussed. Throughout the course there will be an emphasis on developing abilities to plan the development of programs required for scientific computation in order that this can be done efficiently and accurately.
More advanced material in the second half of the course will be taken from, for example, numerical solutions to partial/ordinary differential equations, optimization or advanced data analysis. The course will focus on applying the techniques learned to problems within one of these suitable application areas.
The course includes a significant amount of lab work, which will be assessed via a class test. Later, more advanced material is assessed by a written report, for this purpose the course will also provide a short introduction to a mathematical typesetting environment.
In a suitable programming language:
Fundamentals: commands; data types and data structures for scientific computing; loops and conditional execution.
Scripts and functions: creation and execution of scripts; syntax of functions; locality of identifiers and modular development.
Display and analysis of data and the results of computations: plotting; display of results in tables; timing of calculations.
Planning for scientific computing: incremental development; debugging; choice of test examples; design of experiments; handling randomness in results; code efficiency and vectorisation.
Further applications: obtained from, for example, numerical solutions to partial/ordinary differential equations, optimization, advanced data analysis.
Entry Requirements (not applicable to Visiting Students)
||Other requirements|| * This course is available to Mathematics MSc students only. *
Information for Visiting Students
|High Demand Course?
Course Delivery Information
|Not being delivered|
On completion of this course, the student will be able to:
- Compute solutions to familiar mathematical problems using a suitable programming language.
- Solve mathematical problems by using elementary algorithms, and compute solutions using a structured computer program.
- Display and analyse data appropriately, including the results of numerical calculations.
- Plan and develop efficient numerical programs.
- Write up a short report describing an application of computing to solve a suitable mathematical problem.
|Graduate Attributes and Skills
|Course organiser||Dr Joerg Kalcsics
Tel: (0131 6)50 5953
|Course secretary||Miss Gemma Aitchison
Tel: (0131 6)50 9268