Scaling with SCALA (or better: aimless)

From XDSwiki
Revision as of 10:30, 19 November 2007 by Kay (talk | contribs)
Jump to navigation Jump to search

An example script to convert XDS_ASCII.HKL into a 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 output of [http://www.ccp4.ac.uk/html/truncate.html TRUNCATE ].

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

INPUT_FILE=XDS_ASCII.HKL  XDS_ASCII 50 1
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