Collaborative Computational Project No. 4
Software for Macromolecular X-Ray Crystallography

PJB's CCP4 Projects

This page gives an overview of the projects that I was working on, with links to relevant documents that might be of use.

Smartie & Baubles

The source code for both are now in the main CCP4 CVS repository, in the subdirectory $CCP4/share/smartie/.

There are a limited set of unit tests for smartie in the test directory; there are also a number of example logfiles (many of them pathological) in the the logfiles subdirectory.

There is also documentation for smartie in the smartie directory - one is an overview, the other is pydoc-generated.

There are some examples of bauble-ised files on the web at:

and a guide for developers wishing to add appropriate markup to their logfiles:

There are also newsletter articles:

Database Handler dbccp4i

The source code for dbccp4i is now in the main CCP4 CVS repository, in the subdirectory $CCP4/share/dbccp4i/. This area contains the handler code plus the client APIs, applications and documentation.

A technical overview document is under development (see bugzilla #1893).

Note that this came out of the BIOXHIT project, see below.


CCP4's contribution ended at the end of June 2008. There are various documents on the CCP4 website pertaining to the project, most significantly various files relating to the CCP4 deliverables. These can be found at:

There are also private "developer's" pages:

To access these the username is bioxhit and the password is tihxoib. They are unlikely to be of much use or interest now that the project is over however.


The autobuild scripts live in a CVS repository called auto-build in /ccpdisk/xtal/CVSROOT.

There are various pieces of associated documentation:

In the auto-build CVS archive there is an autobuild.html document (in the html subdirectory) which has comprehensive and detailed information on the mechanics of how the scripts work and how to update them. The last updated version from Pete is available here.

There is also a long-standing bug in the builds on dlpx1 regarding Phaser/CCTBX, which has never been resolved:

The autobuilds have passed over to Graeme Winter for day-to-day monitoring and maintenance.

Website Update

There are the following bugs relating to specific improvements that could be made to the CCP4 website:

There are also documents relating to the work that Francois and I did on this:

Java Loggraph JLogView

This is principally Francois' project. There is information about the program in Bugzilla:

Essentially the code is currently in a branch in $CPROG. Baubles has been updated to use JLogView in preference to JLogGraph if it is found installed in $CBIN. The bug outlines how to modify CCP4i to use JLogView instead of loggraph but no modifications have been made to the actual code.


Some potentially useful general documents are available here:

In addition there are some random pages that might be of interest to local developers:

There is also a "plans" document available locally:

This has largely been superseded but may be of historical interest.

Other programs: MTZMAN and the hierarchical MTZ Viewer

This is something of a curiosity - the plan was to develop a viewer for MTZ files that shows the crystal, dataset and column data in a tree-like form, and then to offer editing facilities such as adding and removing crystals and datasets, moving columns between datasets and so on.

The hierarchical viewer code provides the graphical front-end:

The (C)MTZMAN program was intended to provide the back-end that would actually do the work of modifying the MTZ file(s):

Both were under sporadic development, although it should be possible to install and run both the viewer and CMTZMAN programs quite easily:

Note that both install steps assume that the CCP4 environment has already been set up.

CMTZMAN contains a number of library-like C functions for MTZ data structure manipulation, which might have been considered for incorporation into the core CCP4 libraries.

The hierarchical viewer has not been worked on for some time and may have come adrift from the current version of CCP4i. For best results, use in conjunction with CCP4 6.0.2.

General Stuff

My federal id is pjb93, my UNIX username is pjx.

My CCP4 personal pages have a lot of stuff in them, although it's not particularly well organised: