Undergraduate Course: Computer Simulation (PHYS08026)
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 8 (Year 2 Undergraduate) | 
Credits | 20 | 
 
| 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 methodologies of solving scientific problems using computers. It provides a training in the computational modelling of scientific problems and their representation using computer graphics. It also provides a grounding in object-oriented programming through the practical application of the Java language. Students will carry out extensive practical and project work. | 
 
 
Information for Visiting Students 
| Pre-requisites | None | 
 
| Displayed in Visiting Students Prospectus? | Yes | 
 
 
Course Delivery Information
 |  
| Delivery period: 2014/15  Semester 2, Available to all students (SV1) 
  
 | 
Learn enabled:  Yes | 
Quota:  None | 
 | 
 
Web Timetable  | 
	
Web Timetable | 
	| Class Delivery Information | 
	Computational Physics Lab Sessions Tu & Th.  If, due to timetable constraints, students are unable to attend scheduled lab sessions, they are expected to fulfil the time commitments of the course outside of scheduled hours. | 
 
 
| Course Start Date | 
12/01/2015 | 
 
| Breakdown of Learning and Teaching activities (Further Info) | 
 
 Total Hours:
200
(
 Lecture Hours 6,
 Seminar/Tutorial Hours 5,
 Supervised Practical/Workshop/Studio Hours 33,
 Summative Assessment Hours 3,
 Programme Level Learning and Teaching Hours 4,
Directed Learning and Independent Learning Hours
149 )
 | 
 
| Additional Notes | 
 | 
 
| Breakdown of Assessment Methods (Further Info) | 
 
  Written Exam
30 %,
Coursework
30 %,
Practical Exam
40 %
 | 
 
| Exam Information | 
 
    | Exam Diet | 
    Paper Name | 
    Hours & Minutes | 
    
	 | 
  
| Main Exam Diet S2 (April/May) |  | 3:00 |  |  | Resit Exam Diet (August) |  | 3:00 |  |  
 
Summary of Intended Learning Outcomes 
Upon successful completion of this course, it is intended that a student will be able to:  
 
 
- Explain why it is appropriate to solve certain physical problems, such as integration and modelling interacting particles by computation 
 
- Apply the techniques of discretisation and iteration to solve open-ended physical problems  and  demonstrate  an awareness  of the origin and  impact  of numerical errors inherent in such techniques 
 
- Apply the key concepts of OO programming (data encapsulation, inheritance and polymorphism)  by analysing a problem statement to produce a simple OO design and implementing it in Java 
 
- Make use of classes and interfaces of the Java SE API, in particular to read and process data from external sources and to construct simple graphical applications 
 
- Predict when variables are copied by reference or by value according to their type, and the consequences thereof 
 
- Recognise the importance of clear, consistently-documented and error-tolerant codes, making use of Java's language features for achieving this 
 
- Locate and use additional sources of information (to include discussion with peers where appropriate) to resolve practical problems that arise 
 | 
 
 
Assessment Information 
5 checkpoint assignments, 30% 
Project (code and report), 40% 
Degree Examination, 30% |  
 
Special Arrangements 
| None |   
 
Additional Information 
| Academic description | 
Not entered | 
 
| Syllabus | 
*	Key concepts of OO programming; data encapsulation, objects and classes, inheritance and polymorphism; 
*	Analysis of problem statements to produce simple OO designs; 
*	Classes and class hierarchies containing multiple constructors and methods; 
*	Declaration and initialisation of objects and arrays of objects; 
*	Creation of multiple instantiations (objects) of a class; 
*	Method execution on objects and classes; 
*	Pass by reference copy and pass by value; how arrays, objects and primitive types are passed; 
*	Utilisation of classes and interfaces of the Java SE API; 
*	Reading and parsing text from a file and writing data to a file; 
*	Checked and unchecked exceptions; handling exceptions (throw and try/catch); 
*	Simple graphical applications, including drawing objects, simple animation and user interaction (event handling). 
 | 
 
| Transferable skills | 
Not entered | 
 
| Reading list | 
Not entered | 
 
| Study Abroad | 
Not entered | 
 
| Study Pattern | 
Not entered | 
 
| Keywords | CSim | 
 
 
Contacts 
| Course organiser | Dr Kevin Stratford 
Tel: (0131 6)50 6759 
Email: kevin@exseed.ed.ac.uk | 
Course secretary | Mrs Bonnie Macmillan 
Tel: (0131 6)50 5905 
Email: Bonnie.MacMillan@ed.ac.uk | 
   
 
 |    
 
© Copyright 2014 The University of Edinburgh -  29 August 2014 4:37 am 
 |