Xdsconv: Difference between revisions

1,842 bytes added ,  18 July 2009
no edit summary
mNo edit summary
No edit summary
Line 1: Line 1:
[http://www.mpimf-heidelberg.mpg.de/~kabsch/xds/html_doc/xdsconv_parameters.html XDSCONV] is the conversion program of the [[XDS]] suite.
[http://www.mpimf-heidelberg.mpg.de/~kabsch/xds/html_doc/xdsconv_parameters.html XDSCONV] is the conversion program of the [[XDS]] suite.


Possible output formats are SHELX, CNS, CCP4 (for F SIGF DANO SIGDANO), CCP4_F (for F+ F- SIGF+ SIGF-) and CCP4_I (for I+ I- SIGI+ SIGI-).
Possible output formats are SHELX, CNS, CCP4 (for F SIGF DANO SIGDANO), CCP4_F (for F+ F- SIGF+ SIGF-) and CCP4_I (for I+ I- SIGI+ SIGI-).  
 
----
XDSCONV does outlier rejection in some modes.
== Typical use ==
A typical input file XDSCONV.INP might look like
A typical input file XDSCONV.INP might look like
  INPUT_FILE=XDS_ASCII.HKL
  INPUT_FILE=XDS_ASCII.HKL
Line 14: Line 16:
  END
  END
  EOF
  EOF
This latter step is not necessary for CNS and SHELX output formats, which are written directly by XDSCONV. For these output formats, one might use MERGE=FALSE to keep observations separate.
This latter step is not necessary for CNS and SHELX output formats, which are written directly by XDSCONV. For the CNS output format, one could use MERGE=FALSE to keep observations separate. For the SHELX output format, MERGE=FALSE is the default (I guess because George Sheldrick suggests that his programs, in particular [http://strucbio.biologie.uni-konstanz.de/ccp4wiki/index.php/XPREP XPREP], should be fed unmerged data. However I sometimes found that I obtain better SHELXD results with merging inside XDSCONV, using MERGE=TRUE).


N.B. It is good practice to always use FRIEDEL'S_LAW=FALSE - see [[Tips and Tricks]].


=== how to change column labels ===
To have control over the column labels, one might want to modify the simple example above as:
To have control over the column labels, one might want to modify the simple example above as:


Line 30: Line 34:
In the case of a MTZ file that should be used for molecular replacement and refinement, the CAD step could be used to transfer the R_free flag from a different dataset to this new dataset. Alternatively, change of labels and transfer of columns can be done in the ccp4i GUI.
In the case of a MTZ file that should be used for molecular replacement and refinement, the CAD step could be used to transfer the R_free flag from a different dataset to this new dataset. Alternatively, change of labels and transfer of columns can be done in the ccp4i GUI.


----
== how to obtain a MTZ file with DANO SIGDANO F(+) SIGF(+) F(-) SIGF(-) ==
 
You have to run XDSCONV twice, and combine the output with cad. At the latter step you can also change the column labels:
XDSCONV does outlier rejection in some modes (FIXME: give formula and modes).
#!/bin/csh -f
 
# produce xds_allFinfo.mtz with FP SIGFP DANO SIGDANO F(+) SIGF(+) F(-) SIGF(-)
----
# in the same way, the labels produced with CCP4_I could be included!
 
#
It is good practice to always use FRIEDEL'S_LAW=FALSE - see [[Tips and Tricks]].
# first xdsconv run producing FP SIGFP DANO SIGDANO
 
echo "INPUT_FILE= XDS_ASCII.HKL" > XDSCONV.INP
----
echo "OUTPUT_FILE= temp.hkl CCP4" >> XDSCONV.INP
echo "FRIEDEL'S_LAW= FALSE" >> XDSCONV.INP
xdsconv
f2mtz HKLOUT temp1.mtz<F2MTZ.INP
# first xdsconv run producing FP SIGFP DANO SIGDANO
echo "INPUT_FILE= XDS_ASCII.HKL" > XDSCONV.INP
echo "OUTPUT_FILE= temp.hkl CCP4_F" >> XDSCONV.INP
echo "FRIEDEL'S_LAW= FALSE" >> XDSCONV.INP
xdsconv
f2mtz HKLOUT temp2.mtz<F2MTZ.INP
# for CAD, the 2 LABOUT cards are only required if the labels should be changed
cad HKLIN1 temp1.mtz HKLIN2 temp2.mtz HKLOUT xds_allFinfo.mtz<<EOF
  LABIN  FILE 1 E1=FP      E2=SIGFP      E3=DANO    E4=SIGDANO
  LABIN  FILE 2 E1=F(+)    E2=SIGF(+)    E3=F(-)    E4=SIGF(-)
  LABOUT FILE 1 E1=FP_Hg    E2=SIGFP_Hg    E3=DANO_Hg  E4=SIGDANO_Hg
  LABOUT FILE 2 E1=F(+)_Hg  E2=SIGF(+)_Hg  E3=F(-)_Hg  E4=SIGF(-)_Hg
  END
EOF


== Hint for long-time XDSCONV users ==
== Hint for long-time XDSCONV users ==
Line 45: Line 68:
  SPACE_GROUP_NUMBER=
  SPACE_GROUP_NUMBER=
  UNIT_CELL_PARAMETERS=
  UNIT_CELL_PARAMETERS=
because these are picked up from the header of the input reflection file.
because these are picked up from the header of the input reflection file. However, if you want to ''change'' the parameters of either keyword then you have to specify '''both'''! I.e. if you want to change the spacegroup then you also have to specify the unit cell parameters.
2,652

edits