i2run is a mechanism for running CCP4i2 tasks and pipelines from the command line.
Tasks can be run so that they are recorded into a user’s project database, recorded into some other database or executed without reference to a database
Firstly because the prosmart_refmac pipeline allows you to do much more. In the same command line you can, for example, provide a reference PDB to which prosmart restraints will be calculated, and trivially add waters afterwards
Secondly because your job is now organised without book keeping: one command line has sorted out how to store and name the output files so that they can readily be reused. It has also provided you with a nice digested report that is (arguably) even easier to analyse than a refmac log file !
Okay, so what if I want to run a job using an input MTZ file that does not use the standard mtz column labels used by CCP4i2 ?
Well, we've got your back. For example, if observed reflection data are stored in an MTZ file with non canonical column labels, you just add a “columnLabels=” subdirective in the readily understood clipper syntax. In this case you specify the path to the input reflection file using the “fullPath=” directive
To find the keyword options available for a particular task or pipeline, simply issue an i2run command, specifying the name of the pipeline and giving the “-h” flag
Because the syntax to define a particular set of parameters for an i2 executable cna be complicated
(which is, after all, why we provide a GUI), there is a mechanism to allow you to configure a run in the GUI
and discover the corrsponding i2run command. Because this is a sophisticated option it is not exposed by default
and requires a user to “Right click” on the toolbar to control which buttons are visible. Enable the button
“Show i2run command”. Now, your toolbar should include an extra button (Fig. 1)
Figure 1. Show i2run command button in CCP4i2 toolbar¶
With this option now available, you can configure a task to run in the GUI and, if the corresponding task is
selected in the task list, clicking the “Show i2run command” button will pop up a modal dialog showing the exact
i2run command which would run the equivalent job (Fig.2)
Figure 2. i2run command for a task configured in the GUI¶
This text can be copied and pasted into a script to run the command from the command line. It can also be edited
to modify, e.g. selecting different input files, or different control parameter values.
CCP4i2 uses some special data classes, which present a challenge to specifying on the command line. An example is the CEnsemble data structure which represents one or more models, each formed of one or more related sets of coordinate, to be used in moleculr replacement. i2run handles these challenges by using subdirectives to address the different elements of the underlying data structure. While hard to say, this is relatively easy to illustrate. Here is an i2run command which specifies a set of ensembles to use in the phaser expert task to solve beta blip
But it is also possible to use a file that already exists within the database by using a reference to a job number and parameter name where it was created/used with the syntax jobNumber. paramName :
A negative jobNumber indicates a relative job number, e.g. a jobNumber of -1 refers to the previous job in the project
If the file was an element of an output list (as is the case for tasks which can produce multiple outputs, such as multiple datasets output from AIMLESS), then you can use array-style indexing to specify which element to choose:
A subset of CCP4i2 tasks (e.g. list) allow for the task to run on a specified subset of an input coordinate file. To specify this subset on the command line use the “selection/text=” subdirective on a coordinate file specification. Selections are provided in the mmdb syntax:
Several CCP4i2 tasks (e.g. phaser, buccaneer, parrot) use a special file (file.asucontent.xml) to specify the expected contents of the asymmetric unit. These files can be created by a dedicated task using i2run…