- UCAS course code
- F346
- UCAS institution code
- M20
Course unit details:
Computational Physics
| Unit code | PHYS20762 |
|---|---|
| Credit rating | 10 |
| Unit level | Level 2 |
| Teaching period(s) | Semester 2 |
| Offered by | Department of Physics & Astronomy |
| Available as a free choice unit? | No |
Overview
Computational Physics introduces students to numerical methods and programming techniques for solving complex physical problems. The course covers high-level scripting languages for data analysis, numerical solutions to ordinary differential equations, and Monte Carlo methods for modelling random processes. Emphasis is placed on practical applications, including simulating physical systems, assessing numerical accuracy, and understanding sources of error. Through hands-on projects, students will develop computational skills essential for modern physics research and problem-solving.
Pre/co-requisites
| Unit title | Unit code | Requirement type | Description |
|---|---|---|---|
| Introduction to Programming for Physicists | PHYS20161 | Pre-Requisite | Compulsory |
Aims
To introduce students to high-level programming for numerical computing and data analysis, equipping them with practical computational skills relevant to physics applications.
To develop an understanding of classical numerical methods, including Euler and higher-order techniques, for solving ordinary differential equations and analysing physical systems.
To provide a foundation in Monte Carlo techniques and statistical methods, emphasising their role in modelling random processes in stochastic systems and simulating physical phenomena.
To enable students to apply computational techniques to model and analyse real-world physical systems, assess numerical accuracy, and identify sources of error.
Learning outcomes
Syllabus
Computational Physics introduces students to numerical methods and programming techniques for solving complex physical problems. The course covers high-level scripting languages for data analysis, numerical solutions to ordinary differential equations, and Monte Carlo methods for modelling random processes. Emphasis is placed on practical applications, including simulating physical systems, assessing numerical accuracy, and understanding sources of error. Through hands-on projects, students will develop computational skills essential for modern physics research and problem-solving.
Teaching and learning methods
This is a continuously assessed course, structured around asynchronous materials divided into four parts: Week 1, covering a revision of Python 3 and an introduction to Jupyter Notebooks which is the sole programming environment used throughout the course; Weeks 2–3, focusing on Project 1 (Data Analysis); Weeks 4–7, dedicated to Project 2 (Numerical Integration); and Weeks 8–12, where students work on Project 3 (Monte Carlo Method). Each project includes a detailed task description, video instructions, and supplementary resources online. Students also receive in-person feedback from the demonstrators and the unit leads during two three-hour drop-in computer-lab sessions, with each student assigned to one of these sessions. Additionally, a Piazza discussion forum is provided, where students can ask questions and receive answers from their peers, demonstrators, and unit leads.
CUIP Teaching Methods
| Activity | Hours | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Assessment methods
You will carry out 3 short projects (as an individual, not in a pair or group). You must PASS projects 1 (receive more than 40%) to be allowed to submit projects 2 and 3. The final two projects contribute 50% each to the final mark, respectively. Feedback methodsFeedback will be given orally by demonstrators during lab sessions and additional written feedback will be provided with the mark for each project. Recommended readingCUIP Reading ListLearning Scientific Programming with Python Hill, Christian 2015 Titus, A.B. Introduction to Numerical Programming: A Practical Guide for Scientists and Engineers Study hours
Teaching staff
Additional notesAll material for the unit, such as videos, example scripts and notes, is available online via Blackboard. * Tutorial = online classes | ||||||||||||||
