PX277-7.5 Computational Physics
This module develops programming in the Python programming language and follows from PX150 Physics Programming Workshop
To acquire programming skills necessary to solve physics problems with the help of the Python programming language, a language widely used by physicists
This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.
- Handling, processing and analysing physics data: plotting distributions, least square and
maximum likelihood fit.
- Monte Carlo simulation for physics modelling. Different types of random numbers, quality of
random number generators. Generation of random numbers according to specific distributions.
Brownian motion and diffusion.
- Numerical integration and differentiation. Mass and centre of mass of object with variable
density. Electric fields generated by distributed charge.
- Numerical solutions of ordinary differential equations. Mechanical oscillations, motion with
By the end of the module, students should be able to:
- Explain how computers can be used to solve physics problems
- Translate physics problems into a form suitable for implementing in computer program
- Design algorithms and implement them.
- Handle and analyse physics data
Indicative reading list
M. Newman, Computational Physics, CreateSpace Independent Publishing Platform, ISBN: 978-
H.P. Langtangen, A Primer on scientific programming with Python, Springer e-books (2012):
Python documentation: http://www.python.org/doc/
Scientific Python: http://docs.scipy.org/doc/scipy/reference/
Subject specific skills
Knowledge of programming. Skills in numerical modelling.
IT skills, analytical, communication, problem-solving, self-study
|Lectures||5 sessions of 2 hours (13%)|
|Practical classes||10 sessions of 1 hour (13%)|
|Private study||55 hours (73%)|
Private study description
Working through lecture notes, formulating problems, programming and testing code, discussing with others taking the module, preparing and submitting coursework
No further costs have been identified for this module.
You must pass all assessment components to pass the module.
Assessment group A1
|Assessed Computing Assignments||100%|
Programmning and reports
Feedback on assessment
This module is Option list A for:
- Year 2 of UPXA-FG33 Undergraduate Mathematics and Physics (BSc MMathPhys)
- Year 2 of UPXA-GF13 Undergraduate Mathematics and Physics (BSc)
- Year 2 of UPXA-FG31 Undergraduate Mathematics and Physics (MMathPhys)
- Year 2 of UPXA-F304 Undergraduate Physics (BSc MPhys)
- Year 2 of UPXA-F300 Undergraduate Physics (BSc)
- Year 2 of UPXA-F303 Undergraduate Physics (MPhys)
- Year 2 of UPXA-F3N1 Undergraduate Physics and Business Studies
This module is Option list B for:
- Year 2 of UMAA-G105 Undergraduate Master of Mathematics (with Intercalated Year)
- Year 2 of UMAA-G100 Undergraduate Mathematics (BSc)
- Year 2 of UMAA-G103 Undergraduate Mathematics (MMath)
- Year 2 of UMAA-G106 Undergraduate Mathematics (MMath) with Study in Europe
- Year 2 of UMAA-G1NC Undergraduate Mathematics and Business Studies
- Year 2 of UMAA-G1N2 Undergraduate Mathematics and Business Studies (with Intercalated Year)
- Year 2 of UMAA-GL11 Undergraduate Mathematics and Economics
- Year 2 of UECA-GL12 Undergraduate Mathematics and Economics (with Intercalated Year)
- Year 2 of UMAA-G101 Undergraduate Mathematics with Intercalated Year