The cross fertilization of methods and techniques between different subject areas in the undergraduate curriculum is a challenge, especially at the more advanced levels. This paper describes an attempt to achieve this through a tutorial based around a traditional high performance computing application, namely molecular dynamics. The tutorial exposes students to elements of software design patterns, the construction of graphical user interfaces, and concurrent programming concepts. The tutorial targets senior undergraduate or early postgraduate students and is relevant to both those majoring in computing as well as other science disciplines.
James Roper, Alistair P. Rendell