Scaling with SCALA (or better: aimless)

From XDSwiki
Revision as of 13:46, 22 November 2007 by ClemensVonrhein (talk | contribs)
Jump to navigation Jump to search

An example script to convert XDS_ASCII.HKL into a CCP4 multi-record MTZ file is:

#!/bin/csh -f
#
# Scale data from XDS
#
combat hklin XDS_ASCII.HKL hklout junk.mtz << end-combat
MONITOR 10000
INPUT XDSASCII
ADDBATCH 200             # optional: modify batch numbers
TITLE   Test combat
NAME PROJECT myproject CRYSTAL mycrystal DATASET native
END
end-combat

sortmtz hklout junk_sort.mtz  << end-sort
H K L M/ISYM BATCH I SIGI
junk.mtz
end-sort

scala hklin junk_sort.mtz hklout junk_scaled.mtz << end-scale
# scale using default parameters
run 1 batch 1 to 1000
scales rotation spacing 5 bfactor off
anomalous on
end-scala

truncate  hklin  junk_scaled.mtz \
          hklout junk_truncated.mtz <<end-trunc
anomalous yes
nresidue   1049
labout  F=FP SIGF=SIGFP DANO=DANO_sulf SIGDANO=SIGDANO_sulf
end-trunc

In this way one gets the well-known outputs of SCALA and TRUNCATE.


The equivalent XDSCONV.INP (recommended) would be just:

INPUT_FILE=XDS_ASCII.HKL
INCLUDE_RESOLUTION_RANGE=50 1  ! optional 
OUTPUT_FILE=temp.hkl  CCP4    FRIEDEL'S_LAW=FALSE

(XDSCONV picks up space group and cell parameters from XDS_ASCII.HKL.) After running XDSCONV one would then run

f2mtz HKLOUT temp.mtz<F2MTZ.INP
cad HKLIN1 temp.mtz HKLOUT junk_truncated.mtz<<EOF
LABIN FILE 1 E1=FP E2=SIGFP E3=DANO E4=SIGDANO
LABOUT FILE 1 E1=FP E2=SIGFP E3=DANO_sulf E4=SIGDANO_sulf
END
EOF

Another way of going from a XDS formatted reflection file to a MTZ file is via the pointless program by Phil Evans:

Scaling and Assessment of Data Quality, Philip Evans, Acta Cryst D 62, 72-82.

(see also "Running Pointless and Scala").

pointless -copy xdsin XDS_ASCII.HKL hklout XDS_ASCII.mtz

The advantage of this route is, that the batch headers of the resulting MTZ file are correct - COMBAT doesn't seem to write complete and accurate headers. If one then needs to edit the batch information in this file, the CCP4 program REBATCH can be used (optional):

rebatch hklin XDS_ASCII.mtz hklout XDS_ASCII_rebatch.mtz <<end_ip
BATCH ALL START 1001
BATCH ALL PNAME Lysozyme XNAME Hg-Soak DNAME peak
end_ip
sortmtz hklout sortmtz.mtz <<end_ip
H K L M/ISYM BATCH
XDS_ASCII_rebatch.mtz
end_ip

Note: another program to work with those multi-record MTZ files is REINDEX.