Skip to content

Module Catalogue

Breadcrumbs navigation

PH3080   Computational Physics

Academic year(s): 2023-2024

Key information

SCOTCAT credits : 10

ECTS credits : 5

Level : SCQF level 9

Semester: 1

This module is designed to develop a level of competence in Python, a modern programming language currently used in many physics research labs for mathematical modelling. No prior experience is required. The module starts with a grounding in the use of Python and discusses numerical methods. The main focus is then on the ways in which Python can be used for problem solving in physics and astrophysics.

Relationship to other modules

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

Anti-requisite(s): You cannot take this module if you take PH3082

Learning and teaching methods and delivery

Weekly contact: 2hr lab x 10 weeks, 2 x 1hr lecture with Q&A x 10 weeks

Scheduled learning hours: 40

Guided independent study hours: 60

Assessment pattern

As used by St Andrews: 3-hour Computer-based Examination = 75%, continual assessment = 25%

As defined by QAA
Written examinations : 0%
Practical examinations : 75%
Coursework: 25%

Re-assessment: Oral Re-assessment, capped at grade 7

Personnel

Module coordinator: Dr I Leonhardt

Additional information from school

Aims & Objectives

To experience how numerical modelling is used to explore physical concepts.

To develop a level of expertise in modelling physical problems and to introduce common solving and visualising techniques.

Data analysis to extract physical information from measured data and images.

Solving differential equations numerically.

 

Learning Outcomes

The students will be able to program in Python, and be able to use Python to solve, visualise and gain insight into a variety of physical problems.

 

Synopsis

There are introductory exercises teaching basic programming skills in Python, different numerical methods and setting up physical problems. There are 8 case studies. These are designed to illustrate the use of programming to solve and visualise a variety of physics problems as well as introducing a number of advanced features in Python. The case studies can vary from year to year. Past case studies have included: solving differential equations, astronomical data analysis, modelling oscillations, classical optics, waves, and quantum mechanics.

Numerical techniques used in this module include:

  • Root finding
  • Studies involving one and two parameters
  • Model fitting
  • Parameter optimisation / determining stability regions 
  • Numerical differentiation
  • Numerical integration
  • Solving systems of ordinary differential equations
  • Rudimentary finite element method
  • Boundary conditions (closed, open & non-reflecting)

 

Indicative timetable: weeks 1-2: introduction, weeks 3-5 and 7-11: case studies, each week there will be the opportunity to engage in online and in-room interaction with teaching staff.

Indicative deadlines:      Engagement questions: Monday weeks 3-5, and 7-11,

Forum interaction and PeerWise Friday weeks 5 and 11.

 

Additional information on continuous assessment, etc.

The continuous assessment takes the form of forum interactions in Moodle, writing and answering questions in PeerWise and engagement questions.

 

 

Recommended Books

Please view University online record:

http://resourcelists.st-andrews.ac.uk/modules/ph3080.html

 

General Information

Please also read the general information in the School's Honours handbook that is available via https://www.st-andrews.ac.uk/physics-astronomy/students/ug/timetables-handbooks/ .