Module overview
The primary goal is to provide students with the practical programming and data analysis skills that are necessary for both their degree course and most careers in physics. Python is used as the introductory programming language, and numerical simulations will be used extensively in order to introduce and illustrate key statistical concepts. The emphasis throughout will be on developing insight, understanding and practical skills, as opposed to the formal/mathematical aspects of programming and statistics. The skills developed in this module will be required in many experimental/practical modules across all physics programmes.
Aims and Objectives
Learning Outcomes
Transferable and Generic Skills
Having successfully completed this module you will be able to:
- Analyse problems in a systematic manner and develop algorithms to solve them computationally
- Use existing software libraries in your own code
- Design, run, debug and test computer programs
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- Good programming style
- Basic programming constructs, including sequence, selection and iteration, the use of identifiers, variables and expressions, and a range of data types
- Fundamental statistical concepts, including probability distribution functions, cumulative distribution functions, hypothesis testing, parameter estimation and model fitting
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Interpret experimental/observational results correctly
Subject Specific Practical Skills
Having successfully completed this module you will be able to:
- Write code to analyse and present experimental/observational data
Syllabus
Programming
- Writing and running programs
- Variables and data types
- Basic control flow: looping, branching and function calls
- Functional programming
- Computational thinking
- Python libraries (for mathematics, data analysis and display)
- Designing algorithms (Moving from problem to solution)
Statistics/Data Analysis
- Describing data
- Defining & understanding probability
- Probility distribution functions and cumulative distribution functions
- Statistical distributions: Gaussian, Binomial, Poisson, Chi-squared
- The central limit theorem
- Understanding uncertainty -- statistical and systematic errors
- Testing for and understanding correlations
- Hypothesis testing
- Understanding statistical significance
- Model fitting and parameter estimation via least-squares and Chi-squared
Learning and Teaching
Teaching and learning methods
The aim of this module is to give students practical skills, so the teaching and learning methods used are designed to accomplish this. Formal lectures will be used primarily to introduce key ideas and concepts, but even these will be illustrated with extensive practical/computational examples and visualisations. Most of the teaching will take place during extended "practical" sessions, during which students will be expected to carry out programming and data analysis tasks that are related to -- and illustrative of -- the concepts that are being explored in the module at that time. Ideally, the formal lecture content will take place immediately before or during these sessions, so that new theoretical concepts being introduced can immediately be explored in practice by students. Teaching support in the form of multiple demonstrators will be available during all sessions, so that one-on-one help is available as needed. Additional learning is expected to take place independently, again mostly in the form of practical programming and data analysis. Lecture notes and practical examples will be made available in the form of ipython notebooks.
Type | Hours |
---|---|
Wider reading or practice | 40 |
Completion of assessment task | 110 |
Total study time | 150 |
Resources & Reading list
General Resources
Software requirements. Enthought may be OK for this module,but Anaconda is strongly preferred
Textbooks
Teaching space, layout and equipment required.
Staff requirements (including teaching assistants and demonstrators).
Barlow, Roger. Statistics: A Guide to the Use of Statistical Methods in the Physical Sciences. John Wiley & Sons.
Assessment
Assessment strategy
Attendance of all practical sessions is mandatory; no mark will normally be returned for any student attending fewer than half of the sessions.
Students repeating this module externally will be assessed solely via Assignment 2, which will therefore contribute 100% to the final mark for these students.
Summative
This is how we’ll formally assess what you have learned in this module.
Method | Percentage contribution |
---|---|
Continuous Assessment | 20% |
Programming project | 20% |
Data analysis project | 60% |
Referral
This is how we’ll assess you if you don’t meet the criteria to pass this module.
Method | Percentage contribution |
---|---|
Data analysis project | 100% |
Repeat
An internal repeat is where you take all of your modules again, including any you passed. An external repeat is where you only re-take the modules you failed.
Method | Percentage contribution |
---|---|
Coursework | 100% |
Repeat Information
Repeat type: Internal