Peter Briggs, Francois Remacle, Martyn Winn, Charles Ballard
CCP4, Daresbury Laboratory, Warrington WA4 4AD, UK
CCP4i is the CCP4 graphical user interface. The last officially released (and still current) version of the interface is 1.3.19, which is included as part of CCP4 5.0.2. Some of the significant changes and updates in that version included:
There were also many bug fixes and other minor improvements.
Since then further work has been done on the interface, and this article outlines the major changes in the next (currently officially unreleased) version of CCP4i, version 1.4.0. CCP4i 1.4.0 will be available in the next release of CCP4, version 6.0.
There are a number of significant new task interfaces in CCP4i 1.4.0:
Crank is a suite of programs for automated macromolecular structure solution, which has been developed at the University of Leiden in the Netherlands and which makes extensive use of the CCP4i infrastructure. Currently Crank supports SAD, SIR and SIRAS experiments (MAD and MIR(AS) are being added) and makes use of various new and existing programs, including BP3, SHELX and various CCP4 programs.
Crank is a fully functional suite and allows the solution of macromolecular structures up to the point of density modification. At the same time it has also been designed to help teach novice users about the various programs used in crystallography (a so-called "translucent box" design). It can be found as part of the "Experimental Phasing" module in CCP4i.
shelx_cde is a new CCP4i interface to the Goettingen SHELX programs and facilitates running various combinations of SHELX C, D and E. The task takes either SCALEPACK format reflection files (note that the SCALA task can now output SCALEPACK-style files that are suitable for input into SHELX and SOLVE, amongst others) or MTZ files containing intensities (preferred) or structure factor amplitudes) as input.
The task can be used to run the programs in a "pipeline" fashion from data preparation through heavy atom site location to density modification and hand determination, and generates useful plots from the output of each program. It can also output the phases for each hand in MTZ format.
There are also interfaces to accompany the new programs PHASER (in the "Molecular Replacement" module), BP3 (in "Experimental Phasing"), PIRATE (in "Density Modification") and Clipper utilities (which have their own new module). There is also a new task which enables the CCP4 molecular graphics package CCP4mg to be launched from within CCP4i (in the "Viewing and Graphics Utilities" module).
In addition there are updates to a number of other tasks, for example the Accessible Surface Area (areaimol), Cell Content Analysis (matthews), Edit PDB (pdbset/pdbcur) and others, in order to accommodate new functionality available in the underlying CCP4 programs.
Another change in CCP4i 1.4.0 is that you may notice that the text on the buttons for certain tasks are "greyed out", and that the tasks themselves cannot be launched (for example, PHASER or SHELX). This is because the underlying software that the task uses is not available (for example, the SHELX programs are not installed on your path). In this case you should check the CCP4i documentation to find out which programs are missing, and how to install them. Once the required software is installed CCP4i will automatically detect it and make the task available again.
CCP4i 1.4.0 includes some new tools that will be useful to long-term users of the interface: Database Search/Sort Utility, Job Database Display Colour Customisation and CCP4i project shortcuts. Each of these is described in the following sections:
This is a powerful new utility that allows the user to search and sort the contents of the current project database. Searching can be performed using various criteria, including:
Different searching and sorting criteria can be combined to easily perform powerful searches on the contents of the job database, and the database utility tools from the main window (e.g. Rerun job, Delete/Archive etc) are also available in the search window, as can be seen in the screenshot in figure 1.
This utility should be very valuable when reviewing the contents of the job database, and is accessed from the Search/Sort button in the utilities menu on the right-hand side of the main CCP4i window.
Figure 1: An example of the job database search & sort utility window, showing the results of a query
Traditionally the job database display in CCP4i has consisted of a flat "black-on-grey" colour scheme. This new feature allows users to customise the display by choosing their own background and text colour schemes. A default colour scheme can be set for the entire display, while further customisation allows jobs to be displayed in different colours based on various criteria (for example, job status or task name).
An example of a custom colour scheme is shown in figure 2a (below left), where colouring is by job status. This functionality is useful in helping to distinguish between different jobs in a single database. The customisation options can be accessed from the "Configure interface" window (see example in figure 2b, below right), which is launched from the "System Administration" button on the right-hand side of the main CCP4i window.
Figure 2a: An example of the job database coloured using custom settings
Figure 2b: Setting the custom colours in the "Configure Interface" window
This is accessed via a new menu button labelled "Change Project", located in the top right-hand corner of the main CCP4i window, next to the "help" button. Clicking on this button brings up a list of the available projects (with the current project in italics), as shown in figure 3 (right) - selecting a project name closes the current project and opens the new one.
This shortcutting avoids the need to bring up the "Directories&ProjectDir" window each time the user wants to change between projects. It is still necessary to access this window if you want to create a new project.
Figure 3: An example of the list of available projects accessed from the "Change Project" menubutton
MapSlicer is now able to read in CCP4 format mask files and display them in "mask" mode (figure 4a, below left). It can also render sections from normal maps in a "greyscale" format, viewed with or without contours overlaid (figure 4b, below right).
MapSlicer also nows retains the user settings for contour levels, view orientation and other parameters between runs of the program, making it easier to customise the program for frequent use.
Figure 4a: Mapslicer operating in "mask" mode.
Figure 4b: Greyscale display with contours overlaid in MapSlicer.
The Run remote job function can now use either ssh or rsh to run jobs on remote machines - this is significant as the use of rsh is increasingly being deprecated by computer managers.
In addition to a large number of bug fixes, we have attempted to address some of the minor problems reported by users of the interface. These include:
Figure 5: Help topics accessible from main CCP4i help
There have been a number of improvements for developers who are working with CCP4i:
Some issues still remain to be addressed, particularly with regard to handling information relating to crystals and datasets in MTZ headers.There are also some ongoing issues with CCP4i operating under Windows, where dealing with file and path names which contain space characters continues to be a problem.
CRANK is being developed by Steven Ness at the University of Leiden by Steven Ness. The CRANK website can be found at http://www.bfsc.leidenuniv.nl/software/crank. Steven Ness also developed the interface to BP3.
The shelx_cde interface was written by Peter Briggs but draws heavily on the hkl2map interface of Thomas Schneider and Thomas Pape. The SHELX suite of programs are not part of CCP4 and more information (including details of how to obtain them) can be found at http://shelx.uni-ac.gwdg.de/SHELX/.
The interfaces for PHASER have been developed by Anne Baker and Airlie McCoy, with input from Peter Briggs.
Francois Remacle implemented the Database Search and Sort tool, the job display colour customisation and the project switching functionality, with input from other Daresbury programmers.
Liz Potterton contributed code to ensure compatibility with CCP4mg, including the launcher for CCP4mg.
CCP4i is maintained and developed by the Daresbury CCP4 staff (Peter Briggs, Martyn Winn, Charles Ballard, Francois Remacle, Norman Stein and Dan Rolfe) who contributed other fixes and developments. Please send questions, requests and bug reports to us at firstname.lastname@example.org.
Peter Briggs (email@example.com)