Commonly used program options

There are a number of program options used on a daily basis in xia2, which are:

atom=X tell xia2 to separate anomalous pairs i.e. I(+) \(\neq\) I(−) in scaling
pipeline=2d tell xia2 to use MOSFLM and Aimless
pipeline=3d tell xia2 to use XDS and XSCALE
pipeline=3dii tell xia2 to use XDS and XSCALE, indexing with peaks found from all images
pipeline=dials tell xia2 to use DIALS and Aimless
xinfo=some.xinfo modified.xinfo use specific input file
image=/path/to/an/image.img process specific scan
small_molecule=true process in manner more suited to small molecule data
space_group=sg set the spacegroup, e.g. P21
unit_cell=a,b,c,α,β,γ set the cell constants

Resolution limits

The subject of resolution limits is one often raised - by default in xia2 they are:

  • \(CC_{\frac{1}{2}} > 0.5\)
  • Merged \(\frac{I}{\sigma_I} > 1\)
  • Unmerged \(\frac{I}{\sigma_I} > 0.25\)

However you can override these with cc_half=..., misigma=..., isigma=...

Phil parameters


We have now moved towards moving PHIL (Python-based Hierarchial Interchange Language) for specifying xia2 program parameters, which will in the long run help the documentation, but in the mean time you may see some warnings as certain parameters were changed from -param style parameters to param= style PHIL parameters. If you see, e.g.:

Warning: -spacegroup option deprecated: please use space_group='P422' instead

Warning: -resolution option deprecated: please use d_min=1.5 instead

Command line option -3d is deprecated. Please use pipeline=3d instead

don’t panic - this is to be expected - but you may want to change the way you run xia2 or your scripts. More of a warning for beamline / automation people! The outcome of this should however be automated generation of command-line documentation and the ability to keep “recipes” for running xia2 in tidy files.

Here is a comprehensive list of PHIL parameters used by xia2:

general {
  backstop_mask = None
xds {
  keep_outliers = False
  correct {
  integrate {
  init {
  defpix {
  index {
    max_wedge_size = 5
    max_wedge_size_degrees = None
  colspot {
  xscale {
  merge2cbf {
dials {
  outlier {
  find_spots {
    filter_ice_rings = False
  index {
    method = fft1d *fft3d real_space_grid_search
    max_cell_estimation {
xia2.settings {
  pipeline = 2d 2di 3d 3dd 3di 3dii *dials
  project = 'AUTOMATIC'
  crystal = 'DEFAULT'
  input {
    atom = None
    anomalous = Auto
  space_group = None
  unit_cell = None
  resolution {
    keep_all_reflections = Auto
    d_max = None
    d_min = None
    cc_half_method = *half_dataset sigma_tau
    labels = None
  multiprocessing {
    nproc = Auto
  symmetry {
    chirality = chiral nonchiral centrosymmetric
    program = *pointless dials