Examples of unix scripts for crystallographic programs

AMoRe


Tabling

amore xyzin1 ./model.pdb xyzout1 model_rot.pdb table1 model_sfs.tab << eof
TITLE : Produce table for MODEL FRAGMENT
VERBOSE
TABFUN
CRYSTAL abc alpha beta gamma
MODEL 1 BTARGET 23.5
SAMPLE 1 RESO 3.0 SHANN 2.5 SCALE 4.0
eof


Sorting

amore hklin ./reflection.mtz hklpck0 ./reflection.hkl << eof
TITLE ** spmi packing h k l F for crystal**
SORTFUN RESOL 100. 3.0
LABI FP=FP SIGFP=SIGFP
eof


Rotation function

amore table1 ./model_sfs.tab \
HKLPCK1 $CCP4_SCR/search.hkl \
hklpck0 ./reflection.hkl \
clmn1 $CCP4_SCR/search.clmn \
clmn0 $CCP4_SCR/spmipch.clmn \
MAPOUT $CCP4_SCR/amore_cross.map << eof
ROTFUN
VERB
TITLE : Generate HKLPCK1 from MODEL FRAGMENT 1
GENE 1 RESO 100.0 3.0 CELL_MODEL 80 75 65
CLMN CRYSTAL ORTH 1 RESO 20.0 4.0 SPHERE 30
CLMN MODEL 1 RESO 20.0 4.0 SPHERE 30
ROTA CROSS MODEL 1 PKLIM 0.5 NPIC 100
eof

Translation function

amore table1 ./model_sfs.tab \
HKLPCK0 ./reflection.hkl \
MAPOUT $CCP4_SCR/amore_transjunk1.map << eof
TRAFUN CB NMOL 1 RESO 8 4 PKLIM 0.5 NPIC 10
SYMM C2221
VERB
TITLE : Translation function C2221 - X molecule
#peaks from .tab file, make selection in that file and make sure to select appropriate peaks
SOLUTIONRC 1 23.88 73.73 346.87
SOLUTIONRC 1 121.47 75.97 210.33
SOLUTIONRC 1 48.06 82.00 332.22
SOLUTIONRC 1 138.64 58.09 231.80
SOLUTIONRC 1 56.95 63.48 335.20
SOLUTIONRC 1 86.69 68.60 215.26
SOLUTIONRC 1 117.59 84.42 136.55
SOLUTIONRC 1 94.95 80.39 31.10
SOLUTIONRC 1 62.35 90.00 314.27
eof

To repeat search for other molecules:
- copy solution TF from first TRAFUN script
- put it in the list of peaks as fixed.
- change NMOL to 2 and delete first SOLUTIONRC row now fixed with TF

amore table1 ./model_sfs.tab \
HKLPCK0 ./reflection.hkl \
MAPOUT $CCP4_SCR/amore_transjunk1.map << eof
TRAFUN CB NMOL 2 RESO 8 4 PKLIM 0.5 NPIC 10
SYMM C2221
VERB
TITLE : Translation function C2221 - X+1 molecule
SOLUTIONTF FIX 1 23.88 73.73 346.87 0.2393 0.4291 0.4187 14.0 52.6
SOLUTIONRC 1 121.47 75.97 210.33
SOLUTIONRC 1 48.06 82.00 332.22
SOLUTIONRC 1 138.64 58.09 231.80
SOLUTIONRC 1 56.95 63.48 335.20
SOLUTIONRC 1 86.69 68.60 215.26
SOLUTIONRC 1 117.59 84.42 136.55
SOLUTIONRC 1 94.95 80.39 31.10
SOLUTIONRC 1 62.35 90.00 314.27
eof

Fit solution to model

amore table1 ./model_sfs.tab \
HKLPCK0 ./reflection.hkl << eof
FITFUN NMOL 2 RESO 20 4.5
TITLE *** structure ***
SYMM C2221
VERBOSE
REFSOL AL BE GA X Y Z BF
SOLUTIONTF1 1 23.88 73.73 346.87 0.2393 0.4291 0.4187 14.0 52.6
SOLUTIONTF2 1 121.47 75.97 210.33 0.1506 0.0498 -0.1878 15.7 51.9
eof

AREAIMOL

Analyse solvent accessible areas 

rm area.brk
areaimol XYZIN junk.pdb \
XYZOUT area.brk <<eof-area
VERB ! Verbose output
OUTPUT ! Output pseudo-pdb file
END
eof-area

BUSTER

Various notes HERE

CAD 

Collect and sort reflection data from several files and generate a single set

cad hklin2 ./junkX1-unique.mtz hklin1 ./junkX2.mtz \
hklout jnk.mtz <<eof
LABIN FILE 2 E1=FreeR_flag
LABIN FILE 1 ALL
eof

CHAINSAW 

To create a template model for MR, pruning uncommon residues to the gamma atoms use the following:

chainsaw XYZIN model.pdb ALIGNIN alignm.pir XYZOUT model_chainsaw.pdb << eof
mode MIXS
eof

The MIXS keyword is the default, and it means that non-conserved residues are truncated to the gamma atom and conserved residues are preserved unchanged. Another mode is MIXA, which truncates non-conserved residues to the beta atom, and MAXI, which retains the maximal number of common atoms.

COMBAT

Create unmerged mtz file from unmerged .sca file

combat HKLIN ./junk_nomerge.sca HKLOUT ./junk_nomerge.mtz <<EOF
title [convert nomerge .sca to .mtz]]
symmetry P1
cell 100.212 100.218 294.109 90.001 89.995 90.001
scale 1.0
input SCAL_NM2
PNAME junk-P1
DNAME x
XNAME junk_x
end

DM


dm ncsin1 mon.msk hklin junk_MR_X1.mtz hklout dm.mtz << my-data
SOLC 0.67 #solvent content for scaling
MODE SOLV HIST AVER
COMBINE WEIGHT 0.2 #weight applied to the initial
# phasing in phase combination
NCYCLE 400
RESOL 3.1
SCHEME RES FROM 5.0 #perform phase extension in resolution steps
AVER REFI #Set a NCS symmetry averaging operator. This card is followed by rotation/translation matrices
ROTA POLAR 0.0 0.0 0.0
TRANS 0.0 0.0 0.0
AVER REFI
ROTATE MATRIX -
-0.87812340 0.02097644 -0.47797421 -
-0.02454020 -0.99969810 0.00121183 -
-0.47780451 0.01279372 0.87837303
TRANSLATION 64.658 30.355 58.695
LABIN FP=FP_X2 SIGFP=SIGFP_X2 PHIO=PHWT FOMO=FOM
LABOUT PHIDM=PHI_AVE FOMDM=FOM_AVE
my-data

EPMR


Make file cell.dat with values of unit cell and space group number in one line:
a b c alpha beta gamma space_group_number

Run as:
epmr cell.dat example.pdb example.mtz

To specify more than one input model pdb, make a text file containing the list of pdb files and specify this in the command line using @.
Example, to use x.pdb, y.pdb, and z.pdb, the text file models.filelist will look like this:
x.pdb
y.pdb
z.pdb

And on the command line I will use:
epmr cell.dat @models.filelist example.mtz


All options:
-m <integer>; the number of identical molecules in the asymmetric unit for which to search
-h <real_number>; high-resolution limit for diffraction data
-l <real_number>; low resolution limit for diffraction data
-p <integer>; population size (number of trial solutions generated in each cycle)
-g <integer>; number of 'generations' (cycles of optimization)
-n <integer>; number of runs (default value is 10)
-t <real_number>; threshold value of the correlation coefficient that indicates an acceptable solution (and which will stop the run) (default value is 0.45)
-T; translation only mode
-b <real_number>; minimum 'bump' distance - the smallest unpenalized distance between the center of mass of a solution and that of any symmetry mates
-w <integer>; quantity of solutions you want written out to PDB files
-o <name>; file name prefix for the output coordinate files
-s <name>; static partial structure flag
-S; do the initial structure factor calculation by direct summation rather than FFT
-e <integer>; set the seed value for the random number generator to a specific value

Link to manual and examples:
http://www.doe-mbi.ucla.edu/~sawaya/tutorials/Molrep/manuals/epmr_manual.html

FFT MAPMASK


#!/bin/csh
rm mlphare.map
fft HKLIN junkX1_25.mtz MAPOUT mlphare.map<<EOF
LABI F1=2FOFCWT PHI=PH2FOFCWT
!LABI F1=FOFCWT PHI=PHFOFCWT
END
EOF
mapmask mapin mlphare.map \
xyzin junkX1_25.pdb \
mapout x25.map <<eof
BORDER 5.
eof
rm mlphare.map
exit

iMOSFLM 

How to force imosflm to use the directory where it starts. Put the following in .bash_profile?

alias imosflm='MOSDIR=${PWD} imosflm'


LSQKAB


rm jnk.pdb
lsqkab xyzinf ./junk.pdb \
xyzinm ./junk_2.pdb \
xyzout jnk.pdb << END-lsqkab
title matching junk with junk_2
output XYZ
!fit RESIDU side 150 TO 179
!MATCH RESIDU 146 TO 175 CHAIN F
end
END-lsqkab
rm jnk.pdb
exit 

MATTHEWS COEFFICIENT


matthews_coef << eof
CELL a b c
symm number
molweight x
nmol y
AUTO
eof

MOLREP


molrep HKLIN junk_X1.mtz MODEL model.pdb << eor
LABIN F=FP_X1 SIGF=SIGFP_X1
NP 2 #peaks of the rotation function
NMON 2 #molrep can position the input number of monomers in a run
FILE_S junk.seq
compl .5 #completeness of the model: from 0.1 to 1.0
eor

for MOLREP /Vers 10.1.3; 12.07.2007/

molrep -f mtz-file.mtz # to calculate self-rotation function (mtz only needed)

molrep -f mtz-file.mtz -m model.pdb -i # -m is keyword for model, -i for interactive

MLPHARE/NATIVE PATTERSON


rm mlphare.map
fft HKLIN junk_X1.mtz MAPOUT mlphare.map<<EOF
LABI F1=FP_X1
PATTERSON #Calculate a Patterson map (Fourier is the default)
RESOL 4.0
END
EOF
peakmax mapin mlphare.map << eof
output pdb
eof
exit

MOSFLM


ipmosflm spotod jnk.spotod \
summary junk.sum \
<< eof-ipmosflm
scanner adsc
gain 0.4 #specifies the gain of the detector in pixel values per absorbed X-ray photon
synchrotron polar 0.99 #The polarisation of the beam
disp 0.00002 #Wavelength dispersion
wave 0.932
dist 250
beam 94.39 96.46
symmetry p65
matrix junk_1_001.mat
mosaic 0.8
ident junk_1
resolution 2.1
dire ./images
refinement fix roff toff
#fix: allows individual parameters to be kept fixed
#roff toff radial and tangential offsets). For very weak images, it may be
#best to fix ROFF and TOFF for images collected on Mar or Mac Science detectors
separation close
#The minimum separation (in mm) between spot centers in the detector X
#(slow) and detector Y (fast) directions
posteref fix all
#invokes post-refinement to refine missetting angles and cell with fix
#all only orientation angles will be refined
process 1 to 327 add 27000
#Value added to each image number to give the BATCH number in the output MTZ file
#This is important, as all batches MUST have a unique batch number for scaling and merging
HKLOUT junk_mos_X1.mtz
GO
END
eof-ipmosflm

MTZUTILS 


To CHANGE the spacegroup in the mtz:

mtzutils hklin1 now.mtz hklout corrected.mtz
SYMM corrrect_SG
end

PDBCUR

To remove ANISOU recored from pdb files:

pdbcur XYZIN model.pdb XYZOUT model_pdbcur.pdb << eof
NOANISOU
eof

PDBSET


pdbset xyzin input.pdb xyzout pdbset.pdb << eof
RENUMB 1 CHAIN W # to renumb chain W starting from 1
CHAIN B # to rename every chain to B
CHAIN A B #Rename chain A to B
EXCLUDE SIDE POLYALA # to create polyAla model
EXCLUDE HEADERS # to copy only HETATM and ATOM lines
EXCLUDE HYDROGENS # to exclude hydrogen atoms
EXCLUDE WATer or HOH # to exclude residues labelled WAT or HOH
eof

PHASER


phaser <<eof
MODE MR_AUTO
HKLIn junk_X1.mtz
LABIn F=F_X1 SIGF=SIGF_X1
ENSEmble mol PDB model.pdb IDENtity .50
SGALternative SELECT ALL # tests all possible space groups
!SGALternative HAND # tests the given space group and its enantiomorph
!SGALternative TEST <SG> # <SG> tests the give space group
COMPosition PROTein MW 50000 NUM 2 #50KDa, dimer in one asm
!COMPosition PROTein SEQUENCE seq.fa NUM 2 #50KDa, dimer in one asm
SEARch ENSEmble mol NUM 2
ROOT junk_X1
END
eof

PHENIX.REFINE

Various notes HERE

POINTLESS


For .sca output from scalepack use:

CELL a b c alpha beta gamma
SCAIN output.sca
HKLOUT output-pointless.mtz
SETTING SYMMETRY-BASED

POLARRFN


#!/bin/csh -f
polarrfn hklin reflection.mtz mapout tself.map plot self.plt << eof
TITLE T-PFK self-rotation R=29A, 5 - 7 A
SELF 29
RESOLUTION 7 5
CRYSTAL FILE 1 ORTH 1 BFAC -20 SYMMETRY P21
LABIN FILE 1 F=FP SIGF=SIGFP
MAP
PLOT 10 10
FIND 2 20 RMS OUTPUT peaks.dat
eof

Plot SRF file to a postscript

pltdev -i file.plt -o self.ps

REFMAC


Rigid body

#!/bin/csh -f
set inmtz=./junkX1-unique.mtz
set name = junkX1_
set last = 0
set cycles = 1
set count = 0
while ($count != $cycles)
@ curr = $last + 1
refmac5 \
HKLIN $inmtz \
HKLOUT ${name}${curr}.mtz \
XYZOUT ${name}${curr}.pdb \
XYZIN ${name}${last}.pdb \
<< eop
LABI FP=FP_X1 SIGFP=SIGFP_X1 FREE=FreeR_flag
LABO FWT=2FOFCWT PHWT=PH2FOFCWT DELFWT=FOFCWT PHDELWT=PHFOFCWT
REFI TYPE RIGI RESI MLKF RESO 20 4.5 ! Maximum likelihood refinement
Scaling parameters
#SCALe TYPE SIMPLE LSSCale ANISOtropic
SCAL TYPE BULK LSSC ANISO
!Rigid body parameters
RIGIdbody NCYCle 5 ! Number of cycles for rigid body refi
RIGIdbody GROUp 1 FROM 1 A TO 1000 A !EXCLU SCHAIns !
RIGIdbody GROUp 2 FROM 1 B TO 1000 B !EXCLU SCHAIns !
MONI MEDIUM
END
eop
if ($status) exit
@ last++
@ count++
end

Restrained refinement

#!/bin/csh -f
set inmtz=./junkX1-unique.mtz
set name = junkX1_
set last = 20
set cycles = 5
set count = 0
while ($count != $cycles)
@ curr = $last + 1
refmac5 \
HKLIN $inmtz \
HKLOUT ${name}${curr}.mtz \
XYZOUT ${name}${curr}.pdb \
XYZIN ${name}${last}.pdb \
LIB_IN ./library.lib \
TLSIN tls.in \
<< eop
LABI FP=FP_X1 SIGFP=SIGFP_X1 FREE=FreeR_flag
LABO FWT=2FOFCWT PHWT=PH2FOFCWT DELFWT=FOFCWT PHDELWT=PHFOFCWT
MAKE_restraints HYDRogens No LINK Y
MAKE CHECK NONE
!MAKE NEWLigand Noexit
REFI TYPE REST RESI MLKF RESO 15 1.70 ! Maximum likelihood refinement
SCALe LSSC ANIS RESO 15 1.70
REFI METH CGMAT
WEIG MATR 0.140
BLIM 1.0 100.0
REFI TLSC 5
BFACtor SET 25.0
NCSRestr NCHAins 2 CHAIns A B NSPANS 6 3 99 1 110 202 1 204 317 1 319 496 1 600 600 1 601 601 1
NCYC 3
MONI MEDIUM
END
eop
if ($status) exit
@ last++
@ count++
end

Refmac and arp/warp

!/bin/csh -f
set inmtz = ./junkX1-unique.mtz
set name = junkX1_
set last = 1
set cycles = 2
set count = 0
set title = 'junkX1'
set cell = 'a b c alfa beta gamma'
set xyzlim = '0. 0.25 0.0 1.0 0.0 1.0'
set symm = 'C222'
while ($count != $cycles)
@ curr = $last + 1
refmac5 \
HKLIN $inmtz \
HKLOUT ${name}${curr}.mtz \
XYZOUT ${name}${curr}.pdb \
XYZIN ${name}${last}.pdb \
LIB_IN ./junk.lib \
#TLSIN tls.in \
<< eop
LABI FP=FP_X1 SIGFP=SIGFP_X1 FREE=FreeR_flag
LABO FWT=2FOFCWT PHWT=PH2FOFCWT DELFWT=FOFCWT PHDELWT=PHFOFCWT
MAKE_restraints HYDRogens No LINK Y
MAKE CHECK NONE
!MAKE NEWLigand Noexit
REFI TYPE REST RESI MLKF RESO 15 1.70 ! Maximum likelihood refinement
REFI METH CGMAT
WEIG MATR 0.140
BLIM 1.0 100.0
SCALe LSSC ANIS RESO 15 1.70
!REFI TLSC 5
!BFACT SET 30.0
NCSRestr NCHAins 2 CHAIns A B NSPANS 6 3 99 1 110 202 1 204 317 1 319 496 1 600 600 1 601 601 1
NCYC 3
MONI MEDIUM
END
eop
fft HKLIN ${name}${curr}.mtz MAPOUT ${name}${curr}_21.map << e
TITLE 2FO-1FC
LABIN F1=2FOFCWT PHI=PH2FOFCWT
END
eop

mapmask MAPIN ${name}${curr}_21.map MAPOUT ${name}${curr}_21.ext << e
XYZLIM ${xyzlim}
END
eop

/bin/rm ${name}${curr}_21.map
fft HKLIN ${name}${curr}.mtz MAPOUT ${name}${curr}_11.map << e
TITLE 1FO-1FC
LABIN F1=FOFCWT PHI=PHFOFCWT
END
eop

mapmask MAPIN ${name}${curr}_11.map MAPOUT ${name}${curr}_11.ext << e
XYZLIM ${xyzlim}
END
eop

/bin/rm ${name}${curr}_11.map
arp_waters_fad XYZIN ${name}${curr}.pdb \
MAPIN1 ${name}${curr}_21.ext \
MAPIN2 ${name}${curr}_11.ext XYZOUT TMP.RES << e
MODE UPDATE WATERS
CELL ${cell}
SYMM ${symm}
!REMOVE ATOMS 20 ANALYSE WATERS CUTSIGMA 1.0 MERGE 2.2
REMOVE ATOMS 20 CUTSIGMA 1.0 MERGE 2.2
FIND ATOMS 30 CHAIN W CUTSIGMA AUTO
!FIND ATOMS 30 CHAIN W CUTSIGMA 3.0
!FDISTANCE NEWOLD 2.3 3.5 NEWNEW 2.3
REFINE WATERS
RESOLU 15 1.70
END

/bin/rm ${name}${curr}_21.ext
/bin/rm ${name}${curr}_11.ext
/bin/rm ${name}${curr}.pdb
cp header.pdb ${name}${curr}.pdb
cat TMP.RES >> ${name}${curr}.pdb

@ last++
@ count++
end

REINDEX


mtzutils hklin1 scal1.mtz hklout scal2.mtz
symm SGname
end

SCALEPACK


/usr/local/bin/scalepackmanyframes <<EOF
number of zones 10
[default scale 10]
estimated error
0.06 0.06 0.06 0.06 0.06
0.06 0.06 0.06 0.06 0.06
0.06 0.06 0.06 0.06 0.06
error scale factor 1.65
write rejection file 0.90
rejection probability 0.0001
[@reject]
postrefine 25
fit crystal a* 1 to 240
fit crystal b* 1 to 240
fit crystal c* 1 to 240
fit batch rotx 1 to 240
fit batch roty 1 to 240
fit batch rotz 1 to 240
fit crystal mosaicity 1 to 240
add partials 1 to 240
space group P1
[unit cell 100.212 100.218 294.109 90.001 89.995 90.001]
unit cell 100.212 100.218 294.109 90.001 89.995 90.001
reference batch 1
resolution 50.0 3.0
format denzo_ip
[anomalous]
no merge original index #to produce unmerged .sca file
ignore overloads
sector 1 to 240
file 1 '../junk_junk_x_M_###.x'
output file 'junk_x_P1_nomerge.sca'
EOF

SCALEPACK2MTZ


#!/bin/sh
set -e
scalepack2mtz hklin ./output.sca \
hklout ./junk1.mtz << eof
name proj ... crys ... data ...
anomalous no
symm 170
end
eof
# convert Is to Fs and Ds.
truncate hklin ./junk1.mtz \
hklout ./junk2.mtz << eof
title ...
truncate yes
nresidue ...
labout F=FP SIGF=SIGFP
eof
# get correct sort order and asymmetric unit
cad hklin1 ./junk2.mtz hklout ... << eof
labi file 1 ALL
sort H K L
end
eof
#

SCULPTOR (phenix.sculptor)


input {
  model {
    file_name = YOURFILE.pdb
    selection = all
    remove_alternate_conformations = True
    sanitize_occupancies = True
  }
  alignment {
    file_name = YOURFILE.pir
    target_index = 1
  }
  sequence {
    file_name = None
    chain_ids = None
  }
}
output {
  job_title = None
  folder = .
  root = sculpt
  format = *pdb coot
}
macromolecule {
  deletion {
    use = completeness_based_similarity remove_long \
          threshold_based_similarity *gap
    completeness_based_similarity {
      offset = 0.0
      calculation {
        matrix = *blosum50 blosum62 dayhoff identity
        window = 5
        weighting = *triangular uniform
      }
    }
    remove_long {
      min_length = 3
    }
    threshold_based_similarity {
      threshold = -0.2
      calculation {
        matrix = *blosum50 blosum62 dayhoff identity
        window = 5
        weighting = *triangular uniform
      }
    }
    gap {
    }
  }
  polishing {
    use = remove_short keep_regular
    remove_short {
      minimum_length = 3
    }
    keep_regular {
      maximum_length = 1
    }
  }
  pruning {
    use = *schwarzenbacher similarity
    schwarzenbacher {
      pruning_level = 2
    }
    similarity {
      pruning_level = 2
      full_length_limit = 0.2
      full_truncation_limit = -0.2
      calculation {
        matrix = *blosum50 blosum62 dayhoff identity
        window = 5
        weighting = *triangular uniform
      }
    }
  }
  bfactor {
    use = asa *original similarity
    minimum = 10
    asa {
      factor = 2
      precision = 960
      probe_radius = 1.4
    }
    original {
      factor = 1
    }
    similarity {
      factor = -100
      calculation {
        matrix = *blosum50 blosum62 dayhoff identity
        window = 5
        weighting = *triangular uniform
      }
    }
  }
  completion = *cbeta
  renumber {
    use = model *target original
    start = 1
  }
  rename = True
  keep_ptm_if_base_residues_agree = False
}
hetero = None
min_hssp_length = 6
min_matching_fraction = 0.4

SFTOOLS


To get COMPLETENESS

sftools <<EOF
read your.mtz
complete shells 100
quit
EOF

SOLVE/RESOLVE

Look at THIS PAGE

SORTMTZ AND SCALA


#! /bin/csh -f
#
# SORT
#
sortmtz hklout junk_sort_X1.mtz << EOF_sort
H K L M/ISYM BATCH
junk_mos_X1.mtz
EOF_sort
#
# SCALA
#
scala HKLIN junk_sort_X1.mtz HKLOUT junk_scala_X1.mtz << EOF
!resolution 100 2.5
run 1 batch 001 to 090
scales batch bfactor on
intensities partial
EOF
exit

TRUNCATE


rm junk.mtz
truncate hklin junk_scala_X1.mtz hklout junk_X1.mtz << eof
title xxxyyy
LABOUT F=FP_X1 SIGF=SIGFP_X1
nres 1000
eof
exit

UNIQUEIFY


uniqueify -p .03 junk_X1.mtz
#to exclude 3% of the reflections
#or to exclude the same reflections from a different data set (X2 in the example below)
rm jnk.mtz
cad hklin1 junk_X1.mtz hklin2 ./junk_X2-unique.mtz \
hklout jnk.mtz <<eof-cad
LABIN FILE 1 ALL
LABIN FILE 2 E1=FreeR_flag
LABOUT ALLIN
eof-cad
#
$CCP4/etc/uniqueify -f FreeR_flag jnk.mtz
rm jnk.mtz
mv jnk-unique.mtz junk_X1-unique.mtz
exit

XDS


XDS.INP

JOB= ALL !XYCORR INIT COLSPOT IDXREF DEFPIX XPLAN INTEGRATE CORRECT
!JOB= DEFPIX XPLAN INTEGRATE CORRECT
!JOB= CORRECT

DATA_RANGE= 1 570
SPOT_RANGE= 1 20
SPOT_RANGE= 1 4
!SPOT_RANGE= 567 570
BACKGROUND_RANGE= 1 4

SECONDS=60
MINIMUM_NUMBER_OF_PIXELS_IN_A_SPOT= 6
STRONG_PIXEL= 6.0

OSCILLATION_RANGE= 0.200
STARTING_ANGLE= 90.000
STARTING_FRAME= 1
X-RAY_WAVELENGTH= 0.93927
NAME_TEMPLATE_OF_DATA_FRAMES= ../frames/frame_name_x_????.img

!STARTING_ANGLES_OF_SPINDLE_ROTATION= 0 180 10
!TOTAL_SPINDLE_ROTATION_RANGES= 60 180 10

DETECTOR_DISTANCE= 305.03
DETECTOR= ADSC MINIMUM_VALID_PIXEL_VALUE= 1 OVERLOAD= 65000
ORGX= 1570.29 ORGY= 1549.60
NX= 3072 NY= 3072 QX= 0.10260 QY= 0.10260
VALUE_RANGE_FOR_TRUSTED_DETECTOR_PIXELS= 7000 30000

DIRECTION_OF_DETECTOR_X-AXIS= 1.0 0.0 0.0
DIRECTION_OF_DETECTOR_Y-AXIS= 0.0 1.0 0.0
ROTATION_AXIS= 1.0 0.0 0.0
INCIDENT_BEAM_DIRECTION= 0.0 0.0 1.0
FRACTION_OF_POLARIZATION= 0.98
POLARIZATION_PLANE_NORMAL= 0.0 1.0 0.0
!== Default value recommended
!AIR= 0.00027368

SPACE_GROUP_NUMBER= 0
UNIT_CELL_CONSTANTS= 0 0 0 0 0 0
INCLUDE_RESOLUTION_RANGE= 50.0 0.0
!RESOLUTION_SHELLS= 15.0 8.0 4.0 2.8 2.4
!FRIEDEL'S_LAW= FALSE

FRIEDEL'S_LAW= TRUE
TRUSTED_REGION= 0 1.40

REFINE(INTEGRATE)= BEAM ORIENTATION CELL
!== Default value recommended
!DELPHI= 0.600
MAXIMUM_NUMBER_OF_PROCESSORS= 16
!MAXIMUM_NUMBER_OF_JOBS= 16

XSCALE.INP

OUTPUT_FILE=XDS_ASCII-run1-run2_merged.ahkl !at minimum of f'
INPUT_FILE= ../run1/XDS_ASCII.HKL
INPUT_FILE= ../run2/XDS_ASCII.HKL

XDSCONV.INP

INPUT_FILE=XDS_ASCII.HKL
!INCLUDE_RESOLUTION_RANGE=50 2.6! optional
OUTPUT_FILE=temp.hkl CCP4 ! Warning: do _not_ name this file "temp.mtz" !
FRIEDEL'S_LAW=FALSE ! default is FRIEDEL'S_LAW=TRUE

XDS final polishing (http://strucbio.biologie.uni-konstanz.de/xdswiki/index.php/Optimisation#Final_polishing)

cp GXPARM.XDS XPARM.XDS
mv CORRECT.LP CORRECT.LP.old
egrep -v 'JOB|REIDX' XDS.INP > XDS.INP.new
echo "! JOB=XYCORR INIT COLSPOT IDXREF DEFPIX INTEGRATE CORRECT" > XDS.INP
echo "JOB=INTEGRATE CORRECT" >> XDS.INP
echo NUMBER_OF_PROFILE_GRID_POINTS_ALONG_ALPHA/BETA=13 >> XDS.INP ! default is 9
echo NUMBER_OF_PROFILE_GRID_POINTS_ALONG_GAMMA=13      >> XDS.INP ! default is 9
cat XDS.INP.new >> XDS.INP
xds_par