CHE210D: Principles of modern molecular simulation methods, S12
 homeassignments and handouts | project gallery 2012 | project gallery 2009UCSB ChE
Course syllabus and schedule
Download here.

Lecture notes


Real-time visualization of atomic trajectories (requires VPython):

Writing of atomic trajectories to pdb files for import into molecular visualization programs:

A simple molecular dynamics simulation of the Lennard-Jones system, with visualization:

Weeks 1, 2

Week 3

Weeks 4, 5

Weeks 5, 6

Weeks 7, 8

  • assignment: Final project
  • related reading Leach Chapter 11; Frenkel & Smit Chapters 7, 9, 10

Weeks 9, 10

Software to install
Programming exercises in the course will require a Python installation, the NumPy and SciPy add-on libraries for Python, C/C++ and Fortran compilers, and (optionally) a Python script editor.  In this course, we will use the Python 2.7 series (latest version 2.7.2), NOT the Python 3 series that breaks compatability with the earlier version of the language.

For Windows platforms, essentially all of the required tools have already been assembled into an easy-to-install , open-source package.  You can download it freely at:
  • Python(x,y).  This package includes everything described above, including a nice editor called Spyder.  If you want to save space, you will not need to install all of the add-on packages during installation.  The main recommended packages are Python, NumPy, SciPy, Spyder, IPython, Matplotlib, VPython, MinGW, and their dependencies. 

If you are not adept at programming and compilation, I strongly recommend working on course projects using a Windows platform because of the setup convenience of the Python(x,y) package.  However, if you are particularly interested in using a Mac machine, a decent set of tools is listed below, although there may be additional configuration steps on your system in order to get these working together:

If you work in a Linux environment, you will need to install Python, NumPy, SciPy, and a Fortran compiler:
  • Python.  Be sure to install the 2.7 series.
  • NumPy for Python 2.7
  • SciPy for Python 2.7
  • GFortran.  You will need this to compile Fortran routines. 
  • VPython version 5.x (optional, for real-time visualization) 

Department of Chemical Engineering  |  University of California Santa Barbara