Development of the CCP1 GUI
Paul Sherwood, and Huub van Dam
IntroductionThe initial version of the CCP1 GUI prototype comprised a number of Python [1] classes that enabled the open source PyMOL package [2] to open a calculation editor panel and to run quantum chemical calculations, initially using GAMESS-UK and MOPAC as the QM codes. This article details a number of recent developments.Provision of an self-contained Python-based viewerAfter working on the PyMOL-based interface for some time we decided to change strategy and provide an integrated molecular viewer/editor along with the GUI. The reasons for this were as follows:
We are now using the Visualisation Tool Kit (VTK) [5] This has the disadvantage that it is a complicated piece of software in its own right and as an alternative a simpler viewer is being developed using the Python interface to OpenGL. FunctionaltyQM Calculation EditorAt present the GUI allows the set-up and visualisation of GAMESS-UK calculations using a variety of Hamiltonians, plus the generation of optimised structures, frequencies, molecular orbitals and charge densities. The control data for each calculation is managed using a notebook widget, which allows the control data associated with each area of GAMESS-UK functionality to be grouped together. The details of a QM calculation (including the results) can be saved to a file and restored for use in a new session.Internal Coordinate (Z-matrix editor)We have implemented a Z-matrix editor to allow the construction of internal coordinate definitions for use in quantum chemical calculations. The editor allows a molecule to be represented as a mixture of Z-matrix atoms (which are defined in terms of distances and angles to other atoms) and cartesian atoms, which are defined simply by their x-,y- and z-coordinates. Atoms can be cut, copied and pasted allowing re-ordering, and the internal and cartesian definitions changed. The changes are reflected in the viewer window.
A sample screen shot, showing internal coordinates and molecular orbitals of benzene The ChemShell (QM/MM) InterfaceThis is the result of the conversion of an interface written within Cerius-2 as part of the QUASI project into the CCP1GUI framework. It takes advantage of the QM and MM interface modules written to support use of these codes in a stand-alone fashion and uses the PyMOL atom selection tools to choose the QM region, optimisation domains etc. It currently supports calculations based on DL_POLY, GAMESS-UK, MNDO and MOPAC.
AvailabilityThe GUI is available on an open source basis from the project web page [6]. It is distributed on an open source basis and interested parties are invited to submit any developments back to the authors. References and Links[1] Python: http://www.python.org [2] PyMOL: http://www.pymol.org [3] CCP4: http://www.ccp4.ac.uk [4] Tkinter: http://www.python.org/topics/tkinter/ [5] vtk: http://www.kitware.com [6] Project home page: http://www.cse.clrc.ac.uk/Activity/CCP1GUI |