University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Physics and Astronomy : Undergraduate (School of Physics and Astronomy)

Undergraduate Course: Modelling and Visualisation in Physics (PHYS10035)

Course Outline
SchoolSchool of Physics and Astronomy CollegeCollege of Science and Engineering
Credit level (Normal year taken)SCQF Level 10 (Year 4 Undergraduate) AvailabilityAvailable to all students
SCQF Credits10 ECTS Credits5
SummaryThis course covers the process of mapping a scientific problem onto a computer algorithm to enable it to be modelled, along with an introduction to visualisation techniques (e.g., via either gnuplot or Matplotlib or similar), to help visualise the solution. Example problems will be drawn from the Junior Honours physics programme, with additional examples from 'everyday' problems. The course will consist of lectures on the algorithms and weekly hands-on practical sessions, with three checkpoints.
Course description Theoretical background of core simulation techniques including:
1. Monte-Carlo integration and Monte-Carlo simulations
2. Cellular automata
3. Molecular dynamics simulations OR Partial differential equations (depending on year)

Implementation of these core techniques in Python to solve specific (and potentially unseen) physics problems

Integration of visualisation (evolving fields, moving particles, live graphs etc) and graphical user interfaces into simulation codes

The notion and origin of errors and instabilities in numerical algorithms, and simple techniques for handling them

Key issues that arise in the development of scientific software, such as: compromises between efficiency and flexibility, the incorporation of third-party library code (and its distinction from plagiarism) and the utility of good-quality documentation and coding style
Entry Requirements (not applicable to Visiting Students)
Pre-requisites Students MUST have passed: ( Numerical Recipes (PHYS10090) OR Computer Simulation (PHYS08026) OR Computer Modelling (PHYS09057)) OR ( Informatics 2B - Algorithms, Data Structures, Learning (INFR08009) AND Informatics 2C - Introduction to Software Engineering (INFR08019))
It is RECOMMENDED that students have passed ( Statistical Mechanics (PHYS09019) OR Thermal Physics (PHYS09061)) AND ( Electromagnetism (PHYS09060) OR Electromagnetism and Relativity (PHYS10093))
Prohibited Combinations Other requirements None
Information for Visiting Students
High Demand Course? Yes
Course Delivery Information
Academic year 2017/18, Available to all students (SV1) Quota:  None
Course Start Semester 2
Timetable Timetable
Learning and Teaching activities (Further Info) Total Hours: 100 ( Lecture Hours 11, Supervised Practical/Workshop/Studio Hours 33, Summative Assessment Hours 3, Programme Level Learning and Teaching Hours 2, Directed Learning and Independent Learning Hours 51 )
Assessment (Further Info) Written Exam 50 %, Coursework 50 %, Practical Exam 0 %
Additional Information (Assessment) Checkpoint assessments based on computational laboratory tasks, 50%
Unseen practical examination in CP Lab, 50%.
Feedback Not entered
Exam Information
Exam Diet Paper Name Hours & Minutes
Main Exam Diet S2 (April/May)3:00
Learning Outcomes
On completion of this course, the student will be able to:
  1. Write complex simulation code in Python.
  2. Understand and be able to apply numerical algorithms for Monte-Carlo simulations, cellular automata and (depending on year) molecular dynamics OR partial differential equations.
  3. Understand the notion of equilibration of a simulation, and efficient data-gathering, and their relation to simulation time
  4. Appreciate the importance of documentation and commenting in ensuring reusability.
  5. Have built a personal library of methods which will enable completion of an unseen coding task related to the ones addressed in the course efficiently and quickly.
Reading List
Additional Information
Graduate Attributes and Skills Not entered
Course organiserDr Davide Marenduzzo
Tel: (0131 6)50 5283
Course secretaryMiss Yolanda Zapata-Perez
Tel: (0131 6)51 7067
Help & Information
Search DPTs and Courses
Degree Programmes
Browse DPTs
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Important Information