For information on which modules are specific to your programme, please see : Programme requirements index 2019-2020.

AS3013

Computational Astrophysics

2019-2020

15

7

SCQF Level 9

2

**Academic year(s): **2019-2020

**SCOTCAT credits : **15

**ECTS credits : **7

**Level : **SCQF Level 9

**Semester: **2

**Planned timetable: **

** Pre-requisite(s): **Before taking this module you must pass PH2011 and pass PH2012 and pass MT2501 and pass MT2503

** Weekly contact: **2 x 3.5-hour supervised or taught sessions (x 10 weeks). Mostly hands-on guided work on computers, but with occasional presentation.

**Scheduled learning hours: **70

**Guided independent study hours: **80

** As used by St Andrews: **Coursework (practical work, the submission of computer code and computational solutions to given problems) = 100%

As defined by QAA

**Written examinations : **0%

**Practical examinations : **0%

** Coursework: **100%

** Re-assessment: **No Re-assessment available - laboratory based

** Module coordinator: **Dr P Woitke

** Module teaching staff: **Dr P Woitke, Dr M Dominik, Dr C Helling

Modern Astronomy relies more and more on the intelligent and efficient use of computers, for example for observational data processing and for complex model simulations. The aim of this module is to introduce the students to basic computational methods in astrophysics. Students gain hands-on experience by developing their own FORTRAN-90 programs under LINUX, learn how to devise and test efficient numerical algorithms, depict their results in form of graphical plots with PYTHON, and develop their skills for systematic work and report writing. The module is subdivided into 4 exercises covering different topics, from the basics like "Hello, world" to more ambitious tasks like the simulation or N-body gravitational systems.

**Aims & Objectives**

- learn how to use the operating system LINUX
- learn the basics of the FORTRAN-90 programming language
- develop computational algorithms and computational methods, in particular for finding the numerical roots of algebraic equations, for numerical integration, for the numerical solution of systems of differential equations, and for Bayesian data analysis
- realize the difference between an algebraic and a numeric solution of a given problem
- structured programming with use of subroutines, loops and logical decision making structures, headers and comments
- variable types, argument lists, and the use of data modules
- input & output
- plot making with PYTHON, from simple 2D-plots, over 3D-plots to coloured contour plots
- scientific writing

**Learning Outcomes**

The student will learn and have practical experience of programming and the basic use of numerical techniques. Specifically, by the end of the module, the students will have a comprehensive knowledge about how to

- work on LINUX computers
- program in FORTRAN-90
- understand and apply the fundamentals of structured programming
- develop computational algorithms
- testing and debugging
- plot with PYTHON
- problem-oriented structured work towards a deadline
- scientific report writing
- deepen the understanding of the astrophysical topics covered in practise, namely black body radiation, interstellar mass function, fitting a model to noisy data, and planet orbits and gravitational systems.

**Synopsis**

The course is organized in 4 exercises, each lasting between 2 and 4 weeks, steadily increasing in complexity. The first 3 weeks are accompanied by 1-hour lectures, but the course takes place mainly in the computer lab. At the end of the second exercise, students start creating plots, and during the third exercise, students start to write complete scientific reports with figures and tables. Each exercise has a deadline for submission of the results, and is assessed separately.

**Additional information on continuous assessment**

Please note that the definitive comments on continuous assessment will be communicated within the module. This section is intended to give an indication of the likely breakdown and timing of the continuous assessment.

This is a 15 credit module, so is expected to take 150 hours of study for the average student at this level. The first three weeks include a lecture (about 45min) before students move on to the afternoon computer lab. The work in weeks 4-11 takes place fully in the computer labs. The sessions run on Monday and Thursday afternoons. The module's work is finished by revision week, so students can expect to commit about 14 hours a week to this module in weeks 1-11. This means that the scheduled time in classes forms about half of the total expected study time.

The module grade is based on attainment in continuous assessment. There are 4 assessed exercises of duration 3 weeks, 2 weeks, 4 weeks and 2 weeks, with marking weights 15%, 20%, 40%, and 25%, respectively. The submission deadlines are set to the end of those weeks, i.e. week 3, 5, 9 and 11. The exercises are of increasing difficulty (exercise 1: basic small tasks, input and output, loops, arrays, root finding; exercise 2: initial mass function with numerical integration; exercise 3: stellar orbits, solve a system of ordinary differential equations; exercise 4: planet transition lightcurves, model fitting and Bayesian analysis of noisy data. Exercises 3 and 4 each require the submission of a written scientific report with tables and figures. Students use Fortran-90 to compute their results, Python to make figures, and a word processing tool of choice (usually Word or LaTeX).

**Accreditation Matters**

This module may not contain material that is part of the IOP “Core of Physics”, but does contribute to the wider and deeper learning expected in an accredited degree programme. The skills developed in this module, and others, contribute towards the requirements of the IOP “Graduate Skill Base”.

**Recommended Books**

Mostly online material, start here http://www-star.st-and.ac.uk/~pw31/teaching.html

**General Information**

Please also read the general information in the School's honours handbook that is available via st-andrews.ac.uk/physics/staff_students/timetables.php.