PX277-7.5 Computational Physics
Introductory description
This module develops programming in the Python programming language and follows from PX150 Physics Programming Workshop
Module aims
To acquire programming skills necessary to solve physics problems with the help of the Python programming language, a language widely used by physicists
Outline syllabus
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
resistance.
Learning outcomes
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-
1480145511 (2012).
-
H.P. Langtangen, A Primer on scientific programming with Python, Springer e-books (2012):
http://link.springer.com/book/10.1007%2F978-3-642-18366-9 -
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.
Transferable skills
IT skills, analytical, communication, problem-solving, self-study
Study time
Type | Required |
---|---|
Lectures | 5 sessions of 2 hours (13%) |
Practical classes | 10 sessions of 1 hour (13%) |
Private study | 55 hours (73%) |
Total | 75 hours |
Private study description
Working through lecture notes, formulating problems, programming and testing code, discussing with others taking the module, preparing and submitting coursework
Costs
No further costs have been identified for this module.
You must pass all assessment components to pass the module.
Assessment group A1
Weighting | Study time | |
---|---|---|
Assessed Computing Assignments | 100% | |
Programmning and reports |
Feedback on assessment
Timetabled workshops
Courses
This module is Option list A for:
- Year 2 of UPXA-FG33 Undergraduate Mathematics and Physics (BSc MMathPhys)
- Year 2 of UPXA-F3N1 Undergraduate Physics and Business Studies