Undergraduate Course: Modelling and Visualisation in Physics (PHYS10035)
Course Outline
School | School of Physics and Astronomy |
College | College of Science and Engineering |
Course type | Standard |
Availability | Available to all students |
Credit level (Normal year taken) | SCQF Level 10 (Year 4 Undergraduate) |
Credits | 10 |
Home subject area | Undergraduate (School of Physics and Astronomy) |
Other subject area | None |
Course website |
WebCT |
Taught in Gaelic? | No |
Course description | This course covers the process of mapping a scientific problem onto a computer algorithm to enable it to be modelled, along with an introduction to Java graphics to help visualise the solution. Example problems will be drawn from the Junior Honours physics programme, with additional examples from 'everyday' problems. |
Information for Visiting Students
Pre-requisites | None |
Displayed in Visiting Students Prospectus? | Yes |
Course Delivery Information
|
Delivery period: 2013/14 Semester 2, Available to all students (SV1)
|
Learn enabled: Yes |
Quota: None |
|
Web Timetable |
Web Timetable |
Course Start Date |
13/01/2014 |
Breakdown of Learning and Teaching activities (Further Info) |
Total Hours:
100
(
Lecture Hours 8,
Seminar/Tutorial Hours 1,
Supervised Practical/Workshop/Studio Hours 33,
Summative Assessment Hours 3,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
53 )
|
Additional Notes |
|
Breakdown of Assessment Methods (Further Info) |
Written Exam
50 %,
Coursework
15 %,
Practical Exam
35 %
|
Exam Information |
Exam Diet |
Paper Name |
Hours & Minutes |
|
Main Exam Diet S2 (April/May) | | 3:00 | |
Summary of Intended Learning Outcomes
Upon successful completion it is intended that the student will be able to:
1)Write complex simulation codes in Java.
2)Design and write simple visualisation software in Java, depicting evolving fields, moving particles, and graphs; interface this software to simulation codes
3)Design and write simple graphical user interfaces in Java.
4)Locate, understand, download and incorporate useful publically-available methods from outwith the course materials using the internet; appreciate the difference between reusable object-oriented coding and plagiarism
5)Understand and apply three major techniques of computer coding: integrating an equation, minimising a function and sampling from a distribution
6)Have completed simulations of molecular dynamics of many particles; cellular automata and the percolation transition; the Ising model for ferromagnetism and antiferromagnetic phase transitions; Maxwell's equations, understanding the usefulness of the vector potential; Develop a deeper understanding of these physical problems through simulation
7)Understand the notion of equilibration of a simulation, and efficient data-gathering, and their relation to simulation time
8)Appreciate the aspects of a code which limit computer performance, the conflict between object-oriented and computationally efficient code, and the occasions where each is to be preferred
9)Appreciate the importance of documentation and commenting in ensuring reusability; Write user guides in English to enable third parties to use the codes.
10)Have built a personal library of methods which will enable the student to complete a simple, unseen coding task effectively and quickly |
Assessment Information
Checkpoint assessments based on computational laboratory tasks, 35%
Oral and/or written presentation of computational methods to class, 15%
Unseen practical examination in CP Lab, 50%. |
Special Arrangements
None |
Additional Information
Academic description |
Not entered |
Syllabus |
¿ Theoretical background of core simulation techniques including: sampling from a distribution (Monte Carlo), solution of initial- and boundary-value partial differential equations, time evolution of deterministic and stochastic equations of motion
¿ Implementation of these core techniques in Java 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
|
Transferable skills |
Not entered |
Reading list |
Not entered |
Study Abroad |
Not entered |
Study Pattern |
Not entered |
Keywords | ModVi |
Contacts
Course organiser | Dr Davide Marenduzzo
Tel: (0131 6)50 5283
Email: dmarendu@ph.ed.ac.uk |
Course secretary | Ms Dawn Hutcheon
Tel: (0131 6)50 7218
Email: Dawn.Hutcheon@ed.ac.uk |
|
© Copyright 2013 The University of Edinburgh - 13 January 2014 4:59 am
|