[an error occurred while processing this directive]
[an error occurred while processing this directive]


The CCP1 GUI Project


The CCP1GUI project has arisen as a result of demand within the UK academic community (principally through CCP1) for a free, extensible Graphical User Interface (GUI) for community codes, particularly for teaching purposes. There is also a long-standing requirement for a graphical interface for the GAMESS-UK quantum chemistry programme, which we plan to satisfy using the CCP1 developments.

The GUI has been built around the Python open-source programming language and the VTK visualisation toolkit, both of which have been ported to all the major operating system platforms. Distributions of the GUI are available for Windows, Mac OSX, and most of the major Linux distributions, and packages for these distributions are freely available from our ftp site site.

The CCP1GUI has been released under the GNU GPL licence and is freely available to download. Downloads are available from the CCP1GUI pages on sourceforge or from the ftp site of the Computational Chemistry Group at STFC Daresbury Laboratory.

The design of the GUI makes the most of Python's high degree of object-orientation, including advanced features such as multiple inheritance. The strong reliance on object orientation means that it is quick and easy to create interfaces to new computational chemistry codes as the need arises. The GUI already has a highly-featured interface for the GAMESS-UK program, and there are working interfaces for Dalton, Molpro, ChemShell and MOPAC.

A screen shot of the molecular graphics viewer running on Windows, showing the notebook widget used to set the QM code options.

Supported file formats

From its inception, the GUI was intended to work with a number of different codes, so a variety of file formats are supported both for reading in molecular structures and outputting data. As well as conventional formats such as Z-matrix and PDB, there are programme-specific formats for CHARMM, ChemShell, XMol and Gaussian, as well as support for XML.

The latest version of the CCP1GUI has an interface to the OpenBabel chemistry toolbox. If OpenBabel (and its Python bindings) are installed on the machine that the CCP1GUI is running on, then the CCP1GUI can read and write the more than 80 file formats supported by OpenBabel.

Editing Capabilities

The GUI has a suite of easy-to-use editing tools that allows complex molecules to be created using simple point-and-click operations. There is also a fully-functional Z-matrix editor that can be used to edit the atomic coordinates of a molecule in internal or Cartesian form. Symbolic variables (and constants) can be defined, and the editor can automatically generate a Z-matrix (including the requisite reordering of the atoms) which can subsequently be customised. Used in conjunction with the graphical tools this creates a powerful and flexible environment for building molecular structures.

Visualisation Tools

The GUI has powerful and highly customisable visualisation capabilities. It can create coloured 3D-surfaces, 2D-slices or grids of points mapped to a desired molecular property, and the colours and opacity are easily adapted to a given schema. Several different vector visualisers are available and were used in a recent study to visualise magntically induced ring currents. Multiple representations of the various molecular properties for the same or different molecules can be created and overlaid to extract the maximum amount of information from the results of a calculation.

The GUI can also be used to view the dynamic properties of a calculation, by animating molecular vibrations or creating a movie from the different steps in a geometry optimisation.


The GAMESS-UK interface for the GUI can be used to drive SCF, DFT or post Hartree-Fock calculations, or to undertake geometry optimisations, including transition state searches. There are options to configure everything from the convergence criteria of SCF calculations and geometry optimisations, to functionals and grid settings for DFT calculations. In addition, the interface includes a tool to configure the basis sets on individual atoms.

The interface also provides access to the various analytical options offered by GAMESS-UK and the results of these calculations are automatically imported into the GUI for display with the visualisation tools.

e-Science Developments

Work is already underway to enable the GUI to exploit the latest developments in the field of e-Science. The CCP1GUI currently has the ability to submit jobs to resources running Globus or Nordugrid. This allows a user with a Grid Certificate that allows them to run on, for example the UK National Grid Service or the NW-Grid, to create a job on their local machine, have it run in parallel on a large resouce and have the data copied back to their own machine, all from within the CCP1GUI. For more information on this, see the Job Submission documentation.

Further developments with eScience technology will allow the GUI to download molecular structures from databases around the world for viewing, or to serve as the inputs for calculations. As the e-Science Data Model matures however, it will become possible to not only download and view the results of calculations carried out with different codes, but to use the GUI to import the inputs to serve as a basis for new calculations.

Other Documentation Available

  • Read the Installation Documentation.
  • Visit the CCP1GUI homepage on sourceforge ( where you can also download the latest version of the CCP1GUI ).
  • Download the GUI from our ftp site.
  • Send an email to the User Mailing List if you have any questions or are experiencing any problems.
  • A description of the menus and shortcut keys for the GUI.
  • Documentation on the different Job Submission options available.
  • Documentation describing how to get the different interfaces to the various programs the CCP1GUI supports working.
  • A description of the options available in the GAMESS-UK window.
  • A tutorial on using GAMESS-UK to perform a geometry optimisation on salicyclic acid.
  • A short tutorial on using the interface as a visualisation tool (does not require any interfaced codes).
  • A list of the changes that have been made between each release of the GUI.
  • A summary of the design of the GUI, outlining the main classes, of interest mainly to developers.
  • Some examples of runs using GAMESS-UK.
  • A list of know bugs is maintained on the tracker on sourceforge. Read this before trying out the GUI, so you don't waste your time puzzling over things we haven't got round to fixing yet.
  • Licence conditions.

Related Links

GAMESS-UK - the GAMESS-UK ab initio quantum chemistry code.
Python - the Python open source programming language.
VTK - the Visualistion ToolKit graphics package.
PyMOL - PyMOL is a user-sponsored molecular modeling system with an OPEN-SOURCE foundation
Avogardo - a powerul molecule visualisation program with python bindsings
Tkinter - a toolkit to use tkinter widgets within Python.
MMTKThe Molecular Modelling Toolkit (MMTK) is an Open Source program library for molecular simulation applications.
Scripps PMV the Python-based Molecular Viewing Environment (PMV)
PyOpenGL PyOpenGL is the cross platform Python binding to OpenGL and related APIs.
Pmw - extended Tkinter widgets for use in Python applications.

For more information about the work of the Computational Chemistry Group please contact Paul Sherwood p.sherwood@dl.ac.uk or Bill Smith w.smith@dl.ac.uk
back to top
 Quick links





Modelling Superoxide Dismutases
Crystal Polymorph Prediction
Modelling powders
Diffusion at Grain Boundaries
Paul Sherwoood
Bill Smith
Laurence Ellison
John Purton
C.W. Yong
Michael Seaton
Tom Keal
Rick Anderson
Sebastian Metz
Ilian Todorov