Uppsala Software Factory

Uppsala Software Factory - DATAMAN Manual


1 DATAMAN - GENERAL INFORMATION

Program : DATAMAN
Version : 981216
Author : Gerard J. Kleywegt, Dept. of Cell and Molecular Biology, Uppsala University, Biomedical Centre, Box 590, SE-751 24 Uppsala, SWEDEN
E-mail : gerard@xray.bmc.uu.se
Purpose : manipulation and analysis of HKL reflection files
Package : RAVE


2 REFERENCES

Reference(s) for this program:

* 1 * T.A. Jones (1992). A, yaap, asap, @#*? A set of averaging programs. In "Molecular Replacement", edited by E.J. Dodson, S. Gover and W. Wolf. SERC Daresbury Laboratory, Warrington, pp. 91-105.

* 2 * G.J. Kleywegt & T.A. Jones (1994). Halloween ... Masks and Bones. In "From First Map to Final Model", edited by S. Bailey, R. Hubbard and D. Waller. SERC Daresbury Laboratory, Warrington, pp. 59-66.

* 3 * G.J. Kleywegt & T.A. Jones (1996). xdlMAPMAN and xdlDATAMAN - programs for reformatting, analysis and manipulation of biomacromolecular electron-density maps and reflection data sets. Acta Cryst D52, 826-828. [http://www.iucr.ac.uk/journals/acta/tocs/actad/1996/actad5204.html]

* 4 * G.J. Kleywegt & A.T. Brunger (1996). Checking your imagination: applications of the free R value. Structure 4, 897-904. [http://www4.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=8805582&form=6&db=m&Dopt=r]

* 5 * G.J. Kleywegt & R.J. Read (1997). Not your average density. Structure 5, 1557-1569. [http://www4.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=9438862&form=6&db=m&Dopt=r]

* 6 * G.J. Kleywegt & T.A. Jones (2037 ?). Convenient single and multiple crystal real-space averaging. To be published ???

* 7 * G.J. Kleywegt & T.A. Jones (1999 ?). Chapter 25.2.6. O and associated programs. Int. Tables for Crystallography, Volume F. To be published.


3 VERSION HISTORY

930319 - 0.1 - initial version
930329 - 0.2 - plots for Wilson-scaling; debugged Wilson-scaling; first version of the manual
930401 - 0.3 - new options TEMP_FACTOR, DF (SHELXS deltaF), LAUE, TYPE_HKL and SORT
930416 - 0.4 - implemented TWIN_STATS and GEMINI
930424 - 0.5 - changed "COmment" option to "LAbel"; implemented COMPARE
930602 - 0.6 - made small version for ESV (only 128,000 HKLs); print program dimensioning with "?" option
930608 - 0.7 - print supported formats (type = '?'); added $ option to issue shell commands
930616 - 1.0 - new production version
930618 - 1.1 - CHange_index option
930628 - 1.2 - ROgue_kill option
930726 - 1.3 - corrected error in Laue group 11 (3barm): hkl:h>=0, k>=0 with k<=h; if h=k l>=0; renamed LAbel option to ANnotate (was same abbreviation as LAue and could therefore not be used ...)
931103 - 1.4 - included ODD_KILL and EVEN_KILL
931110 - 1.5 - included option to list SPecial reflections (e.g. 0k0 to decide on P2 or P21)
931208 - 1.6 - included option to produce ODL file with the reciprocal lattice, optionally colour-ramped; reduced this document; wrote paper manual
931217 - 1.7 - check symmetry operators for errors
931221 -1.7.1- debugged CHange_index; corrected labels in plot files produced by WIlson
940228 - 2.0 - implemented use of Rfree test flags; minor improvement of WIlson option; implemented RFree and SCatter_plot commands
940301 - 2.1 - debugged Laue group 14 (my P2(1)3 xtal); implemented BIn_plot command
940302 - 2.2 - fixed bugs in RXPLOR read and in BIn_plot; implemented DUo_plot and MErge commands
940303 -2.2.1- removed bugs from BIn and DUo plot options
940308 -2.2.2- print warning in COmpare and MErge if the nr of reflections in common is less than 10 % of that of the smallest of the two sets
940316 - 2.3 - support MTZDUMP input format
940404 -2.3.1- more flexibility in SPecial command
940415 - 2.4 - improved O2D plot files; implemented LNI as plot variable; implemented F2I and I2F options in CAlculate (in case you read in Is but want to convert them to Fs, e.g. for plotting or Wilson scaling); print name(s) of set(s) involved in some options
940711 -2.4.1- added "k>=0" to conditions for hk0 in Laue group 4 and "l>=0" similarly for Laue group 5
940721 - 2.5 - support TNT HKL-file format (REad and WRite)

(* code changes of intermediate versions lost due to disk crash *)
> 940904 -2.5.1- fixed bug in input format MTZDUMP
> 940908 - 2.6 - new options EStimate_unique and EFfective_resolution

941022 - 3.0 - fixed bug in MTZDUMP; implemented EStimate_unique; implemented EFfective_resolution; implemented GUess MW, NRes, VM, COmpleteness and RHo
950112 - 3.1 - added H, K, L, H/A, K/B andr L/C as possible horizontal variables for BIn_plot; new command HKl_aniso_plot to detect anisotropy
950124 -3.1.1- minor change to SPecial format
950219 - 3.2 - new RFree SHell command
950415 - 3.3 - new RFree COmplete, GSheldrick and SPheres commands
950506 -3.3.1- RF GE, SH and SP now accept a *number* of reflections instead of a *percentage* (recognised if it is > 100)
950507 - 3.4 - STats no longer crashes with zero sigmas; COmpare and MErge actually print the value of Rmerge; complete rewrite of the XPLOR input routine (compatible with XPLOR 3.x and 4.x; more robust and flexible; recognizes Rfree flags automatically); new command RSym_hkl_khl to detect possible higher symmetry
950527 - 3.5 - OSF/1 version no longer crashes on empty file names; ABsences option to list systematic absences
950620 -3.5.1- implemented WRiting (*NOT* reading) of CIF-formatted reflection files
950629 -3.5.2- small changes to format with TYpe and SHow
951020 - 3.6 - add option to WRite command to select reflections
951022 - 3.7 - made sensitive to OSYM
951030 -3.7.1- change Sigma formula for I2F and F2I
951107 -3.7.2- corrected CIF stuff (thanks to Peter Keller, Univ. of Bath)
951127 -3.7.3- minor bug fixes
960315 - 3.8 - added NOise command to add random noise to Fs (needed for teaching exercise with calculated data)
960409 - 3.9 - implemented macro facility
960415 -3.9.1- minor bug fixes
960422 - 4.0 - new RInt command to calculate the internal Rsym in any Laue group
960517 - 4.1 - implemented simple symbol mechanism
960629 -4.1.1- minor bug fixes
960729 -4.1.2- bug fixed in RFree COmplete (when writing files)
961111 -4.1.3- minor change so that MTZDUMP files are read again; slightly improved CIF output; read cell constants from MTZDUMP file; copy all MTZDUMP header information to the screen
961126 - 5.0 - implemented dynamic memory allocation
970314 -5.0.1- fixed bug in read routine (Rfree flags were not properly initialised)
970512 -5.0.2- better error checks when there are no centrics in TWin_stats and GEmini
970626 - 5.1 - support initialisation macro (setenv GKDATAMAN macrofile)
970701 -5.1.1- removed bug from the EVEen_kill command (relfections with a negative index were not treated correctly)
970707 -5.1.2- better estimates of unique reflections for F and C lattices
971002 -5.1.3- fixed formula to calculate new sigma when converting intensities to amplitudes (thanks to Zhongning Yang)
971124 - 5.2 - added input and output format CNS
971201 -5.2.1- MTZDUMP input format now recognises MNFs (missing number flags)
980724 - 5.3 - DUplicate command to copy a set; PArity_test command to help detect (pseudo-)centering
980911 - 5.4 - new RFree ADjust command to change the size of the TEST set; new RFree FIll_bins command to add TEST reflections to resolution shells that have too few; new RFree CUt_bins command to remove TEST reflections from resolution shells that have too many; new RFree BIn_list command to show how the TEST reflections are distributed in resolution shells
980928 -5.4.1- new output format XCNS = CNS but without TEST flags; small changes to the CIF output format
980929 - 5.5 - new ZP_restart command to re-start the program with different memory allocation
981013 -5.5.1- PArity_test command also checks H, K, and L odd/even
981015 - 5.6 - ABsences command can now also be used to remove reflections that are systematic absences; the DUo_plot command has been renamed DOuble_plot (since it started with the same two characters as the DUplicate command, the DUo_plot command could actually never be executed ;-); new HEmisphere command to help generate a complete, unique dataset; added "recipe" on how to generate a complete, unique dataset; new option COMplement to the MErge command to allow structure factor completion; new FIll_in command to replace unobserved Fs by the square root of the average intensity in its resolution shell; new ASym_unit command to generate an asymmetric unit of reflections for any Laue group
981021 -5.6.1- new ECho command to echo command-line input (useful in scripts)
981022 - 5.7 - implemented command history (# command); the file type is now a required parameter for both the REad and the WRite command (i.e., the program will prompt for it if it is not supplied on the command line; should save some frustration)
981216 -5.7.1- add a few comments to output PostScript files; print F/Sigma for ABsences; improved handling of orbital multiplicity and (a)centric flags


4 START-UP MACRO

From version 5.1 on, DATAMAN can execute a macro at start-up (whether it is run interactively or in batch mode). This can be used to execute commands which you (almost) always want to have executed. To use this feature, set the environment variable GKDATAMAN to point to a DATAMAN macro file, e.g.:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 setenv GKDATAMAN /home/gerard/dataman.init
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


5 DATA SET SIZE AND NUMBER OF DATA SETS

From version 5.0 onward, DATAMAN allocates memory for data sets dynamically. This means that you can increase the size and number of data sets that the program can handle on the fly:

1 - through the environment variables SETSIZE and NUMSETS (must be in capital letters !), for example put the following in your .cshrc file:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 setenv SETSIZE 100000
 setenv NUMSETS 4
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

2 - by using command-line arguments SETSIZE and NUMSETS (need not be in capitals), for example:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 run dataman setsize 200000 numsets 2
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Note that command-line arguments take precedence over environment variables. So you can set the environment variables in your .cshrc file to "typical" values, and if you have to deal with a data set which is bigger than that, you can use the command-line argument(s).

From version 5.5 on, you can also use ZP_restart from within the program itself to increase memory allocation. WARNING : all memory is reset, so any unsaved data will be lost !!!

If sufficient memory cannot be allocated, the program will print a message and quit. In that case, increase the amount of virtual memory (this will not help, of course, if you try to allocate more memory than can be addressed by your machine (for 32-bit machines, something 2**32-1 bytes, I think), or reduce the size requirements.

DATAMAN needs (4 + 8 * NUMSETS) * SETSIZE words for its major arrays.


6 INTRODUCTION

Yes, it's the next in our series of XXXX-manipulation programs.
You now have MOLEMAN for PDB files, MAMA for masks and DATAMAN for ASCII reflection files.
DATAMAN supercedes the existing programs XREF (format exchange), DELTAF (deltaF files for SHELXS90), XSEL (bringing your data into the part of hkl-space that corresponds to your spacegroup's Laue-symmetry, as defined in the Gospel according to CCP4) and GEMINI (detecting twins using intensity statistics); on top of that, DATAMAN contains new functions (such as for Wilson-scaling of datasets from different crystal forms).

When you read a dataset, you give it a name by which you can refer to it later. All names are converted to uppercase, so "s1" and "S1" are the same datasets ! DATAMAN checks that you don't use duplicate dataset names.
Note that many options accept the wildcard character "*" to mean that a command should be carried out for ALL datasets in memory.

DATAMAN is command-driven; the first TWO letters of each command are unique (so you don't have to type the rest); the commands are automatically converted to uppercase, so no worries there either.

Parameters to commands may be supplied on the same line as the command itself. DATAMAN will prompt you for the values of any parameters that were not supplied in this way.

DATAMAN runs in interactive mode by default. This means that if
(a) an input file can not be opened, DATAMAN will ask you what to do
(b) if you delete a mask which has unsaved changes, DATAMAN will ask you if you're absolutely sure
(c) if you quit and there are masks with unsaved changes, DATAMAN will ask you if you really want to quit

You may run DATAMAN in batch mode by supplying the command line option -b (or -batch). In that case, DATAMAN will crash if it can't open an input file and any unsaved changes (with QUIT or DELETE) are lost forever. You may want to use this mode if you run DATAMAN in batch (using an input script).

NOTE: all output files are opened as "UNKNOWN", which means that any existing files will be overwritten !

NOTE: this program is sensitive to the environment variable OSYM. It should point to your local copy of $ODAT/symm, the directory which contains the spacegroup symmetry operators in O format. When asked for a file with spacegroup operators in O format, you may either provide a filename, or the name of a sapcegroup (including blanks if you like, case doesn't matter). The program will try to open the following files, assuming that STRING is the what you input:
(1) open a file called STRING
(2) if this fails, check if OSYM is defined and open $OSYM/STRING
(3) if this fails, open $OSYM/string.sym
(4) if this fails, open $OSYM/string.o
Hint: if you make soft links in the OSYM directory, you can also type spacegroup numbers (e.g.: \ln -s p212121.sym 19.sym).


7 STARTUP

When you start DATAMAN, it welcomes you with a list of available commands and options.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 *** DATAMAN *** DATAMAN *** DATAMAN *** DATAMAN *** DATAMAN *** DATAMAN ***

Version - 981015/5.6 (C) 1992-98 Gerard J. Kleywegt & T. Alwyn Jones, BMC, Uppsala (S) User I/O - routines courtesy of Rolf Boelens, Univ. of Utrecht (NL) Others - T.A. Jones, G. Bricogne, Rams, W.A. Hendrickson Others - W. Kabsch, CCP4, PROTEIN, E. Dodson, etc. etc.

Started - Sat Oct 17 00:42:48 1998 User - gerard Mode - interactive Host - sarek ProcID - 9112 Tty - /dev/ttyq17

*** DATAMAN *** DATAMAN *** DATAMAN *** DATAMAN *** DATAMAN *** DATAMAN ***

Reference(s) for this program:

* 1 * T.A. Jones (1992). A, yaap, asap, @#*? A set of averaging programs. In "Molecular Replacement", edited by E.J. Dodson, S. Gover and W. Wolf. SERC Daresbury Laboratory, Warrington, pp. 91-105.

* 2 * G.J. Kleywegt & T.A. Jones (1994). Halloween ... Masks and Bones. In "From First Map to Final Model", edited by S. Bailey, R. Hubbard and D. Waller. SERC Daresbury Laboratory, Warrington, pp. 59-66.

* 3 * G.J. Kleywegt & T.A. Jones (1996). xdlMAPMAN and xdlDATAMAN - programs for reformatting, analysis and manipulation of biomacromolecular electron-density maps and reflection data sets. Acta Cryst D52, 826-828. [http://www.iucr.ac.uk/journals/acta/tocs/actad/1996/actad5204.html]

* 4 * G.J. Kleywegt & A.T. Brunger (1996). Checking your imagination: applications of the free R value. Structure 4, 897-904. [http://www4.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=8805582&form=6&db=m&Dopt=r]

* 5 * G.J. Kleywegt & R.J. Read (1997). Not your average density. Structure 5, 1557-1569. [http://www4.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=9438862&form=6&db=m&Dopt=r]

* 6 * G.J. Kleywegt & T.A. Jones (2037 ?). Convenient single and multiple crystal real-space averaging. To be published ???

* 7 * G.J. Kleywegt & T.A. Jones (1999 ?). Chapter 25.2.6. O and associated programs. Int. Tables for Crystallography, Volume F. To be published.

==> For manuals and complete references, visit: ==> http://alpha2.bmc.uu.se/usf

*** DATAMAN *** DATAMAN *** DATAMAN *** DATAMAN *** DATAMAN *** DATAMAN ***

Allocate data sets of size : ( 100000) Max number of data sets : ( 10) Max nr of data sets : ( 10) Max nr of reflections per set : ( 100000) Max nr of symmetry operators : ( 96)

=> Random number generator initialised with seed : 0

DATAMAN options :

? (list options) ! (comment) QUit $ shell_command & symbol value & ? (list symbols) @ macro_file ZP_restart setsize numsets REad set file [type [format]] WRite set file [type [format [which]]] DElete set RAmp_odl set file ramp_option

LIst set STats set HIsto set which x1 x2 x3 [...] SHow_hkl set criterion operand value CEll set a b c al be ga ANnotate set "text" SYmmop set o_file TYpe_hkl set start end step SPecial set hkl_type RSym_hkl_khl set ABsences set [list_or_kill] RInt set PArity_test set FIll_in set nbins

TWin_stats set GEmini set plotf1 plotf2 LAue newset set laue_group SOrt_hkl newset set hkl_order KIll_hkl set criterion operand value PRod_plus set which prod plus ODd_kill set h_k_l EVen_kill set h_k_l CAlc set what TEmp_factor set value CHange_index set newh newk newl ROgue_kill set h1 k1 l1 [...] NOise set nbins min% max% DUplicate newset set HEmisphere newset set resolution ASym_unit newset set resol laue_group

WIlson set1 set2 plotf1 plotf2 step DF newset set1 set2 COmpare set1 set2 MErge newset set1 set2 how

RFree INit seed RFree LIst set RFree GEnerate set %_or_# RFree REset set RFree SHell set %_or_# nbins RFree COmplete set nsets basename RFree GSheldrick set nth RFree SPheres set %_or_# radius RFree TRansfer set old_set RFree ADjust set new% RFree FIll_bins set target% nbins RFree CUt_bins set target% nbins RFree BIn_list set nbins

EStimate_unique set resol latt nasu EFfective_resolution set latt nasu GUess MW nres GUess NRes MW GUess VM set nres nasu nncs GUess COmpl set res1 res2 latt nasu GUess RHo set latt nasu nncs nres

SCatter_plot set file hori vert BIn_plot set file hori vert bin HKl_aniso_plot set file DOuble_plot set1 set2 file hor ver bin

Max nr of data sets : ( 10) Max nr of reflections per set : ( 100000) Max nr of symmetry operators : ( 96)

DATAMAN > ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8 GENERAL COMMANDS


8.1 ?


gives a list of the options and the current dimensioning of the program


8.2 !


does nothing (use this for comments in input scripts)


8.3 #


Command history. Possible uses (blank spaces are optional):
- # ? => list history of commands
- # ON => switch command history on
- # OFf => switch command history off
- # # => repeat previous command
- # 14 => repeat command number 14 from the list
- # 0 => repeat previous command
- # -1 => repeat penultimate command, etc.
- # 7 more => repeat command number 7, but add "more" to it (e.g., if command 7 was "$ ls" you could type "#7 -FartCos" to get "$ ls -FartCos")


8.4 @


execute a macro

Example of a DATAMAN macro:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 ! rfree_shell.datmac
 !
 ! select test set reflections in thin resolution shells
 !
 ! Enter HKL file name
 read myset
 !
 ! Enter cell constants
 cell myset
 !
 ! calculate resolution for each reflection
 calc myset resol
 !
 ! reset any previous TEST flags
 rfree reset myset
 !
 ! Enter percentage or number of TEST reflections, then number of shells
 rfree shell myset
 !
 ! show some statistics
 stats myset
 !
 ! save in X-PLOR format
 write myset rfree.rxplor rxplor
 !
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

When executed, this gives:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > @rfree_shell.datmac
 ... Opened macro file : (rfree_shell.datmac)
 ... On unit : (      61)
 > (! rfree_shell.datmac)
 > (!)
 > (! select test set reflections in thin resolution shells)
 > (!)
 > (! Enter HKL file name)
 > (read myset)
 File name ? (not_saved_yet) ../crabp.hkl
 File   : (../crabp.hkl)
 Type   : (HKLFS)
 Format : (*)
 Nr of reflections read : (       9360)
 Nr of WORK reflections : (       9360)
 Nr of TEST reflections : (          0)
 Percentage TEST data   : (   0.000)
 This is NOT an Rfree dataset
 WARNING - less than 500 TEST reflections !
 > (!)
 > (! Enter cell constants)
 > (cell myset)
 Value for cell 1 ? (100.000) 41.9
 Value for cell 2 ? (100.000) 41.9
 Value for cell 3 ? (100.000) 202.7
 Value for cell 4 ? (90.000)
 Value for cell 5 ? (90.000)
 Value for cell 6 ? (90.000)
 Cell : (  41.900   41.900  202.700   90.000   90.000   90.000)
 Volume (A3) : (  3.559E+05)
 > (!)
 > (! calculate resolution for each reflection)
 > (calc myset resol)
 Calc : (MYSET)
 Cell volume : (  3.559E+05)
 Lowest  resolution : (  32.291)
 Highest resolution : (   2.504)
 > (!)
 > (! reset any previous TEST flags)
 > (rfree reset myset)
 Rfree reset: (MYSET)
 Nr of WORK reflections : (       9360)
 Nr of TEST reflections : (          0)
 Percentage TEST data   : (   0.000)
 This is NOT an Rfree dataset
 WARNING - less than 500 TEST reflections !
 > (!)
 > (! Enter percentage or number of TEST reflections, then number of
  shells)
 > (rfree shell myset)
 Percentage TEST data ? (10.00000) 1000
 Converted to percentage : (  10.684)
 Number of resolution bins ? (          15) 25
 Rfree shell: (MYSET)
 Encoding reflections of this set ...
 Sorting reflections by resolution ...
 Nr of reflections        : (       9360)
 Nr of resolution shells  : (         25)
 Reflections per shell    : (        374)
 Percentage TEST reflect. : (  10.684)
 Test reflections / shell : (         39)

-> Real shell # 1 Resolution = 2.574 A - 2.504 A TEST Shell # 1 Resolution = 2.550 A - 2.545 A First HKL = 6 0 74 Last HKL = 13 10 7 ... -> Real shell # 25 Resolution = 22.275 A - 7.700 A TEST Shell # 25 Resolution = 9.876 A - 9.318 A First HKL = 3 3 0 Last HKL = 3 2 13

Nr of WORK reflections : ( 8335) Nr of TEST reflections : ( 1025) Percentage TEST data : ( 10.951) This is an Rfree dataset > (!) > (! show some statistics) > (stats myset) Stats : (MYSET)

Item Minimum Maximum Average Sdv Var ==== ======= ======= ======= === === H 1 16 8.609 3.229 10.426 K -11 11 0.247 4.377 19.162 L 0 78 28.816 18.623 346.798 Fobs 4.690E+00 5.614E+02 6.436E+01 4.656E+01 2.168E+03 SigFo 1.242E+00 6.052E+01 7.378E+00 3.784E+00 1.432E+01 Reso 2.504 32.291 3.940 1.982 3.929 Fo/Sig 4.077E-01 1.087E+02 1.275E+01 1.298E+01 1.685E+02

Correlation Fobs-SigFo : ( -0.336) Correlation Fobs-Fo/Sig : ( 0.807) Correlation SigFo-Fo/Sig : ( -0.604)

Nr of reflections : ( 9360) Nr of WORK reflections : ( 8335) Nr of TEST reflections : ( 1025) Percentage TEST data : ( 10.951) This is an Rfree dataset > (!) > (! save in X-PLOR format) > (write myset rfree.rxplor rxplor) Nr of WORK reflections : ( 8335) Nr of TEST reflections : ( 1025) Percentage TEST data : ( 10.951) This is an Rfree dataset File : (rfree.rxplor) Type : (RXPLOR) Format : ((' INDEX=',3i6,' FOBS=',f10.3,' SIGMA=',f10.3,' TEST=',i3)) Write WORK and TEST set Nr of reflections stored : ( 9360) Nr of reflections written : ( 9360) CPU total/user/sys : 3.0 2.4 0.6 > (!) ... End of macro file ... Control returned to terminal ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.5 &

This command can be used to manipulate symbols. These are probably only useful for advanced users who want to write fancier macros. The command can be used in three ways:
(1) & ? -> lists currently defined symbols
(2) & symbol value -> sets "SYMBOL" to "value"
(3) & symbol -> prompts the user to supply a value for "SYMBOL" (even if the program is executing a macro)

A few symbols are predefined:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > & ?
 Nr of defined symbols : (       4)
 Symbol PROGRAM : (DATAMAN)
 Symbol VERSION : (960517/4.1)
 Symbol START_TIME : (Fri May 17 20:30:11 1996)
 Symbol USERNAME : (gerard)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

The symbol mechanism is fairly simplistic and has some limitations:
- max length of a symbol name is 20 characters
- max length of a symbol value is 80 characters
- max number of symbols is 100
- symbols can not be deleted, but they can be redefined
- symbol values are accessed by supplying $SYMBOL_NAME as an argument on the command line; the line that you type on the terminal (or in a macro) is parsed once; if there are additional parameters which the program prompts you for, you cannot use symbols for those
- only one substitution per argument (e.g., "$file1 $file2" will lead to a substituion of the entire argument by the value of symbol FILE1 only !)
- command names (first argument on any command line) cannot be replaced by a symbol (e.g.: "$command $arg1 $arg2" is not valid)
- symbols may be equated to each other, e.g. "& file2 $file1" will give FILE2 the same value as FILE1
- symbol substitution is not recursive (e.g., if you set the value of FILE2 to be "$file1", any reference to $FILE2 will be replaced by "$file1", not by the value of FILE1
- symbols on comment lines (starting with "!") are not expanded
- symbols on system command lines (starting with "$") are not expanded


8.6 QUit


stop working with DATAMAN; if you run interactively, DATAMAN will check if there are any unsaved changes, and if so, ask you if you really want to quit


8.7 ZP_restart


if you have started the program with too little memory allocated, you can restart it with this command. Provide new values for SETSIZE and NUMSETS. (The mnemonic "ZP" may be counter-intuitive, but the Z and P keys are far apart on a QWERTY keyboard so the chances of accidentally typing this command are reduced.)
WARNING : all memory is reset, so any unsaved data will be lost !!!


8.8 ECho


if you run the program with scripts, it is sometimes useful to see input commands echoed. The parameter to the ECho command may be ON, OFf, or ? (to list the echo status).


8.9 $


execute a shell command (does not necessarily work on all machines !)

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > $ xterm &
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.10 REad


read dataset file into memory; you must supply the name of this new set, the file name, the file type and the format (the latter two are optional; defaults are "*" for both).

The following file types and formats are supported (use "?" as the type to get an up-to-date listing):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
    File type:   Required items:    Default format:    Free format?
    ----------   ---------------    ---------------    ------------
    SHELXS       h,k,l,F,S          (3i4,2f8.2)        no
    XPLOR        h,k,l,F (S)        [automatic]        n/a
    PROTEIN      h,k,l,F            free               yes
    MKLCF        h,k,l,intF,intS    free               yes
    HKLFS (def)  h,k,l,F,S          free               yes
    RFREE        h,k,l,F,S,T        free               yes
    RXPLOR       h,k,l,F,T (S)      [automatic]        n/a
    ELEANOR      h,k,l,F,S,1.0-T    free               yes
    MTZDUMP      h,k,l,F,S          free               yes
    TNT          h,k,l,F,S          (a4,3i4,2f8.1)     no
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

If you supply file type "*", HKLFS will be used. If you supply format "*", the program will read in free format (except for SHELXS, which has a fixed format and XPLOR, where the program extracts the relevant information itself).

If you (want to) have Is instead of Fs, use the CAlc command (I2F or F2I) to inter-convert them.

T is a free R-factor flag. DATAMAN uses the same convention as X-PLOR: work data = 0, test data = 1. The CCP4 convention is supported through file format ELEANOR, where (1.0 - T) is read/written (i.e., a real instead of an integer number).

MTZDUMP expects an output file from MTZDUMP as input. Some of the information from this file will be listed. Create such a file as follows:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 unix > mtzdump hklin q.mtz > q.dump << EOF
 nref 1000000
 symm
 go
 EOF
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Note that TNT phases and FOMs are lost upon reading into DATAMAN !

From version 3.4 onward: new routine to read XPLOR reflection files (same for XPLOR and RXPLOR; TEST flags are recognised automatically). The new routine can handle multi-line files and is compatible with XPLOR 3.x and 4.x.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m1 ? ?

Supported formats: SHELXS -> sets type HKLFS, format (3i4,2f8.2) PROTEIN -> sets type PROTEIN, user format or (*) MKLCF -> sets type MKLCF, user format or (*) HKLFS -> sets type HKLFS, user format or (*) RFREE -> sets type RFREE, user format or (*) ELEANOR -> sets type ELEANOR, user format or (*) XPLOR -> sets type XPLOR, format (*) RXPLOR -> sets type RXPLOR, format (*) TNT -> sets type TNT, format (*) MTZDUMP -> MTZDUMP output file, user format or (*) * -> sets type HKLFS, user format or (*)

DATAMAN > re m6 /home/gerard/proteins/eg1/hkl/eg1_36_rfree_solv.xplor xplor File : (/home/gerard/proteins/eg1/hkl/eg1_36_rfree_solv.xplor) Type : (XPLOR) Format : (*) >>> (DECLARE NAME FOBS DOMAIN RECIPROCAL TYPE COMP END) >>> (DECLARE NAME FCALC DOMAIN RECIPROCAL TYPE COMP END) >>> (DECLARE NAME FBULK DOMAIN RECIPROCAL TYPE COMP END) >>> (DECLARE NAME SIGMA DOMAIN RECIPROCAL TYPE REAL END) >>> (DECLARE NAME TEST DOMAIN RECIPROCAL TYPE INTE END) Nr of lines read : ( 23355) Nr of reflections read : ( 11675) Nr of WORK reflections : ( 10733) Nr of TEST reflections : ( 942) Percentage TEST data : ( 8.069) This is an Rfree dataset CPU total/user/sys : 10.9 10.8 0.1 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m2 q mtzdump
 File   : (q)
 Type   : (MTZDUMP)
 Format : (*)
 Scanning MTZDUMP file
 > 1### CCP PROGRAM SUITE: MTZDUMP VERSION 2.8: 10/05/94###
 > User: gerard Run date: 22/10/94 Run time:18:59:00
 > Status: READONLY Filename: hcrabp1_reproc.mtz
 > * Number of Columns = 5
 > * Number of Reflections = 7104
 > * Space group = P43 (number 78)
 > Number of reflections in the file 7104
 Found start of reflection list
 Nr of reflections read : (       7104)
 Nr of WORK reflections : (       7104)
 Nr of TEST reflections : (          0)
 Percentage TEST data : (   0.000)
 This is NOT an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m2 test.tnt tnt
 File   : (test.tnt)
 Type   : (TNT)
 Format : (*)
 TNT phases and FOMs ignored !
 Skipped : (REM CREATED BY DATAMAN V. 940721/2.5 AT FRI JUL 22 00:43:42
  1994 FOR USER GERARD)
 Nr of reflections read : (        200)
 Nr of WORK reflections : (        200)
 Nr of TEST reflections : (          0)
 Percentage TEST data : (   0.000)
 This is NOT an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.11 WRite


write a dataset to file; you must supply the set name and the file name; file type and format are optional again. (Use "?" as the type to get an up-to-date listing.)

From version 3.6 onward, there is another optional argument with which you can select whether all reflections should be written, or just the TEST set or only the WORK set. One character suffices (W for WORK, T for TEST, anything else for ALL reflections). You can use this to create separate files, e.g. for calculation of Rfree with TNT.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
    File type:   Default format:    Free format?  Rfree-flag?
    ----------   ---------------    ------------  -----------
    SHELXS       (3i4,2f8.2)        no		  no
    XPLOR        fixed XPLOR fmt    n/a		  no
    PROTEIN      (3i6,f10.3)        yes		  no
    MKLCF        (3i6,2i10)         yes		  no
    HKLFS        (3i6,2f10.3)       yes		  no
    RFREE        (3i6,2f10.3,i2)    yes		  yes
    RXPLOR       fixed XPLOR fmt    n/a		  yes
    ELEANOR      (3i6,2f10.3,f4.1)  yes           (1.0-flag)
    TNT          fixed TNT format   n/a           no
    CIF          economical         n/a           yes
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Note that all phases for TNT files are set to 1000.0 and all FOMs to 0.0. Also note that TNT expects reflections to be sorted with L varying fastest and H slowest; this is NOT checked !

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > wr m1 q ?
 Nr of WORK reflections : (       2687)
 Nr of TEST reflections : (        272)
 Percentage TEST data : (   9.192)
 This is an Rfree dataset

Supported formats: SHELXS -> sets type HKLFS, format (3i4,2f8.2) PROTEIN -> sets type PROTEIN, user format or (*) MKLCF -> sets type MKLCF, user format or (3i6,2i10) HKLFS -> sets type HKLFS, user format or (*) RFREE -> sets type RFREE, user format or (*) ELEANOR -> sets type ELEANOR, user format or (*) XPLOR -> sets type XPLOR, format (*) RXPLOR -> sets type RXPLOR, format (*) TNT -> sets type TNT, format (*) * -> sets type HKLFS, user format or (*) Default format HKLFS/PROTEIN is (3i6,2f10.3)

DATAMAN > wr m1 q.xplor rxplor Nr of WORK reflections : ( 2687) Nr of TEST reflections : ( 272) Percentage TEST data : ( 9.192) This is an Rfree dataset File : (q.xplor) Type : (RXPLOR) Format : ((' INDEX=',3i6,' FOBS=',f10.3,' SIGMA=',f10.3,' TEST=',i3)) Nr of reflections written : ( 2959) CPU total/user/sys : 3.8 3.6 0.2 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > wr m1 test.tnt tnt
 Nr of WORK reflections : (        200)
 Nr of TEST reflections : (          0)
 Percentage TEST data : (   0.000)
 This is NOT an Rfree dataset
 File   : (test.tnt)
 Type   : (TNT)
 Format : (('HKL ',3i4,2f8.1,'  1000.0  0.0000'))
 TNT phases set to 1000.0, FOMs to 0.0 !
 Nr of reflections written : (        200)
 DATAMAN > $ head -5 test.tnt
 REM Created by DATAMAN V. 940721/2.5 at Fri Jul 22 00:43:42 1994 for user gerard
 HKL    1   1   1    67.4    37.2  1000.0  0.0000
 HKL    2   0   0    47.5    29.9  1000.0  0.0000
 HKL    2   0   1  2379.3    33.2  1000.0  0.0000
 HKL    2   0   2  4917.0    94.7  1000.0  0.0000
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN >  wr m1 qt.tnt tnt * t
 Nr of WORK reflections : (        183)
 Nr of TEST reflections : (         17)
 Percentage TEST data   : (   8.500)
 This is an Rfree dataset
 WARNING - less than 500 TEST reflections !
 File   : (qt.tnt)
 Type   : (TNT)
 Format : (('HKL ',3i4,2f8.1,'  1000.0  0.0000'))
 Write TEST set only
 TNT phases set to 1000.0, FOMs to 0.0 !
 Nr of reflections stored  : (        200)
 Nr of reflections written : (         17)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > wr m1 acbp.cif cif
 Nr of WORK reflections : (       7056)
 Nr of TEST reflections : (        797)
 Percentage TEST data   : (  10.149)
 This is an Rfree dataset
 File   : (acbp.cif)
 Type   : (CIF)
 Format : ((3i10,1p,2e15.6,i10))
 Write WORK and TEST set
 Nr of reflections stored  : (       7853)
 Nr of reflections written : (       7853)
 CPU total/user/sys :       6.3       6.3       0.1
 DATAMAN > $ head -20 acbp.cif ; tail -10 acbp.cif
;
acbp.cif
Created by DATAMAN V. 951107/3.7.2 at Tue Nov 7 23:20:48 1995 for user gerard
;

data_r0zzzsf

loop_ _refln.index_h _refln.index_k _refln.index_l _refln.F_meas_au _refln.F_sigma_au _refln.status

0 0 19 3.532600E+02 1.654300E+02 o 0 0 20 1.949980E+04 1.551900E+03 o 0 0 22 5.338000E+02 2.104400E+02 o 0 0 23 3.809400E+02 1.802800E+02 o 0 0 24 1.322140E+04 1.043980E+03 o 17 5 3 2.982040E+03 1.606700E+02 f 17 5 4 2.465410E+03 1.450900E+02 o 17 5 5 1.558960E+03 1.350500E+02 o 17 5 6 1.748640E+03 1.261000E+02 o 17 5 7 1.514660E+03 1.097800E+02 o

; This file should contain 7853 reflections ;

----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.12 DElete


delete a dataset from memory. If you run DATAMAN in interactive mode, and there are unsaved changes, the program will ask if you're absolutely sure


8.13 DUplicate


make a copy of a set. All set and reflection attributes will be copied (symmetry, cell, resolution, orbital multiplicity, etc.). This command may be useful if you want to have a back-up prior to a "sensitive" operation, or if you want to carry out an operation separately for low and high-resolution data (e.g., a PArity_test).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > dup m2 m1
 Nr of WORK reflections : (      16012)
 Nr of TEST reflections : (          0)
 Percentage TEST data   : (   0.000)
 This is NOT an Rfree dataset
 WARNING - fewer than 500 TEST reflections !
 DATAMAN > li m2

List : (M2) Number of reflections : 16012 File name : not_saved_yet Label : Copied from M1 Cell constants not supplied Symmetry operators not supplied Resolution has NOT been calculated (A)centrics have NOT been deduced Orbital multiplicities NOT calculated This is NOT an Rfree dataset There are UNSAVED changes ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.14 HEmisphere


generate a hemisphere of data in a new set. The cell constants are taken from another set. Also, you must supply the resolution limit. (Note: the F000 reflection is *not* generated.) All the FOBS will be set to 1.0, and all the SIGMAs to 0.0. By default, the dataset will be generated in Laue group 3: hkl:l>=0, hk0:h>=0, 0k0:k>=0. To convert to Laue group 1 or 2, use the Laue command. See also the ASym_unit command.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m1 dump.cns cns
 ...
 DATAMAN > cell m1  78.990   78.990   38.020  90.00  90.00  90.00
 ...
 DATAMAN > hemi m2 m1 2.0
 Generate   : (Hemisphere)
 Resolution : (   2.000)
 Laue group : (       3)
 Cell : (  78.990   78.990   38.020   90.000   90.000   90.000)
 Cell volume : (  2.372E+05)
 Hmax : (         40)
 Kmax : (         40)
 Lmax : (         20)
 Nr of reflections generated : (      62083)
 Lowest  resolution : (  78.990)
 Highest resolution : (   2.000)
 Nr of WORK reflections : (      62083)
 Nr of TEST reflections : (          0)
 Percentage TEST data   : (   0.000)
 This is NOT an Rfree dataset
 WARNING - fewer than 500 TEST reflections !
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.15 ASym_unit


generate an asymmetric unit of data in a new set. The cell constants are taken from another set. Also, you must supply the resolution limit and the Laue group (a "?" will list all Laue groups and their definition). (Note: the F000 reflection is *not* generated.) All the FOBS will be set to 1.0, and all the SIGMAs to 0.0. See also the HEmisphere command (which is equivalent the ASym command with Laue group 3). Note: you may want to delete the systematic absences for your particular spacegroup afterwards.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m1 dump.cns cns
 ...
 DATAMAN > cell m1  78.990   78.990   38.020  90.00  90.00  90.00
 ...
 DATAMAN > asym m2 m1 2.0 8
 Generate   : (Asymmetric unit)
 Resolution : (   2.000)
 Laue group : (       8)
 Cell : (  78.990   78.990   38.020   90.000   90.000   90.000)
 Cell volume : (  2.372E+05)
 Hmax : (         40)
 Kmax : (         40)
 Lmax : (         20)
 Nr of reflections generated : (       8591)
 Lowest  resolution : (  78.990)
 Highest resolution : (   2.000)
 Nr of WORK reflections : (       8591)
 Nr of TEST reflections : (          0)
 Percentage TEST data   : (   0.000)
 This is NOT an Rfree dataset
 WARNING - fewer than 500 TEST reflections !
 DATAMAN > sy m2 p43212
 Try to open as : (p43212)
 ...
 Unique symmops : (       1        2        3        4        5        6
       7        8)
 DATAMAN > abs m2 kill

Kill systematic absences for : (M2) # 1 HKL 0 0 1 Fo, S(Fo) = 1.0000E+00 0.0000E+00 Test 0 # 2 HKL 0 0 2 Fo, S(Fo) = 1.0000E+00 0.0000E+00 Test 0 ... # 8573 HKL 39 0 0 Fo, S(Fo) = 1.0000E+00 0.0000E+00 Test 0 Nr of systematic absences : ( 35) Nr of reflections left : ( 8556) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.16 LIst


print some information about a dataset

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > list *
 List : (M1)
 Number of reflections :       2959
 File name : q.xplor
 Label     : Read from rfree.xplor
 Cell      :     80.800    80.800    80.800    90.000    90.000    90.000
 Symmetry operators not supplied
 Resolution has been calculated
 (A)centrics have NOT been deduced
 Orbital multiplicities NOT calculated
 This is an Rfree dataset
 There are no unsaved changes
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.17 STats


print some statistics about a dataset

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > st m6
 Stats : (M6)

Item Minimum Maximum Average Sdv Var ==== ======= ======= ======= === === H 0 28 14.330 6.085 37.028 K 0 19 6.075 4.619 21.336 L 0 55 22.172 13.337 177.884 Fobs 8.721E+01 3.164E+04 4.795E+03 3.260E+03 1.063E+07 SigFo 1.893E+01 2.560E+03 2.877E+02 1.736E+02 3.015E+04 Reso 3.600 37.466 5.385 2.572 6.617 Fo/Sig 1.346E+00 7.861E+01 2.192E+01 1.544E+01 2.384E+02

Correlation Fobs-SigFo : ( -0.007) Correlation Fobs-Fo/Sig : ( 0.663) Correlation SigFo-Fo/Sig : ( -0.563)

Nr of reflections : ( 11675) Nr of WORK reflections : ( 10733) Nr of TEST reflections : ( 942) Percentage TEST data : ( 8.069) This is an Rfree dataset ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.18 HIsto


produce a histogram. You must supply the set name, the type of data you want to investigate and values for the histogram intervals. The datatype may be: FOB(s), SIG(ma), F/S or RES(olution).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > histo s1 fobs 1 5 10 50 100 500
 Histrogram limits : (  1.000E+00   5.000E+00   1.000E+01   5.000E+01
  1.000E+02   5.000E+02)
 Histogram : (S1)

Nr of values < 1.00 : 0 Nr of values >= 5.00 and < 10.00 : 249 Nr of values >= 10.00 and < 50.00 : 5471 Nr of values >= 50.00 and < 100.00 : 1693 Nr of values >= 100.00 and < 500.00 : 107 Nr of values >= 500.00 : 0 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.19 SHow_hkl


list reflections which satisfy a certain criterion. You have to supply the criterion, the operand and the value. The criterion may be: FOB(s), SIG(ma), F/S or RES(olution). The operand may be: < or >. The value may be anything.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > sh m1 fob < 75
 Show_hkl : (M1)
 Nr of reflections : (       2959)
 Show reflection if : (FOB < 75.00000)
 #       16 HKL      1     1     1 Fo, S(Fo) =   5.8090E+01  2.8220E+01 Test 0
 #       18 HKL      1     3     1 Fo, S(Fo) =   4.5230E+01  2.2870E+01 Test 0
 #       20 HKL      1     4     1 Fo, S(Fo) =   5.6580E+01  2.8470E+01 Test 0
 #       69 HKL      1     5     2 Fo, S(Fo) =   7.0030E+01  3.5380E+01 Test 0
 #      432 HKL      2     3     6 Fo, S(Fo) =   6.0350E+01  2.6960E+01 Test 0
 Nr of reflections listed : (          5)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.20 CEll


define the unit-cell constants for a dataset.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > ce m1 41.6 41.6 202.4 90 90 90
 Cell : (  41.600   41.600  202.400   90.000   90.000   90.000)
 Volume (A3) : (  3.503E+05)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.21 ANnotate


add a comment to a dataset. If the comment contains spaces, then surround it by double quotes (").

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > an m1 "xplor 3.2 a dataset hcrabp2 p213 raxis denzo"
 DATAMAN > li m1
 List : (M1)
 Number of reflections :       2959
 File name : q.xplor
 Label     : xplor 3.2 a dataset hcrabp2 p213 raxis denzo
 Cell      :     80.800    80.800    80.800    90.000    90.000    90.000
...
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.22 SYmmop


read an "O"-type file containing the symmetry operators of the spacegroup of a dataset.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > sym m1 p213.sym
 Opening O datablock : (p213.sym)
 Datablock : (.SPACE_GROUP_OPERATORS)
 Data type : (R)
 Number    : (144)
 Format    : ((3F10.5))
 Nr of symmetry operators : (         12)

Nr of spacegroup symmetry operators : 12 SYMOP 1 = 1.0000 0.0000 0.0000 0.000 0.0000 1.0000 0.0000 0.000 0.0000 0.0000 1.0000 0.000 Determinant of rotation matrix = 1.000000 Rotation angle = 0.000000 SYMOP 2 = -1.0000 0.0000 0.0000 0.500 0.0000 -1.0000 0.0000 0.000 0.0000 0.0000 1.0000 0.500 Determinant of rotation matrix = 1.000000 Rotation angle = 180.000000 ... SYMOP 12 = 0.0000 -1.0000 0.0000 0.500 0.0000 0.0000 -1.0000 0.000 1.0000 0.0000 0.0000 0.500 Determinant of rotation matrix = 1.000000 Rotation angle = 120.000008 Unique symmops : ( 1 2 3 4 5 6 7 8 9 10 11 12) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.23 CAlculate


calculate certain attributes for all reflections of a dataset. The following calculation types are currently supported:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
    Type:     Meaning:                            Requires:
    -----     --------                            ---------
    R(esol)   resolution (A)                      unit-cell constants
    C(entr)   centrics and acentrics              symmetry operators
    O(rbit)   orbital multiplicity                symmetry operators
    I(2F)     go from intensities to Fs           -
    F(2I)     go from Fs to intensities           -
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

* Resolution is calculated in the usual way from the HKLs and the unit-cell constants.

* Centric reflections are deduced using the simple definition of Gerard Bricogne: (hkl) is centric if there is an operation A, such that A(hkl) = -(hkl), where A is the transpose of the rotation matrix of a unique symmetry operator of the spacegroup, and "-(hkl)" is the Friedel-mate of (hkl).

* The orbital multiplicity is the number of DISTINCT reflections which are equivalent to (hkl) when applying all unique symmetry operators PLUS Friedel expansion to (hkl). (For acentric reflections, this will be twice the number of unique symmetry operators; for acentric and axial reflections, this number will be lower.)

* I2F: uses the approximations: F ~ SQRT (I), and Sigma (F) = Sigma (I) / (2.0 * F). This is only done for reflections with I > 0; if there are zero or negative intensities they are not changed and a warning is printed (use "kill * fob < 0.0001" to get rid of them).

* F2I: uses the approximations: I ~ F * F, and Sigma (I) = 2.0 * F * Sigma (F). This is only done for reflections with F > 0; if there are zero or negative amplitudes they are not changed and a warning is printed (use "kill * fob < 0.0001" to get rid of them).

NOTE: DATAMAN is clever enough to keep track of what it knows about each dataset (cell constants, symmetry operators, resolution, etc.), so it will issue error messages if you haven't supplied sufficient information for a certain calculation.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > ca m1 res
 Calc : (M1)
 Cell volume : (  5.275E+05)
 Lowest  resolution : (  46.650)
 Highest resolution : (   3.219)
 DATAMAN > ca * cen
 Calc : (M1)
 Nr of reflections    : (       2959)
 Nr of unique symmops : (         12)
 Nr of acentric reflections : (       2493)
 Nr of  centric reflections : (        466)
 CPU total/user/sys :       2.1       2.1       0.0
 DATAMAN > ca * orb
 Calc : (M1)
 Nr of reflections    : (       2959)
 Nr of unique symmops : (         12)
 There are     2485 reflections with O.M.  24
 There are      451 reflections with O.M.  12
 There are        8 reflections with O.M.   8
 There are       15 reflections with O.M.   6
 CPU total/user/sys :       3.6       3.6       0.0
 DATAMAN > cal s2 orb
 Calc : (S2)
 ERROR --- I don't know the symmops
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.24 KIll_hkl


remove certain reflections from a dataset. The arguments to this command are the same as for the SHow_hkl command.

This command allows you to remove reflections with:
- very low Fobs : kill set fobs < 1
- very high Fobs: kill set fobs > 100000
- Fobs less than X times their Sigma: kill set f/s < 2

In addition, it can be used to cut out a certain resolution range:
- low-resolution cut-off : kill set reso > 10.0
- high-resolution cut-off: kill set reso < 2.5

NOTE: if either NONE or ALL of the reflections would be deleted by a KILL operation, DATAMAN returns with an error message and NO reflections are deleted !

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > ki m1 res > 10
 Kill_hkl : (M1)
 Nr of reflections before : (       2959)
 Kill reflection if : (RES > 10.00000)
 Nr of reflections after : (       2880)
 Nr of WORK reflections : (       2615)
 Nr of TEST reflections : (        265)
 Percentage TEST data : (   9.201)
 This is an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.25 PRod_plus


modify the values of Fobs and Sigmas. You may use this to make all your Fobs ten times larger or smaller, or to define a flat Sigma for all reflections which were read from a PROTEIN file. The following may be transformed: F(obs), S(igma) or B(oth).
The formula is: new_value = prod * old_value + plus

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > pr
 Which set ? (M1)
 Which [Fobs|Sigfo|Both] ? (FOB) both
 Prod ? (1.0) 10
 Plus ? (0.0)
 Prod_plus : (M1)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.26 WIlson


scale two datasets using Wilson statistics. This option uses a set of subroutines kindly provided by Gerard Bricogne.

It works as follows:

Over a number of resolution bins, the average intensity (note that intensity is the square of the structure-factor amplitude !) is computed for both datasets, by calculating:

<I> = SUM (Fobs ** 2) / SUM (orbital_mult)

Then, LOG (<I2>/<I1>) is "plotted" versus (sin(theta)/lambda)**2, and a weighted least-squares line is determined through the data points. The slope of this line yields a correction temperature factor which must be applied to the Fobs of the second dataset; similarly, the intercept yields a scale factor.

You will obtain two plot files (which can be displayed and converted into PostScript by O2D), one showing <I> for each dataset as a function of (sin(theta)/lambda)**2 bin, the other showing the plot of LOG (<I2>/<I1>) and the least-squares line as a function of (sin(theta)/lambda)**2 bin.
Make PostScript files with O2D or OMAC/o2dps. View them with GhostView or GhostScript and print them with: print qms w1.ps

If you repeat this operation (maybe twice), you should soon get a scale of 1.0 and a temperature factor of 0.0; the first plot should display similar profiles for both datasets and the second should yield a flat line at Y=0.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > wil m2 m1 w11.plt w12.plt 0.002
 Wilson scaling - G. Bricogne
 Max nr of bins : (         64)
 Min nr of bins : (         10)
 Bin width      : (  2.000E-03)
 Min 4 * (sin(theta)/lambda)**2 : (  1.011E-02)
 Max 4 * (sin(theta)/lambda)**2 : (  1.735E-01)
 F's  put on same scale+temp  by Wilson plot :
           W SCALE  =  0.98108E-01
           W BTEMP  =    -31.180
 Nr of bins used    : (         22)
 Step size for bins : (  2.000E-03)
 Applying scale to set 2

Bin NF1 NF2 SSQ1 SSQ2 <I1> <I2> LOG<I2>/<I1> 4(SIN(T)/L)^2 2 1416 1854 1.8825E+11 2.3256E+13 1.3294E+08 1.2544E+10 4.5470E+00 3.0000E-03 3 3176 3710 4.3035E+11 3.5022E+13 1.3550E+08 9.4398E+09 4.2437E+00 5.0000E-03 4 3720 4326 5.4386E+11 4.1410E+13 1.4620E+08 9.5724E+09 4.1817E+00 7.0000E-03 12 7892 7952 7.6624E+11 1.9890E+13 9.7091E+07 2.5013E+09 3.2489E+00 2.3000E-02 13 8360 840 5.9398E+11 1.4115E+12 7.1050E+07 1.6803E+09 3.1634E+00 2.5000E-02

Comparison of <I1> and <I2> : Correlation coefficient : ( 0.706) Scaled R w.r.t. <I1> : ( 3.113E-01) Scaled R w.r.t. <I2> : ( 3.113E-01) RMS difference : ( 8.736E+09) ... DATAMAN > wil m2 m1 w21.plt w22.plt 0.002 Wilson scaling - G. Bricogne Max nr of bins : ( 64) Min nr of bins : ( 10) Bin width : ( 2.000E-03) Min 4 * (sin(theta)/lambda)**2 : ( 1.011E-02) Max 4 * (sin(theta)/lambda)**2 : ( 1.735E-01) F's put on same scale+temp by Wilson plot : W SCALE = 0.99597E+00 W BTEMP = -0.322 Nr of bins used : ( 22) Step size for bins : ( 2.000E-03) Applying scale to set 2

Bin NF1 NF2 SSQ1 SSQ2 <I1> <I2> LOG<I2>/<I1> 4(SIN(T)/L)^2 2 1416 1854 1.8825E+11 2.7544E+11 1.3294E+08 1.4857E+08 1.1111E-01 3.0000E-03 3 3176 3710 4.3035E+11 4.5696E+11 1.3550E+08 1.2317E+08 -9.5404E-02 5.0000E-03 ... 12 7892 7952 7.6624E+11 8.0277E+11 9.7091E+07 1.0095E+08 3.8994E-02 2.3000E-02 13 8360 840 5.9398E+11 6.0982E+10 7.1050E+07 7.2598E+07 2.1552E-02 2.5000E-02

Comparison of <I1> and <I2> : Correlation coefficient : ( 0.984) Scaled R w.r.t. <I1> : ( 4.969E-02) Scaled R w.r.t. <I2> : ( 4.969E-02) RMS difference : ( 1.011E+07) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.27 MErge


merge two datasets together (e.g., two different crystals of the same protein). Note that this option assumes that the structure factors have already been scaled (e.g., with the WIlson_scaling command) !!!
The R factors reported are Rmerge. Rfree flags are NOT set for the merged dataset. Also, it is unsorted. DATAMAN does not check if the two datasets have similar cells and symmetry operators, etc.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > me m4 m1 m3 ?
 Select one of:
 SIG = sigma weighting: Fnew = (S2*F1+S1*F2), Snew = 2*S1*S2/(S1+S2)
 AVE = average: Fnew = (F1+F2)/2, Snew = 1/2*SQRT(S1^2+S2^2)
 COM = complement: new set = set1 + all data from set2 not in set1
 DATAMAN > merge m4 m1 m3 complement
 Merging Set 1 : (M1)
     and Set 2 : (M3)
 Method        : (COM)
 Sets *assumed* to be scaled together
 Encoding reflections of set 1 ...
 Encoding reflections of set 2 ...
 Generating merged dataset ...
 Almost done ...

HKLs only in set 1 : ( 0) HKLs only in set 2 : ( 379) HKLs in both sets : ( 8177) Total nr of HKLs : ( 8556)

Comparison for Set 1 and Set 2 Fobs : Correlation coefficient : ( 0.000) Shape similarity : ( 0.794) Unscaled R w.r.t. <F1> : ( 9.951E-01) Unscaled R w.r.t. <F2> : ( 2.047E+02) Scaled R w.r.t. <F1> : ( 5.649E-01) Scale factor : ( 2.057E+02) Scaled R w.r.t. <F2> : ( 5.649E-01) Scale factor : ( 4.862E-03) RMS difference : ( 2.583E+02) Rmerge = SUM |F1-F2| / SUM |F1+F2| Value of Rmerge : ( 0.990) Nr of WORK reflections : ( 8556) Nr of TEST reflections : ( 0) Percentage TEST data : ( 0.000) This is NOT an Rfree dataset WARNING - fewer than 500 TEST reflections ! The new dataset is UNSORTED ! CPU total/user/sys : 1.6 1.6 0.0 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.28 TEmp_factor


apply a temperature factor to a set of Fobs. All Fobs of the selected set are multiplied by EXP(-B*STOLSQ), where STOLSQ is (SIN(THETA)/LAMBDA)**2. The resolution of the reflections must have been calculated previously (CALC command).


8.29 DF


prepare a SHELXS90 DELTA-F dataset. This option makes the older program DELTAF obsolete. From a set of native data S1, and a set of derivative data S2, it calculates a new dataset S3, which contains all HKLs which S1 and S2 have in common, with:

Fobs = Fobs(nat) - Fobs(der) [or vice versa; doesn't matter]
Sig = SQRT (sig(nat)**2 + sig(der)**2)

NO checks are made to see if S1 and S2 are comparable datasets ! Data set S3 inherits the unit cell and symmetry operators from data set S1.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > df m3 m2 m1
 Encoding reflections of set 1 ...
 Checking reflections of set 2 ...
 HKLs in native     set 1: (       6723)
 HKLs in derivative set 2: (       2880)
 HKLs in new nat-der set : (       2638)
 Nr of WORK reflections : (       2638)
 Nr of TEST reflections : (          0)
 Percentage TEST data : (   0.000)
 This is NOT an Rfree dataset
 CPU total/user/sys :       4.8       4.8       0.0
  ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.30 LAue


move your HKLs to the proper part of "hkl-space" (according to the CCP4 manual pages). The new set will inherit the unit cell and symmetry operators from the old set. Note that the HKLs in the new set are UNSORTED. (The algorithm expands each reflection to P1 using the symmetry operators and Friedel expansion; those that satisfy the Laue requirements are kept in the order in which they are generated.) The symmetry operators must be known for the old set. This option makes the older program XSEL obsolete.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > laue s6 s5 ?
 LAUE = 1, 1bar,   hkl:h>=0   0kl:k>=0   00l:l>=0
 LAUE = 2, 1bar,   hkl:k>=0   h0l:l>=0   h00:h>=0
 LAUE = 3, 1bar,   hkl:l>=0   hk0:h>=0   0k0:k>=0
 LAUE = 4, 2/m,    hkl:k>=0, l>=0     hk0:h>=0
 LAUE = 5, 2/m,    hkl:h>=0, l>=0     0kl:k>=0   (2-nd sett.)
 LAUE = 6, mmm,    hkl:h>=0, k>=0, l>=0
 LAUE = 7, 4/m,    hkl:h>=0, k>0, l>=0 with  k>=0 for h=0
 LAUE = 8, 4/mmm,  hkl:h>=0, h>=k>=0, l>=0
 LAUE = 9, 3bar,   hkl:h>=0, k<0, l>=0 including 00l
 LAUE = 10, 3bar,  hkl:h>=0, k>0  including  00l:l>0
 LAUE = 11, 3barm, hkl:h>=0, k>=0 with k<=h; if h=k l>=0
 LAUE = 12, 6/m,   hkl:h>=0, k>0, l>=0  with  k>=0 for h=0
 LAUE = 13, 6/mmm, hkl:h>=0, h>=k>=0, l>=0
 LAUE = 14, m3,    hkl:h>=0, k>=0, l>=0 with l>=h, k>=h for l=h
 LAUE = 15, m3m,   hkl:k>=l>=h>=0
 DATAMAN > laue m4 m1 14
 Laue : (M1)
 HKLs in old set : (       2880)
 HKLs in new set : (       2880)
 HKLs in the new set are UNSORTED !
 Nr of WORK reflections : (       2615)
 Nr of TEST reflections : (        265)
 Percentage TEST data : (   9.201)
 This is an Rfree dataset
 CPU total/user/sys :       3.8       3.8       0.1
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.31 FIll_in


replace unobserved data (signalled by a sigma <= 0.00001) by the square root of the average intensity in the appropriate resolution shell. The sigmas will be set equal to Fobs.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > fill m5 25
 4*(sin(theta)/lambda)**2 min : (  3.205E-04)
 4*(sin(theta)/lambda)**2 max : (  2.500E-01)
 Nr of bins : (         25)
 Bin size   : (  9.987E-03)
   Bin    4STOLSQ limits     Nobs    Nfill       <Ibin>        Ffill
     1  0.00032  0.01031       70       23   2.4984E+05   4.9984E+02
     2  0.01031  0.02029      120       31   2.0026E+05   4.4751E+02
     3  0.02029  0.03028      161       17   1.2098E+05   3.4782E+02
 ...
    21  0.20006  0.21005      463        8   2.1221E+04   1.4567E+02
    22  0.21005  0.22004      461        0   2.0900E+04   1.4457E+02
    23  0.22004  0.23002      469        5   1.7580E+04   1.3259E+02
    24  0.23002  0.24001      481        2   1.4430E+04   1.2012E+02
    25  0.24001  0.25000      465       21   1.1875E+04   1.0897E+02
 Nr of measured reflections   : (       8177)
 Nr of reflections to fill in : (        379)
 Min Nobs/Nfill ratio : (   3.043)
 Max Nobs/Nfill ratio : ( 392.000)
 Done
 Nr of WORK reflections : (       8556)
 Nr of TEST reflections : (          0)
 Percentage TEST data   : (   0.000)
 This is NOT an Rfree dataset
 WARNING - fewer than 500 TEST reflections !
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.32 SOrt


sort reflections by HKL. You must supply the sort order, e.g. 'LKH' means: L varies fastest, then K and H varies slowest. The new set inherits the unit cell and symmetry operators of the old set.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > so m5 m2 khl
 Sort : (M2)
 Encoding reflections of old set ...
 Sorting reflections ...
 Nr of WORK reflections : (       6723)
 Nr of TEST reflections : (          0)
 Percentage TEST data : (   0.000)
 This is NOT an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.33 TYpe_hkl


list ranges of reflections (h,k,l,Fobs,Sigma only). You have to supply the start, end and step index.

START - first reflection to list; if you supply a value less than 1, it will be set to 1

END - last reflection to list; a value of 0 means "the last reflection" (since you may use a wildcard this is a different number, usually, for each dataset); if this value is less than START, it will be made equal to START; if it exceeds the number of reflections for a set, it will made equal to this number

STEP - the number of reflections to skip between to listings; if this number is zero, it will be set to the value of END minus 1; if it is negative, it means "list -STEP reflections, equally spaced between START and END"

Examples:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 type s1 1 10 1    -> list the first 10 reflections
 type s1 11110 0 1 -> list all refl. from 11110 to the end
 type s1 0 0 0     -> list the first and the last refl.
 type s1 400 0 0   -> list refl. 400 only
 type s1 400 400 1 -> list refl. 400 only
 type s1 0 0 -10   -> list ten refl. evenly spaced between
                      the first and the last
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > ty s1 0 0 0

Type : (S1) # 1 HKL 0 0 68 Fobs & SigFob = 1.3228E+02 4.4220E+00 # 11116 HKL 16 4 6 Fobs & SigFob = 3.6476E+01 2.0911E+01 DATAMAN > ty s1 0 0 -10

Type : (S1) # 1 HKL 0 0 68 Fobs & SigFob = 1.3228E+02 4.4220E+00 # 1113 HKL 1 3 11 Fobs & SigFob = 6.2385E+01 4.8240E+00 # 2225 HKL 2 5 21 Fobs & SigFob = 1.0126E+02 4.6080E+00 # 3337 HKL 3 7 56 Fobs & SigFob = 5.5640E+01 5.2460E+00 # 4449 HKL 4 10 46 Fobs & SigFob = 2.4554E+01 1.8005E+01 # 5561 HKL 5 15 17 Fobs & SigFob = 4.5699E+01 1.4304E+01 # 6673 HKL 7 4 43 Fobs & SigFob = 3.2842E+01 1.2416E+01 # 7785 HKL 8 9 48 Fobs & SigFob = 4.2854E+01 9.9220E+00 # 8897 HKL 10 4 50 Fobs & SigFob = 3.7612E+01 8.5490E+00 # 10009 HKL 12 4 35 Fobs & SigFob = 5.5335E+01 9.2700E+00 DATAMAN > ty s1 1 10 0

Type : (S1) # 1 HKL 0 0 68 Fobs & SigFob = 1.3228E+02 4.4220E+00 # 10 HKL 0 1 2 Fobs & SigFob = 1.4859E+01 5.9550E+00 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.34 TWin_stats


calculate and print some statistics which may be (or may not be) helpful in identifying twinning. Centrics must have been deduced.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > tw s1
 Twin_stats : (S1)
 Nr of reflections : (       6491)
 Acentrics         : (       5399)
 Centrics          : (       1092)

Item Average StDev Min Max ======== ========= ========= ========= ========= |F| all 2.21888E+02 1.51817E+02 2.35400E+01 1.77622E+03 |F| acn 2.18669E+02 1.40776E+02 2.72200E+01 1.26959E+03 |F| cen 2.37800E+02 1.96769E+02 2.35400E+01 1.77622E+03 |I| all 7.22826E+04 1.17248E+05 5.54132E+02 3.15496E+06 |I| acn 6.76340E+04 9.68559E+04 7.40928E+02 1.61186E+06 |I| cen 9.52670E+04 1.86275E+05 5.54132E+02 3.15496E+06 I*I all 1.89719E+10 1.48852E+11 3.07062E+05 9.95376E+12 I*I acn 1.39554E+10 6.07686E+10 5.48975E+05 2.59809E+12 I*I cen 4.37740E+10 3.35720E+11 3.07062E+05 9.95376E+12

<I**2>/<I>**2 for CENTRO : ( 4.823) <I**2>/<I>**2 for NON-CS : ( 3.051) <I**2>/<I>**2 for ALL : ( 3.631)

<F**2>/<F>**2 for CENTRO : ( 1.685) <F**2>/<F>**2 for NON-CS : ( 1.414) <F**2>/<F>**2 for ALL : ( 1.468)

Wilson ratio for CENTRO : ( 0.594) Wilson ratio for NON-CS : ( 0.707) Wilson ratio for ALL : ( 0.681) Wilson ratio non-twinned CENTRO : ( 0.637) Wilson ratio non-twinned NON-CS : ( 0.785) Wilson ratio 1:1-twinned NON-CS : ( 0.885) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.35 GEmini


produce plots of 1N(z,alpha) for the centro- and non-centro- symmetric reflections of a dataset. The theoretical curves for twinning fractions of 0.0, 0.1, 0.2, 0.3 and 0.5 are plotted for comparison with your own data. The output consists of text (see below) and two PostScript files.
For more info, check the two references listed in the example output:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > gem s4 p21.ps p22.ps

REFERENCES:

(1) D.C. Rees, "The Influence of Twinning by Merohedry on Intensity Statistics", Acta Cryst A36, 578-581 (1980) (2) E. Stanley, "The Identification of Twins from Intensity Statistics", J Appl Cryst 5, 191-194 (1972)

Z sampled at : ( 0.100 0.200 0.300 0.400 0.500 0.600 0.700 0.800 0.900 1.000) ALPHA sampled at : ( 0.000 0.100 0.200 0.300 0.500)

Nr of reflections : ( 7559) Acentrics : ( 6662) Centrics : ( 897)

Item Average StDev Min Max ======== ========= ========= ========= ========= |I| all 1.88424E+03 2.43450E+03 1.70825E+00 4.82070E+04 |I| acn 1.80282E+03 2.16455E+03 1.70825E+00 2.15708E+04 |I| cen 2.48896E+03 3.83828E+03 3.35622E+00 4.82070E+04 z all 1.00000E+00 1.29203E+00 9.06597E-04 2.55843E+01 z acn 1.00000E+00 1.20064E+00 9.47541E-04 1.19650E+01 z cen 1.00000E+00 1.54212E+00 1.34844E-03 1.93683E+01

DIST NON-CS : ( 0.085 0.208 0.314 0.388 0.456 0.512 0.560 0.602 0.637 0.669) For ALPHA = 0.00 RMSD to curve = 0.051 and SHAPE MATCH = 0.999 For ALPHA = 0.10 RMSD to curve = 0.081 and SHAPE MATCH = 0.994 For ALPHA = 0.20 RMSD to curve = 0.113 and SHAPE MATCH = 0.987 For ALPHA = 0.30 RMSD to curve = 0.134 and SHAPE MATCH = 0.983 For ALPHA = 0.50 RMSD to curve = 0.150 and SHAPE MATCH = 0.978 Most likely twin fraction : ( 0.000)

DIST CENTRO : ( 0.171 0.279 0.379 0.445 0.517 0.562 0.614 0.653 0.676 0.701) For ALPHA = 0.00 RMSD to curve = 0.039 and SHAPE MATCH = 0.997 For ALPHA = 0.10 RMSD to curve = 0.028 and SHAPE MATCH = 1.000 For ALPHA = 0.20 RMSD to curve = 0.062 and SHAPE MATCH = 0.999 For ALPHA = 0.30 RMSD to curve = 0.086 and SHAPE MATCH = 0.997 For ALPHA = 0.50 RMSD to curve = 0.103 and SHAPE MATCH = 0.996 Most likely twin fraction : ( 0.100) ... ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.36 ROgue_kill


kill rogue reflections in any or all datasets by supplying an HKL triple (rogues need to be removed before calculating isomorphous or anomalous Pattersons; see the output from the CCP4 program SCALEIT). You may enter up to 5 hkl- triples per ROgue_kill command.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > ro s1 1 0 67
 Rogue_kill : (S1)
 Rogue : (1 0 67)
 ERROR --- Rogue hkl not found
 DATAMAN > ro s1 1 0 18
 Rogue_kill : (S1)
 Rogue : (1 0 18)
 #        9  HKL      1     0    18  Fobs & SigFob =   7.1601E+01  2.4990E+00
 Nr of reflections now : (       9359)
 DATAMAN > rog s1 2 0 8  2 1 0  2 2 40 3 -1 40  3 0 2
 Rogue_kill : (S1)
 Rogue : (2 0 8)
 #       85  HKL      2     0     8  Fobs & SigFob =   4.1400E+02  8.5320E+00
 Nr of reflections now : (       9359)
...
 Rogue : (3 0 2)
 #      322  HKL      3     0     2  Fobs & SigFob =   5.6135E+02  7.5750E+00
 Nr of reflections now : (       9355)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.37 NOise


add random noise to your Fs. You provide the number of resolution shells, the minimum and the maximum percentage noise to be added. The algorithm is trivial (as usual ;-):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   - divide the data in N resolution bins
   - for every bin, calculate the average intensity (~ F**2)
   - for every reflection in the bin:
     o generate a random percentage change in the range provided
     o generate a random number to decide on the sign of the change
       (i.e., to add or subtract the noise term)
     o calculate the change in intensity by multiplying the percentage
       change by the average intensity in the bin
     o if the resulting intensity is positive, then replace the
       current F by the square root of the new intensity
     o else, replace the old F by 1/10-th of its old value
   - print some statistics
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Note: if you supply minimum and maximum % changes of X1 and X2, the the Rm"(I) ought to be ~(X1 + X2)/2 (see the example below for definitions of the various R factors). In the example below, X1 = 2.5 % and X2 = 7.5 %, and indeed Rm"(I) = 0.05 (i.e., 5%).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > read m1 crabp.hkl
 ...
 DATAMAN > cell m1 42 42 202 90 90 90
 ...
 DATAMAN > cal m1 reso
 ...
 DATAMAN > noise
 Which set ? (M1)
 Number of bins ? (15)
 Minimum % noise ? (2.5)
 Maximum % noise ? (7.5)
 Copying & encoding reflections ...
 Sorting reflections by resolution ...
 Nr of reflections        : (       9360)
 Nr of resolution shells  : (         15)
 Reflections per shell    : (        624)
 Minimum noise %          : (   2.500)
 Maximum noise %          : (   7.500)

-> Real shell # 1 Resolution = 2.609 A - 2.497 A Nr of reflection in shell: ( 624) Average intensity : ( 1.202E+03) ... -> Real shell # 15 Resolution = 32.291 A - 6.535 A Nr of reflection in shell: ( 625) Average intensity : ( 2.160E+04)

Rmerge (F) = SUM |Fold-Fnew| / SUM |Fold+Fnew| Value of Rmerge (F) : ( 0.020) Rm" (F) = SUM |Fold-Fnew| / SUM |Fold| Value of Rm" (F) : ( 0.039) Rmerge (I) = SUM |Iold-Inew| / SUM |Iold+Inew| Value of Rmerge (I) : ( 0.025) Rm" (I) = SUM |Iold-Inew| / SUM |Iold| Value of Rm" (I) : ( 0.050) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.38 CHange_index


re-index your data. Supply the dataset name (or *) and expressions for the new HKL, for example: H-K K+H L. If you include spaces in an expression, enclose the whole expression in DOUBLE quotes !

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > chan s1 h-k k+h -l
 New H = H-K
     H =  1*H + -1*K +  0*L
 New K = K+H
     K =  1*H +  1*K +  0*L
 New L = -L
     L =  0*H +  0*K + -1*L
 Re-index : (S1)
 First reflection:      1     0     4 =>      1     1    -4
 Nr of reflections re-indexed : (       9360)
 DATAMAN > chan s1 "+H +K" "k -  h" "-     l"
 New H = +H+K
     H =  1*H +  1*K +  0*L
 New K = K-H
     K = -1*H +  1*K +  0*L
 New L = -L
     L =  0*H +  0*K + -1*L
 Re-index : (S1)
 First reflection:      1     1    -4 =>      2     0     4
 Nr of reflections re-indexed : (       9360)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.39 COmpare


compare the Fobs of identical reflections in two datasets, for example, a native and a putative derivative dataset.
Apply Wilson scaling first so that the data are on the same scale (see the example).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > co m1 m2
 Comparing Set 1 = (M1)
       and Set 2 = (M2)
 Encoding reflections of set 1 ...
 Checking reflections of set 2 ...
 HKLs in set 1 : (       9089)
 HKLs in set 2 : (      16012)
 HKLs in both  : (       8491)
 Correlation coeff Fobs : (   0.994)
 Shape similarity  Fobs : (   0.998)
 RMS difference Fo1/Fo2 : (  7.643E+00)
 R=SUM(Fo1-Fo2)/SUM(Fo1): (  4.507E-02)
 R with (Fo1-S*Fo2)     : (  4.511E-02)
          where scale S : (  9.988E-01)
 R=SUM(Fo1-Fo2)/SUM(Fo2): (  4.501E-02)
 R with (S*Fo1-Fo2)     : (  4.511E-02)
          where scale S : (  1.001E+00)
 Rmerge = SUM |F1-S*F2| / SUM |F1+S*F2|
 Value of Rmerge : (   0.023)
 CPU total/user/sys :       3.9       3.9       0.0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.40 ODd_kill


kill all reflections which have an ODD value for one of the three indices H, K or L

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > odd m1 l
 ODD (M1)
 Nr of reflections before : (       9360)
 Kill reflection if : (L ODD)
 Nr of reflections after : (       4728)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.41 EVen_kill


kill all reflections which have an EVEN value for one of the three indices H, K or L

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > even m1 k
 EVEN (M1)
 Nr of reflections before : (       4728)
 Kill reflection if : (K EVEN)
 Nr of reflections after : (       1243)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


8.42 ABsences


list systematic absences. Symmetry operators must be known. Formula used (see G. Bricogne, Int. Tables): if there is a (reciprocal space, i.e. transposed) symmetry operator rotation matrix G, such that G(h) = h for a reflection h, then if the vector product (h.t) is non-integer, the reflection is absent.
From version 5.6, there is an extra optional argument list_or_kill (default is List); if this is given as Kill, the systematic absences will be deleted from the dataset.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m1 acbp_8_9.hkl
 DATAMAN > sy m1 p41.o
 DATAMAN > abs m1

Systematic absences for : (M1) # 1 HKL 0 0 19 Fo, S(Fo) = 3.5326E+02 1.6543E+02 Test 0 # 3 HKL 0 0 22 Fo, S(Fo) = 5.3380E+02 2.1044E+02 Test 0 # 4 HKL 0 0 23 Fo, S(Fo) = 3.8094E+02 1.8028E+02 Test 0 # 6 HKL 0 0 25 Fo, S(Fo) = 6.1606E+02 2.6389E+02 Test 0 # 7 HKL 0 0 26 Fo, S(Fo) = 4.7512E+02 2.1109E+02 Test 0 # 8 HKL 0 0 27 Fo, S(Fo) = 4.6304E+02 2.1279E+02 Test 0 # 9 HKL 0 0 29 Fo, S(Fo) = 4.4480E+02 2.2093E+02 Test 0 ... # 26 HKL 0 0 46 Fo, S(Fo) = 7.0913E+02 2.8538E+02 Test 0 # 27 HKL 0 0 47 Fo, S(Fo) = 8.1553E+02 3.3997E+02 Test 0 Nr of systematic absences : ( 21) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.43 PArity_test


calculate average intensity ratios for reflections with H+K odd/even, and ditto for H+L, K+L, and H+K+L. This may help in identifying missed (pseudo-)centering. For instance, if the average intensity ratio for reflections with H+K odd/even is small (say, < 0.5), this means that H+K odd reflections are "systematically weak". This could mean you have pseudo-C-face centering. Similarly, for H+L (B-face), and K+L (A-face). If all three ratios are low, this could indicate pseudo-F centering (all faces). If the ratio is low for H+K+L, you could have (pseudo)-I centering (body).

Ratios close to 1.0 indicate that there is no (pseudo-)centering. If there is pseudo-centering, try running this option separately for the low and high resolution relfections.

From version 5.5.1, this will also look at H, K, and L odd/even to detect possible A, B, or C centering.

The example below is for CBH1 (PDB code 1CEL), which has two molecules related by a translation of (1/2,1/2,"almost 1/2"). If all data is used, the parity test doesn't detect anything, but if only low resolution data is used (to 5.0 A), the following result is obtained:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > pa m1

Parity test for : (M1)

H odd : ( 1774) H even : ( 1933) <I(H odd)> : ( 3.144E+07) <I(H even)> : ( 2.978E+07) Ratio : ( 1.056)

K odd : ( 1810) K even : ( 1897) <I(K odd)> : ( 3.055E+07) <I(K even)> : ( 3.060E+07) Ratio : ( 0.999)

L odd : ( 1801) L even : ( 1906) <I(L odd)> : ( 3.036E+07) <I(L even)> : ( 3.078E+07) Ratio : ( 0.987)

H+K odd : ( 1850) H+K even : ( 1857) <I(H+K odd)> : ( 2.945E+07) <I(H+K even)> : ( 3.169E+07) Ratio : ( 0.929)

H+L odd : ( 1855) H+L even : ( 1852) <I(H+L odd)> : ( 3.016E+07) <I(H+L even)> : ( 3.099E+07) Ratio : ( 0.973)

K+L odd : ( 1855) K+L even : ( 1852) <I(K+L odd)> : ( 2.980E+07) <I(K+L even)> : ( 3.135E+07) Ratio : ( 0.950)

H+K+L odd : ( 1843) H+K+L even : ( 1864) <I(H+K+L odd)> : ( 2.325E+07) <I(H+K+L even)> : ( 3.781E+07) Ratio : ( 0.615) (Pseudo) I (body) centering ??? ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.44 SPecial


list special reflections; supply the set name and the HKL-type. The latter can be 000, h00, 0k0, 00l, hk0, h0l, or 0kl, but NOT hkl since this would list ALL reflections.
In the example below, it helps us decide whether out spacegroup is P2 (no special conditions) or P21 (ok0, k even).
Note that there are two 0k0 reflections with k odd, but they have an F/Sigma ratio which is a factor ten lower than that of the 0k0/k=2n reflections. In this case, we would put our money on P21.
From version 2.3.1 onwards, you may also enter things like 0kk, hhh, hhl etc.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > sp s1 0k0

Special : (S1) HKL-type : (0K0) # 59 HKL 0 3 0 F,SigF,ratio = 1.3980E+00 3.5300E-01 3.9603E+00 # 104 HKL 0 5 0 F,SigF,ratio = 1.4160E+00 5.8300E-01 2.4288E+00 # 126 HKL 0 6 0 F,SigF,ratio = 1.4403E+01 7.0400E-01 2.0459E+01 # 171 HKL 0 8 0 F,SigF,ratio = 3.1996E+01 1.2590E+00 2.5414E+01 # 214 HKL 0 10 0 F,SigF,ratio = 3.1006E+01 1.0100E+00 3.0699E+01 # 254 HKL 0 12 0 F,SigF,ratio = 4.2625E+01 2.3080E+00 1.8468E+01 # 287 HKL 0 14 0 F,SigF,ratio = 6.1280E+01 1.7350E+00 3.5320E+01 # 315 HKL 0 16 0 F,SigF,ratio = 2.4026E+01 4.2400E-01 5.6665E+01 # 338 HKL 0 18 0 F,SigF,ratio = 3.3270E+01 1.1540E+00 2.8830E+01 # 355 HKL 0 20 0 F,SigF,ratio = 1.1321E+01 6.0200E-01 1.8806E+01 # 371 HKL 0 22 0 F,SigF,ratio = 5.0230E+00 9.8400E-01 5.1047E+00 Reflections listed : ( 11) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > sp m1 hhh

Special : (M1) HKL-type : (HHH) # 1 HKL 1 1 1 Fo,S(Fo),F/S = 6.7440E+01 3.7160E+01 1.8149E+00 Test 0 # 97 HKL 4 4 4 Fo,S(Fo),F/S = 4.3735E+03 8.5220E+01 5.1320E+01 Test 0 # 202 HKL 5 5 5 Fo,S(Fo),F/S = 6.1027E+03 1.1165E+02 5.4659E+01 Test 0 # 333 HKL 6 6 6 Fo,S(Fo),F/S = 9.7983E+03 1.1443E+02 8.5627E+01 Test 0 # 486 HKL 7 7 7 Fo,S(Fo),F/S = 1.4471E+04 3.0876E+02 4.6868E+01 Test 0 # 655 HKL 8 8 8 Fo,S(Fo),F/S = 3.0938E+03 1.9367E+02 1.5974E+01 Test 0 # 846 HKL 9 9 9 Fo,S(Fo),F/S = 2.1958E+03 2.8935E+02 7.5887E+00 Test 0 # 1055 HKL 10 10 10 Fo,S(Fo),F/S = 8.3374E+03 2.2009E+02 3.7882E+01 Test 0 # 1284 HKL 11 11 11 Fo,S(Fo),F/S = 1.5704E+03 1.5677E+02 1.0017E+01 Test 0 # 1532 HKL 12 12 12 Fo,S(Fo),F/S = 1.6947E+03 1.9054E+02 8.8942E+00 Test 0 # 1799 HKL 13 13 13 Fo,S(Fo),F/S = 2.6416E+03 1.5287E+02 1.7280E+01 Test 0 # 2080 HKL 14 14 14 Fo,S(Fo),F/S = 2.5434E+03 1.6720E+02 1.5212E+01 Test 0 # 2376 HKL 15 15 15 Fo,S(Fo),F/S = 7.1494E+02 3.5679E+02 2.0038E+00 Test 0 # 2686 HKL 16 16 16 Fo,S(Fo),F/S = 9.9648E+02 4.1290E+02 2.4134E+00 Test 0 Reflections listed : ( 14) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.45 RSym_hkl_khl


quickly check if the crystal which you processed in pointgroup P3, P4, I4 or P6 could perhaps be of higher symmetry (e.g., P41212 instead of P41). Rsym for HKL and KHL reflections is calculated on Fs and Is (assuming I=F*F).
In the following example, the data was processed in I4 (Rmerge ~0.10), but can actually be reduced to I422 with an even lower Rsym (I) of 0.067:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rsym m2
 Rsym (hkl,khl) : (M2)
 Encoding reflections ...
 Checking reflections ...

Total nr of reflections : ( 16012) Nr of HHL reflections : ( 438) Nr of single observations : ( 1728) Nr of HKL & KHL observ. : ( 6923) Nr of reduced reflections : ( 9089)

Correlation coeff Fobs : ( 0.966) Shape similarity Fobs : ( 0.991) RMS difference Fhk/Fkh : ( 1.693E+01) R=SUM(Fhk-Fkh)/SUM(Fhk): ( 1.071E-01) R with (Fhk-S*Fkh) : ( 1.070E-01) where scale S : ( 1.003E+00) R=SUM(Fhk-Fkh)/SUM(Fkh): ( 1.074E-01) R with (S*Fhk-Fkh) : ( 1.070E-01) where scale S : ( 9.972E-01)

Rmerge (F) = SUM |Fhkl-Fkhl| / SUM |Fhkl+Fkhl| Value of Rmerge (F) : ( 0.054)

Rmerge (I) = SUM |Ihkl-Ikhl| / SUM |Ihkl+Ikhl| Approximation: I = F*F Value of Rmerge (I) : ( 0.067) CPU total/user/sys : 5.0 5.0 0.0 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.46 RInt


a more general version of the RSym command which will calculate the internal Rsym (Rint) for a dataset in any Laue group. Two possible uses of this command:
- if you want to check if you could have higher symmetry than you previously assumed; in that case: REad the dataset, use SYmmetry to give the operator of the higher symmetry point group; generate the LAue group's asymmetric unit of reflections (this will yield two or more copies for many reflections), and use the RInt command to see how well symmetry-related reflections merge
- if you have processed your data in P1, and you want to find the highest symmetry point group in which it can be merged with reasonable statistics
The merging Rint value is calculated on Is (approximated by I = F**2), so if your data already consists of Is, convert them into Fs first (with: CAlc set_name I2F) !
Note that DATAMAN does not actually merge multiple observations. If you find the correct Laue group, you should go back to your original data after processing, and re-merge in the new point group.

In the following example, data was processed in point group 222, but a check is made to see if the data could really be in a cubic spacegroup P2x3. The Rint value is 4.5 % so that it seems rather likely that the real symmetry is cubic.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m1 p222_32a.hkl
 ...
 DATAMAN > symm m1 p23
 ...
 DATAMAN > la m2 m1 14
 Laue old set : (M1)
      New set : (M2)
 HKLs in old set : (       7698)
 HKLs in new set : (       7698)
 HKLs in the new set are UNSORTED !
 ...
 DATAMAN > rint m2
 Rint : (M2)
 Maximum multiplicity : (       1000)
 Encoding reflections ...
 Calculating Rint ...

Nr of reflexions with multiplicity 1 = 60 Nr of reflexions with multiplicity 2 = 861 Nr of reflexions with multiplicity 3 = 1972

Nr of reflections : ( 7698) Nr of single obs : ( 60) Nr of mult obs : ( 2833) times they occur: ( 7698) Nr of unique refl : ( 2893)

Sum(hkl) Sum(i) | I - <I> | Rint (I) = --------------------------- Sum(hkl) Sum(i) |I|

Sum(hkl) Sum(i) | I - <I> | : ( 2.462E+10) Sum(hkl) Sum(i) |I| : ( 5.497E+11)

Value of Rint (I) : ( 0.045) CPU total/user/sys : 1.5 1.5 0.0 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

Higher symmetry that really isn't there will manifest itself in a very high value (typically > 0.50) for Rint. For example, if the same data from the previous example is expanded into P1, and then mapped into point group 3, Rint is 63.4%:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m1 p222_32a.hkl
 ...
 DATAMAN > sy m1 p222
 ...
 DATAMAN > la m2 m1 1
 Laue old set : (M1)
      New set : (M2)
 HKLs in old set : (       7698)
 HKLs in new set : (      28827)
 ...
 DATAMAN > sy m2 p3
 ...
 DATAMAN > la m3 m2 9
 Laue old set : (M2)
      New set : (M3)
 HKLs in old set : (      28827)
 HKLs in new set : (      29340)
 ...
 DATAMAN > ri m3
 Rint : (M3)
 Maximum multiplicity : (       1000)
 Encoding reflections ...
 Calculating Rint ...

Nr of reflexions with multiplicity 1 = 8037 Nr of reflexions with multiplicity 2 = 3460 Nr of reflexions with multiplicity 3 = 4794

Nr of reflections : ( 29340) Nr of single obs : ( 8037) Nr of mult obs : ( 8254) times they occur: ( 21302) Nr of unique refl : ( 16291)

Sum(hkl) Sum(i) | I - <I> | Rint (I) = --------------------------- Sum(hkl) Sum(i) |I|

Sum(hkl) Sum(i) | I - <I> | : ( 1.108E+12) Sum(hkl) Sum(i) |I| : ( 1.746E+12)

Value of Rint (I) : ( 0.634) CPU total/user/sys : 22.5 22.5 0.0 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

In the following example, a dataset processed in I4 is checked to see if it could be I422 (in this case, the RSym command could have been used as well). Again, this would appear to be the case.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m1 ../test_i4.hkl
 ...
 DATAMAN > sy m1 i422
 ...
 DATAMAN > la m2 m1 8
 Laue old set : (M1)
      New set : (M2)
 HKLs in old set : (      16012)
 HKLs in new set : (      16012)
 ...
 DATAMAN > ri m2
 Rint : (M2)
 Maximum multiplicity : (       1000)
 Encoding reflections ...
 Calculating Rint ...

Nr of reflexions with multiplicity 1 = 2166 Nr of reflexions with multiplicity 2 = 6923

Nr of reflections : ( 16012) Nr of single obs : ( 2166) Nr of mult obs : ( 6923) times they occur: ( 13846) Nr of unique refl : ( 9089)

Sum(hkl) Sum(i) | I - <I> | Rint (I) = --------------------------- Sum(hkl) Sum(i) |I|

Sum(hkl) Sum(i) | I - <I> | : ( 1.493E+07) Sum(hkl) Sum(i) |I| : ( 2.220E+08)

Value of Rint (I) : ( 0.067) CPU total/user/sys : 8.0 8.0 0.0 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

In the following example, data in P1 is taken to see if it could be merged in P2 (in this case, two of the three angles should be very close to 90 degrees; if the remaining one is the alpha angle, re-index; if it's beta, use Laue group 4; if it's gamme, use Laue group 5). In this case, it does not look like P2 data.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m1 ../d175a.hkl
 ...
 DATAMAN > sy m1 p2
 ...
 DATAMAN > la m2 m1 4
 Laue old set : (M1)
      New set : (M2)
 HKLs in old set : (      22335)
 HKLs in new set : (      22335)
 ...
 DATAMAN > ri m2
 Rint : (M2)
 Maximum multiplicity : (       1000)
 Encoding reflections ...
 Calculating Rint ...

Nr of reflexions with multiplicity 1 = 9388 Nr of reflexions with multiplicity 2 = 6020 Nr of reflexions with multiplicity 3 = 66 Nr of reflexions with multiplicity 4 = 177

Nr of reflections : ( 22335) Nr of single obs : ( 9388) Nr of mult obs : ( 6263) times they occur: ( 12946) Nr of unique refl : ( 15651)

Sum(hkl) Sum(i) | I - <I> | Rint (I) = --------------------------- Sum(hkl) Sum(i) |I|

Sum(hkl) Sum(i) | I - <I> | : ( 1.809E+06) Sum(hkl) Sum(i) |I| : ( 3.486E+06)

Value of Rint (I) : ( 0.519) CPU total/user/sys : 15.3 15.3 0.0 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


8.47 RAmp_odl


generate an ODL file for O which, when displayed, shows your reciprocal lattice. Individual reflections may be colour ramped according to Fobs, Sigma, Fobs/Sigma or resolution.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > ramp s1 p2_reso_ramp.odl
 Colour ramping criterion [FOB|SIG|F/S|RES|NONe] ? (RES)
 Ramp_odl : (S1)
 ODL file : (p2_reso_ramp.odl)
 Ramp by  : (RES)
 Max Abs (HKL) = (         31)
 Ramp by Resolution (A)
 Minimum : (  2.701E+00)
 Maximum : (  9.992E+00)
 Will do colour ramping:
 From RED  for low  values
 To   BLUE for high values
 ODL file written
 CPU total/user/sys :      16.8      15.1       1.7
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

To display the object in O, do the following:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
  O > centre_xyz 0 0 0
  O > draw p2_reso_ramp.odl
 As3> O descriptor in computer file system
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9 RFREE TEST SET COMMANDS


9.1 RFree INit


initialise the random number generator used for assigning Rfree flags.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf in 620605
 => Random number generator initialised with seed :     620605
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.2 RFree LIst


show info about Rfree flags for one or more datasets.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf li *
 Rfree : (M1)
 Nr of WORK reflections : (       2615)
 Nr of TEST reflections : (        265)
 Percentage TEST data : (   9.201)
 This is an Rfree dataset
...
 Rfree : (M5)
 Nr of WORK reflections : (       6723)
 Nr of TEST reflections : (          0)
 Percentage TEST data : (   0.000)
 This is NOT an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.3 RFree GEnerate


set Rfree flags for a given percentage (approximately) of the reflections. If you provide a "percentage" > 100, the program assumes you have given it an approximate *number* of test set reflections and will convert it to a percentage.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf gen m2 5
 Rfree generate: (M2)
 Nr of WORK reflections : (       6381)
 Nr of TEST reflections : (        342)
 Percentage TEST data : (   5.087)
 This is an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.4 RFree SHell


a different, non-random way of selecting TEST reflections. In cases with NCS, there will be "NCS-related" reflections, some of which will be in the test set, and others in the WORK set. This gives rise to too small differences between R and Rfree since the "NCS-related" reflections in the WORK set have phase/amplitude relations with their cousins in the TEST set.
This command takes a different approach: it selectively "excises" thin shells of reflections (since "NCS-related" reflections will have similar resolution). You supply a global percentage of TEST data and the number of resolution bins to use. For each bin, the reflections in the centre (forming a shell) will be flagged as TEST reflections.
You must have calculated the resolution first. If reflections had been partitioned previously, use the RFree REset command first.
If you provide a "percentage" > 100, the program assumes you have given it an approximate *number* of test set reflections and will convert it to a percentage.

Reference: GJ Kleywegt & TA Jones, Structure 3, 535-540.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf sh
 Which set ? (*) m1
 Percentage TEST data ? (10.00000) 8
 Number of resolution bins ? (          15)
 Rfree shell: (M1)
 Encoding reflections of this set ...
 Sorting reflections by resolution ...
 Nr of reflections        : (       9360)
 Nr of resolution shells  : (         15)
 Reflections per shell    : (        624)
 Percentage TEST reflect. : (   8.000)
 Test reflections / shell : (         49)

-> Real shell # 1 Resolution = 2.59 A - 2.50 A TEST Shell # 1 Resolution = 2.55 A - 2.54 A First HKL = 16 -1 13 Last HKL = 11 -6 51

-> Real shell # 2 Resolution = 2.68 A - 2.59 A TEST Shell # 2 Resolution = 2.64 A - 2.63 A First HKL = 11 11 11 Last HKL = 11 -1 55

...

-> Real shell # 15 Resolution = 32.09 A - 6.47 A TEST Shell # 15 Resolution = 8.29 A - 7.97 A First HKL = 5 0 0 Last HKL = 4 3 7

Nr of WORK reflections : ( 8595) Nr of TEST reflections : ( 765) Percentage TEST data : ( 8.173) This is an Rfree dataset ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.5 RFree COmplete


generate X-PLOR Rfree reflection files for complete cross-validation purposes. You provide the set name, the number of datasets (10 for 10 % partitionings, 20 for 5 % partitionings, etc.), and the base file name (to which the number of the partitioning and the file name extension ".rxplor" will be added.
This command will give you N copies of your reflection data set, such that none of the test sets in them have any reflections in common, and each of the reflections is flagged as a TEST set reflection in exactly one of the N files.
Afterwards, the previous set of Rfree flags is restored.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rfr com
 Which set ? (M1)
 Number of partitionings ? (10)
 Basename for output files ? (complete_xval_) xvalid_
 Test set  1 #hkl =     1023 =     9.84 %
 ... file name = xvalid_1.rxplor
 File   : (xvalid_1.rxplor)
 Type   : (RXPLOR)
 Format : ((' INDEX=',3i6,' FOBS=',f10.3,' SIGMA=',f10.3,' TEST=',i3))
 Nr of reflections written : (      10393)
 Test set  2 #hkl =     1036 =     9.97 %
 ... file name = xvalid_2.rxplor
 File   : (xvalid_2.rxplor)
 Type   : (RXPLOR)
 Format : ((' INDEX=',3i6,' FOBS=',f10.3,' SIGMA=',f10.3,' TEST=',i3))
 Nr of reflections written : (      10393)
 ...
 Test set 10 #hkl =     1043 =    10.04 %
 ... file name = xvalid_10.rxplor
 File   : (xvalid_10.rxplor)
 Type   : (RXPLOR)
 Format : ((' INDEX=',3i6,' FOBS=',f10.3,' SIGMA=',f10.3,' TEST=',i3))
 Nr of reflections written : (      10393)
 Total nr of reflexions : (      10393)
 Total TEST  reflexions : (      10393)
 Nr of WORK reflections : (      10393)
 Nr of TEST reflections : (          0)
 Percentage TEST data : (   0.000)
 This is NOT an Rfree dataset
 CPU total/user/sys :      30.2      29.6       0.6
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.6 RFree GSheldrick


provided for compatibility with SHELXL in which every N-th reflection is kept aside for the TEST set (N being 10 at present). You provide the number "N", e.g. N=10 will give a 10 % TEST set, N=50 will give a 2 % TEST set, etc.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf gs m1 10
 Nr of WORK reflections : (       9354)
 Nr of TEST reflections : (       1039)
 Percentage TEST data : (   9.997)
 This is an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.7 RFree SPhere


thanks to the G-function there are almost always reflections in the WORK set which are directly related to a TEST set reflection.
This phenomenon is particularly obvious in the case of NCS, but even in its absence (due to the presence of flat solvent) it will occur. This option derives from discussions with Peter Metcalf, Randy Read and Axel Brunger. It selects small spheres of reflections for the TEST set. You provide the percentage of TEST data and the radius of the sphere (in reciprocal lattice points). Reflections will be selected at random, and all reflections within a sphere around it will also be flagged. Probably a sphere radius of 1 or 2 will suffice for government work, although in cases of large cells and/or high solvent content you may need a larger radius.
Note that this option does *not* take the G-function for "NCS- related" reflections into account (yet ?).
If you provide a "percentage" > 100, the program assumes you have given it an approximate *number* of test set reflections and will convert it to a percentage.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf sp m1 10 1
 Encoding reflections ...
 Nr of TEST spheres : (        165)
 Nr of WORK reflections : (       9350)
 Nr of TEST reflections : (       1043)
 Percentage TEST data : (  10.036)
 This is an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.8 RFree TRansfer


transfer TEST flags from one dataset to the next. This would in my view only be necessary if you never use Simulated Annealing to uncouple R and Rfree, and when you move from refining a native at 1.8 A to a complex at 2.8 A, for instance. In that case, read your native data with TEST flags, and your complex data without, and use this command to transfer the flags from the native to the complex data set.
Note that this is not sufficient if the situation is such that you move to *higher* resolution ! In that case, read your new high-resolution dataset in twice, calculate the resolution, and for one of them kill all data higher than the previous resolution limit, transfer the flags from the low-resolution data set to it, and save it (this assumes that both dataset have similar low-resolution cut-offs and completeness !). For the other copy, kill all data below the old low-resolution limit, and generate TEST flags for the remaining, new data.
Finally, merge the files (e.g., using the Unix command "cat").

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf tr m2 m1
 Transferring TEST flags FROM : (M1)
 Nr of WORK reflections : (      52310)
 Nr of TEST reflections : (       2784)
 Percentage TEST data : (   5.053)
 This is an Rfree dataset
 TO : (M2)
 Nr of WORK reflections : (      47476)
 Nr of TEST reflections : (          0)
 Percentage TEST data : (   0.000)
 This is NOT an Rfree dataset
 Encoding reflections ...
 Transferring flags ...
 Nr of WORK reflections : (      45115)
 Nr of TEST reflections : (       2361)
 Percentage TEST data : (   4.973)
 This is an Rfree dataset
 CPU total/user/sys :      11.2      11.1       0.0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.9 RFree ADjust


change the percentage of TEST reflections. If the new percentage is smaller than the current one, an appropriate fraction of the TEST reflections will be selected at random and turned into WORK reflections. If the new percentage is greater than the current one, an appropriate fraction of WORK reflections will be selected at random and turned into TEST reflections.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re m1 racr2_hi_p212121_rfree.xplor xplor
 ...
 Percentage TEST data   : (  10.192)
 This is an Rfree dataset
 DATAMAN > rf ad m1 5.0
 Nr of WORK reflections : (      13182)
 Nr of TEST reflections : (       1496)
 Percentage TEST data   : (  10.192)
 Requested percentage   : (   5.000)
 Actual new percentage  : (   4.967)
 Nr of WORK reflections : (      13949)
 Nr of TEST reflections : (        729)
 Percentage TEST data   : (   4.967)
 This is an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.10 RFree BIn_list


list the number and percentage of TEST reflections in resolution shells. Can be used to check if there are resolution ranges that are "underpopulated" in terms of TEST reflections.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf bin m2 10
 4*(sin(theta)/lambda)**2 min : (  1.005E-02)
 4*(sin(theta)/lambda)**2 max : (  2.048E-01)
 Nr of bins : (         10)
 Bin size   : (  1.947E-02)

Bin 4STOLSQ limits Resol limits Nrefl Ntest %test 1 0.0100 0.0295 9.975 5.820 561 53 9.45 2 0.0295 0.0490 5.820 4.518 940 100 10.64 3 0.0490 0.0685 4.518 3.822 1305 125 9.58 4 0.0685 0.0879 3.822 3.372 1658 165 9.95 5 0.0879 0.1074 3.372 3.051 1952 202 10.35 6 0.1074 0.1269 3.051 2.807 2145 203 9.46 7 0.1269 0.1464 2.807 2.614 2260 220 9.73 8 0.1464 0.1658 2.614 2.456 2446 286 11.69 9 0.1658 0.1853 2.456 2.323 2498 252 10.09 10 0.1853 0.2048 2.323 2.210 2554 267 10.45

Nr of WORK reflections : ( 16446) Nr of TEST reflections : ( 1889) Percentage TEST data : ( 10.303) This is an Rfree dataset ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.11 RFree FIll_bins


add TEST reflections to resolution shells that contain too few of them. This can happen when you tranfer Rfree flags from a low-resolution or incomplete dataset to a new high-resolution and/or more complete one. This command can also be used (together with RFree CUt_bins) to obtain a TEST set which is almost uniform in size (percentage) in all resolution shells (in that case, use the two commands alternatively, and repeatedly, and use a large number of bins).
In the example below, Rfree flags were transfered from a nearly complete, but low-resolution (3.2 A) dataset, to a new 2.2 A dataset (which was less complete in the low-resolution shells, but did not merge well with the 3.2 A dataset). The RFree FIll_bins command is used to augment the TEST set.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf fi m2 10.0 15
 4*(sin(theta)/lambda)**2 min : (  1.005E-02)
 4*(sin(theta)/lambda)**2 max : (  2.048E-01)
 Nr of bins : (         15)
 Bin size   : (  1.298E-02)
 Filling up bins ...

Bin 4STOLSQ limits Resol limits Nrefl Ntest %test New Ntest & % 1 0.0100 0.0230 9.975 6.589 320 29 9.06 30 9.38 2 0.0230 0.0360 6.589 5.269 535 53 9.91 53 9.91 3 0.0360 0.0490 5.269 4.518 646 52 8.05 63 9.75 4 0.0490 0.0620 4.518 4.017 835 78 9.34 86 10.30 5 0.0620 0.0750 4.017 3.652 1010 103 10.20 103 10.20 6 0.0750 0.0879 3.652 3.372 1118 116 10.38 116 10.38 7 0.0879 0.1009 3.372 3.148 1299 79 6.08 127 9.78 8 0.1009 0.1139 3.148 2.963 1343 0 0.00 134 9.98 9 0.1139 0.1269 2.963 2.807 1455 0 0.00 133 9.14 10 0.1269 0.1399 2.807 2.674 1513 0 0.00 152 10.05 11 0.1399 0.1529 2.674 2.558 1574 0 0.00 164 10.42 12 0.1529 0.1658 2.558 2.456 1619 0 0.00 169 10.44 13 0.1658 0.1788 2.456 2.365 1680 0 0.00 157 9.35 14 0.1788 0.1918 2.365 2.283 1673 0 0.00 184 11.00 15 0.1918 0.2048 2.283 2.210 1699 0 0.00 168 9.89

Nr of WORK reflections : ( 16480) Nr of TEST reflections : ( 1855) Percentage TEST data : ( 10.117) This is an Rfree dataset ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.12 RFree CUt_bins


this command does the opposite of RFree FIll_bins, in that it removes TEST reflections from shells that contain too may of them. This may happen if you transfer TEST flags from a complete to a less complete dataset, for instance.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf cu m1 10 10
 4*(sin(theta)/lambda)**2 min : (  9.897E-03)
 4*(sin(theta)/lambda)**2 max : (  9.623E-02)
 Nr of bins : (         10)
 Bin size   : (  8.633E-03)
 Cutting down bins ...

Bin 4STOLSQ limits Resol limits Nrefl Ntest %test New Ntest & % 1 0.0099 0.0185 10.052 7.346 331 35 10.57 30 9.06 2 0.0185 0.0272 7.346 6.067 508 50 9.84 50 9.84 3 0.0272 0.0358 6.067 5.285 626 70 11.18 66 10.54 4 0.0358 0.0444 5.285 4.744 671 69 10.28 62 9.24 5 0.0444 0.0531 4.744 4.341 759 100 13.18 65 8.56 6 0.0531 0.0617 4.341 4.026 856 102 11.92 89 10.40 7 0.0617 0.0703 4.026 3.771 903 116 12.85 94 10.41 8 0.0703 0.0790 3.771 3.559 940 141 15.00 92 9.79 9 0.0790 0.0876 3.559 3.379 1010 135 13.37 97 9.60 10 0.0876 0.0962 3.379 3.224 1082 156 14.42 114 10.54

Nr of WORK reflections : ( 6939) Nr of TEST reflections : ( 759) Percentage TEST data : ( 9.860) This is an Rfree dataset ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.13 RFree REset


reset all Rfree flags to zero, i.e. no data in the Rfree-test set.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > rf res m2
 Rfree reset: (M2)
 Nr of WORK reflections : (       6723)
 Nr of TEST reflections : (          0)
 Percentage TEST data : (   0.000)
 This is NOT an Rfree dataset
 DATAMAN > rf ge m2 7.5
 Rfree generate: (M2)
 Nr of WORK reflections : (       6214)
 Nr of TEST reflections : (        509)
 Percentage TEST data : (   7.571)
 This is an Rfree dataset
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10 PLOT COMMANDS


10.1 SCatter_plot


plot a reflection property versus another for ALL reflections in a dataset. If you have Rfree flags set, you will get two curves in different colours and a comparison of average values etc. of the properties can be made from the output.
Plot the files with O2D using the SCatter command in a 1D plot window (or convert them to PostScript format straightaway).

The variables may be:
FOB = Fobs, SIG = Sigma(Fobs),
F/S = Fobs/Sigma(Fobs), INT = Fobs^2,
I/S = Fobs^2/Sigma(Fobs)^2, RES = resolution,
1/R = 1/resolution, STL = sin(theta)/lambda,
DST = 4(STL^2)

For instance, to plot the ratio of Fobs over Sigma(Fobs) as a function of sin(theta)/lambda, type something like: scat m1 fos_stl.plt stl f/s, i.e.: dataset name, plot file name, variable for the horizontal axis and variable for the vertical axis.

Note that this gives one plot point per reflection ! If you have many reflections, the BIn_plot command may be more useful.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > scat m1 sc1.plt ? ?
 Select one of : FOB = Fobs, SIG = Sigma,
   F/S = Fobs/Sigma, INT = F^2,
   I/S = F^2/Sigma^2, RES = resolution,
   1/R = 1/resolution, STL = sin(theta)/lambda,
   DST = 4(STL^2)
 DATAMAN > scat m1 sc1.plt stl f/s

Rfree flag : ( 0) Data points : ( 2615) Plot F/S versus STL STL MIN 5.0273E-02 MAX 1.5532E-01 AVE 1.1914E-01 SDV 2.6499E-02 F/S MIN 1.5617E-01 MAX 3.1629E+01 AVE 1.3766E+01 SDV 7.7298E+00

Rfree flag : ( 1) Data points : ( 265) Plot F/S versus STL STL MIN 5.2871E-02 MAX 1.5520E-01 AVE 1.2138E-01 SDV 2.6651E-02 F/S MIN 1.7302E-01 MAX 2.9454E+01 AVE 1.3895E+01 SDV 7.8384E+00 Plot file generated ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

In O2D, do:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 Option ? (open_window) op 1 1 0 1
 Option ? (open_window 1 1 0) sc sc1.plt sc1.ps
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.2 BIn_plot


similar to the SCatter_plot command, except that Y-values are averaged in bins of X-values. The X and Y variables are the same as for the SCatter-plot command, but the Y variable may also be the number of reflections in the bin. The last parameter determines how the bins are chosen: if it is a positive number, it is taken as the width of each bin, if it is a negative number, it is taken as minus the number of bins.
If you have Rfree flags set, you will get two curves in different colours and the work and test data will be compared by the program.
For example, to produce and compare the Wilson plot of the work and test data, use something like: bi m1 wil.plt dst int -20, i.e., plot the average intensity in each bin as a function of 4*(sin(theta)/lambda)^2 and use 20 bins.
To see if the reflections are evenly distributed in the resolution bins, use: bi m1 nref.plt dst nrf -20
Plot or convert the plot files with O2D, using the 1D command.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > bi m1 wil.plt dst ?
 Select one of : FOB = Fobs, SIG = Sigma,
   F/S = Fobs/Sigma, INT = F^2,
   I/S = F^2/Sigma^2, RES = resolution,
   1/R = 1/resolution, STL = sin(theta)/lambda,
   DST = 4(STL^2), NRF = nr of reflections
 DATAMAN > bi m1 wil.plt dst int -15
 DST Min, Max =   1.0109E-02  9.6498E-02
 Min and Max nr of bins =   5 64
 Nr of bins : (      15)
 Bin size   : (  5.759E-03)
 Plot INT versus DST
       Bin nr Start value  <INT> Work   Nr values  <INT> Test   Nr values
            1  1.0109E-02  1.4216E+08          72  1.2433E+08          13
            2  1.5869E-02  1.4396E+08         118  9.0143E+07           6
            3  2.1628E-02  1.2436E+08         130  7.5640E+07           5
            4  2.7387E-02  1.4487E+08         137  1.7044E+08          16
...
           14  8.4979E-02  1.0555E+08         219  1.4101E+08          25
           15  9.0739E-02  9.6113E+07         247  9.0426E+07          30

Comparison for WORK and TEST data : Correlation coefficient : ( 0.836) Scaled R w.r.t. <I1> : ( 1.552E-01) Scaled R w.r.t. <I2> : ( 1.552E-01) RMS difference : ( 3.526E+07) Plot file generated DATAMAN > bi m1 nref.plt dst nrf -15 DST Min, Max = 1.0109E-02 9.6498E-02 Min and Max nr of bins = 5 64 Nr of bins : ( 15) Bin size : ( 5.759E-03) Plot NRF versus DST Bin nr Start value <NRF> Work Nr values <NRF> Test Nr values 1 1.0109E-02 7.2000E+01 72 1.3000E+01 13 2 1.5869E-02 1.1800E+02 118 6.0000E+00 6 ... 14 8.4979E-02 2.1900E+02 219 2.5000E+01 25 15 9.0739E-02 2.4700E+02 247 3.0000E+01 30

Comparison for WORK and TEST data : Correlation coefficient : ( 0.784) Scaled R w.r.t. <I1> : ( 2.198E-01) Scaled R w.r.t. <I2> : ( 2.198E-01) RMS difference : ( 1.617E+02) Plot file generated ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

In O2D, do:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 Option ? (open_window) op 1 1 0 1
 Option ? (scatter_plot sc1.plt sc1.ps) 1d wil.plt wil.ps
 Option ? (1d_plot wil.plt wil.ps) 1d nref.plt nref.ps
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.3 DOuble_plot


same as the BIn_plot command, except that plots and statistics are given for two different datasets (rather than for work and test reflections of one dataset). (This command used to be called DUo_plot, but since this starts with the same two characters as the DUplicate command, the DUo_plot command could never be executed ... Changed in version 5.6.)

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > du m1 m2 d1.plt ?
 Select one of : FOB = Fobs, SIG = Sigma,
   F/S = Fobs/Sigma, INT = F^2,
   I/S = F^2/Sigma^2, RES = resolution,
   1/R = 1/resolution, STL = sin(theta)/lambda,
   DST = 4(STL^2)
 DATAMAN > du m1 m2 d1.plt dst int -20
 DST Min, Max =   4.5838E-04  1.7311E-01
 Min and Max nr of bins =   5 64
 Nr of bins : (      20)
 Bin size   : (  8.633E-03)
 Plot INT versus DST
       Bin nr Start value <INT> Set 1   Nr values <INT> Set 2   Nr values
            1  4.7748E-03  5.9571E+07          69  6.3925E+07          53
            2  1.3408E-02  1.4791E+08         135  1.3502E+08          93
            3  2.2040E-02  1.1905E+08         197  1.3481E+08         128
...
           19  1.6017E-01  0.0000E+00           0  1.3839E+07         177
           20  1.6880E-01  0.0000E+00           0  1.1492E+07         167

Comparison for Set 1 and Set 2 data : Correlation coefficient : ( 0.982) Scaled R w.r.t. Set 1 : ( 2.386E-01) Scaled R w.r.t. Set 2 : ( 2.386E-01) RMS difference : ( 2.463E+07) Plot file generated ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


10.4 HKl_aniso_plot


can be used to detect anisotropy in your crystal. It generates a plot with three curves, one for reflections with constant |h|, one for constant |k|, and one for constant |l|. DATAMAN collects all reflections with constant |h|, etc., and then calculates for each value of |h| etc. the average value of 1/Resolution (plotted as X), and the LN of the mean Fobs (plotted as Y).
If you have anisotropy along one of the axes, this should show up as one curve having quite a different shape than the other two. Only bins with > 20 reflections are included in the plot, but all values are listed in a table. Of course, the resolution for each reflection must have been calculated previously.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > hk m2 lysoz_aniso.plt
 HKL-aniso plot Set = (M2)

HKL <1/R>h LN<F>h # <1/R>k LN<F>k # <1/R>l LN<F>l # 0 0.000E+00 0.000E+00 0 3.577E-01 8.284E+00 610 3.507E-01 8.472E+00 729 1 3.062E-02 4.211E+00 1 3.554E-01 8.429E+00 628 3.531E-01 8.507E+00 741 2 1.497E-01 7.891E+00 11 3.573E-01 8.441E+00 634 3.581E-01 8.518E+00 732 3 2.007E-01 8.367E+00 31 3.563E-01 8.433E+00 637 3.604E-01 8.521E+00 722 4 2.402E-01 8.614E+00 68 3.612E-01 8.410E+00 625 3.637E-01 8.533E+00 711 5 2.488E-01 8.677E+00 104 3.659E-01 8.406E+00 607 3.694E-01 8.457E+00 688 6 2.529E-01 8.625E+00 130 3.718E-01 8.422E+00 584 3.760E-01 8.461E+00 675 ... 41 5.295E-01 7.430E+00 105 0.000E+00 0.000E+00 0 0.000E+00 0.000E+00 0 42 5.363E-01 7.273E+00 69 0.000E+00 0.000E+00 0 0.000E+00 0.000E+00 0 43 5.427E-01 7.156E+00 29 0.000E+00 0.000E+00 0 0.000E+00 0.000E+00 0 Plot file generated ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11 GUESSTIMATING COMMANDS


11.1 EStimate_unique


calculate an *estimate* of the number of unique reflections for one or more datasets. The cell constants must be known. You must provide the set name, resolution, lattice type (P or R for anything without centering, C, I or F for anything with centering) and the number of asymmetric units of your spacegroup (e.g., 4 in the case of P212121, 12 for P213, etc.). The estimate uses the volume of reciprocal space rather than explicit enumeration of reflections.
Usually, the value will be correct give or take 5-10 % (therefore, the precision of the number printed is much higher than the accuracy !!!).

The formula to estimate the volume of reciprocal space is:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
           4/3 * PI * (A*B*C)/(D**3)
    Nref = -------------------------
               2 * (1 + F) * N
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

PI = 3.14...; A/B/C = cell axes (A); D = resolution limit (A);
"2" = Friedel mates; F = centering flag (0 for P/R, 1 for C/F/I);
N = nr of asymmetric units of the spacegroup

It is analogous to the formula for calculating the volume of a sphere, recognising that max (H | D) = int (A / D), etc. Note that it *is* an approximation !
Rewriting the formula in terms of Nref gives an expression for D (used for the EFfective_resolution command).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
  DATAMAN > ce m1 41.6 41.6 202.4 90 90 90
 Cell : (  41.600   41.600  202.400   90.000   90.000   90.000)
 Volume (A3) : (  3.503E+05)
 DATAMAN > es m1 2.9 p 4
 Estimate unique reflections : (M1)
 Unit cell axis lengths : (  41.600   41.600  202.400)
 Resolution limit (A)   : (   2.900)
 Lattice type           : ( P)
 Nr asymm. units/cell   : (       4)
 Est. nr of reflections : (       7520)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.2 EFfective_resolution


following an idea of Bart Hazes, this option counts your reflections and estimates the resolution at which this number of reflections would correspond to a 100 % complete dataset. I suggest to use the number listed for reflections with F > 3 * Sigma(F) as *the* effective resolution. Warning: you may not like the results ... (especially in the case of weak data and/or low completeness).
Again, the volume of reciprocal space is used to estimate the effective resolution, so the result is a ball-park figure !
To be on the safe side, round to the nearest HIGHER multiple of 0.1 A (e.g., 3.12 becomes 3.2 A, 1.88 becomes 1.9 A, etc.).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > ef m1 p 4
 Effective resolution : (M1)
 Unit cell axis lengths : (  41.600   41.600  202.400)
 Lattice type           : ( P)
 Nr asymm. units/cell   : (       4)
 Nr of HKLs with F >= 0 * Sigma =     7104 ==> Eff. D ~     2.96 A
 Nr of HKLs with F >= 1 * Sigma =     7104 ==> Eff. D ~     2.96 A
 Nr of HKLs with F >= 2 * Sigma =     7061 ==> Eff. D ~     2.96 A
 Nr of HKLs with F >= 3 * Sigma =     6022 ==> Eff. D ~     3.12 A
 Nr of HKLs with F >= 4 * Sigma =     5606 ==> Eff. D ~     3.20 A
 Nr of HKLs with F >= 5 * Sigma =     5327 ==> Eff. D ~     3.25 A
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.3 GUess MW


"guestimates" the molecular weight of your molecule with the approximation: MW ~ 112 * Nresidues

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > gu mw 136
 Nr of residues  ~ (     136)
 Mol Weight (Da) : (  1.523E+04)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.4 GUess NRes


"guestimates" the number of residues in your molecule with the approximation: Nres ~ MW / 112

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > gu nres 16000
 Mol Weight (Da) : (  1.600E+04)
 Nr of residues  ~ (     143)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.5 GUess VM


"guestimates" values for Vm, V(molecule) and the solvent content of your crystal using the following approximations:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
    Vm ~ 112 * Nres * Nncs * Nasu / Vcell
    V  ~ 140 * Nres
    SC ~ 100 * (1 - 140 * Nres * Nncs * Nasu / Vcell)
  & SC ~ 100 * (1 - 1.23/Vm)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > guess vm m1 136 4 2
 Set : (M1)
 Cell constants    : (  41.600   41.600  202.400   90.000   90.000
  90.000)
 Nr of residues    : (     136)
 Asymm. units      : (       4)
 NCS molecules     : (       2)
 Cell volume (A3)  : (  3.503E+05)
 Assuming average residue mass = 112 Da
 Mass in cell (Da) ~ (  1.219E+05)
 Vm (A3/Da)        ~ (   2.874)
 Assuming average residue volume = 140 A3
 Mol volume (A3)   ~ (  1.904E+04)
 Protein cntnt (%) ~ (  43.487)
 Solvent cntnt (%) ~ (  56.513)
 100%*(1-1.23/Vm)  ~ (  57.209)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.6 GUess COmpleteness


use reciprocal space volume to estimate the completeness in a resolution shell

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > gu co m1 100 2.9 p 4
     7103 HKLs in [  2.90-100.00] Max ~     7520 Cmplt ~  94.45 %
 DATAMAN > gu co m1 100 10 p 4
      137 HKLs in [ 10.00-100.00] Max ~      183 Cmplt ~  74.86 %
 DATAMAN > gu co m1 3.2 3.1 p 4
      567 HKLs in [  3.10-  3.20] Max ~      559 Cmplt ~ 101.43 %
 DATAMAN > gu co m1 3.1 3.0 p 4
      617 HKLs in [  3.00-  3.10] Max ~      637 Cmplt ~  96.86 %
 DATAMAN > gu co m1 3.0 2.9 p 4
      677 HKLs in [  2.90-  3.00] Max ~      727 Cmplt ~  93.12 %
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.7 GUess RHo


this option helps you design your structure-refinement protocol by telling you (a) what the minimum *effective* resolution is that you need in order to perform any of 9 different types of refinement with a RHO (data-to-parameter ratio) of at least 1.5, and (b) what the value of RHO will be depending on your effective resolution and chosen refinement protocol. In calculating the number of parameters, the approximation: Natoms ~ 8 * Nresidues is used.
The example below may help to clarify these points:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > gu rho m1 p 4 2 136
 Refinement strategy for set : (M1)
 Unit cell axes  : (  41.600   41.600  202.400)
 Lattice type    : ( P)
 Nr asymm. units : (       4)
 Nr of residues  : (     136)
 NCS molecules   : (       2)

The following refinement strategies are used : Nr 1 = Rigid-body refinement (6*Nncs) Nr 2 = Torsion /Grouped Bs/NCS (~4*Nres) Nr 3 = Torsion /Grouped Bs/No NCS (~4*Nres*Nncs) Nr 4 = Cartesian/Grouped Bs/NCS (~26*Nres) Nr 5 = Cartesian/Grouped Bs/No NCS (~26*Nres*Nncs) Nr 6 = Cartesian/Isotr Bs /NCS (~32*Nres) Nr 7 = Cartesian/Isotr Bs /No NCS (~32*Nres*Nncs) Nr 8 = Cartesian/Anisotr Bs/NCS (~72*Nres) Nr 9 = Cartesian/Anisotr Bs/No NCS (~72*Nres*Nncs)

The optimal strategy depends on the resolution; Nreflections should be > ~1.5 Nparameters !!!!! The following table shows the MINIMUM effective resolution for which this is the case for these refinement strategies: Nr 1 ~ 12 parameters => Dmin ~ 21.68 A Nr 2 ~ 544 parameters => Dmin ~ 6.08 A Nr 3 ~ 1088 parameters => Dmin ~ 4.83 A Nr 4 ~ 3536 parameters => Dmin ~ 3.26 A Nr 5 ~ 7072 parameters => Dmin ~ 2.59 A Nr 6 ~ 4352 parameters => Dmin ~ 3.04 A Nr 7 ~ 8704 parameters => Dmin ~ 2.41 A Nr 8 ~ 9792 parameters => Dmin ~ 2.32 A Nr 9 ~ 19584 parameters => Dmin ~ 1.84 A

RHO = Nref / Npar is listed in the following table as a function of EFFECTIVE resolution and refinement strategy:

Res(A) Nrefl RHO 1 2 3 4 5 6 7 8 9 4.00 2866 238.8 5.3 2.6 0.8 0.4 0.7 0.3 0.3 0.1 3.90 3092 257.7 5.7 2.8 0.9 0.4 0.7 0.4 0.3 0.2 3.80 3342 278.5 6.1 3.1 0.9 0.5 0.8 0.4 0.3 0.2 3.70 3621 301.8 6.7 3.3 1.0 0.5 0.8 0.4 0.4 0.2 3.60 3931 327.6 7.2 3.6 1.1 0.6 0.9 0.5 0.4 0.2 3.50 4278 356.5 7.9 3.9 1.2 0.6 1.0 0.5 0.4 0.2 3.40 4666 388.8 8.6 4.3 1.3 0.7 1.1 0.5 0.5 0.2 3.30 5103 425.3 9.4 4.7 1.4 0.7 1.2 0.6 0.5 0.3 3.20 5597 466.4 10.3 5.1 1.6 0.8 1.3 0.6 0.6 0.3 3.10 6156 513.0 11.3 5.7 1.7 0.9 1.4 0.7 0.6 0.3 3.00 6793 566.1 12.5 6.2 1.9 1.0 1.6 0.8 0.7 0.3 2.90 7520 626.7 13.8 6.9 2.1 1.1 1.7 0.9 0.8 0.4 2.80 8355 696.3 15.4 7.7 2.4 1.2 1.9 1.0 0.9 0.4 2.70 9318 776.5 17.1 8.6 2.6 1.3 2.1 1.1 1.0 0.5 2.60 10435 869.6 19.2 9.6 3.0 1.5 2.4 1.2 1.1 0.5 2.50 11738 978.2 21.6 10.8 3.3 1.7 2.7 1.3 1.2 0.6 2.40 13267 1105.6 24.4 12.2 3.8 1.9 3.0 1.5 1.4 0.7 2.30 15073 1256.1 27.7 13.9 4.3 2.1 3.5 1.7 1.5 0.8 2.20 17224 1435.3 31.7 15.8 4.9 2.4 4.0 2.0 1.8 0.9 2.10 19803 1650.3 36.4 18.2 5.6 2.8 4.6 2.3 2.0 1.0 2.00 22925 1910.4 42.1 21.1 6.5 3.2 5.3 2.6 2.3 1.2 1.90 26738 2228.2 49.2 24.6 7.6 3.8 6.1 3.1 2.7 1.4 1.80 31447 2620.6 57.8 28.9 8.9 4.4 7.2 3.6 3.2 1.6 1.70 37329 3110.8 68.6 34.3 10.6 5.3 8.6 4.3 3.8 1.9 1.60 44775 3731.3 82.3 41.2 12.7 6.3 10.3 5.1 4.6 2.3 1.50 54340 4528.3 99.9 49.9 15.4 7.7 12.5 6.2 5.5 2.8 1.40 66836 5569.7 122.9 61.4 18.9 9.5 15.4 7.7 6.8 3.4 1.30 83477 6956.4 153.5 76.7 23.6 11.8 19.2 9.6 8.5 4.3 1.20 106133 8844.4 195.1 97.5 30.0 15.0 24.4 12.2 10.8 5.4 1.10 137790 11482.5 253.3 126.6 39.0 19.5 31.7 15.8 14.1 7.0 1.00 183398 15283.2 337.1 168.6 51.9 25.9 42.1 21.1 18.7 9.4 0.90 251575 20964.6 462.5 231.2 71.1 35.6 57.8 28.9 25.7 12.8 0.80 358200 29850.0 658.5 329.2 101.3 50.7 82.3 41.2 36.6 18.3 0.70 534690 44557.5 982.9 491.4 151.2 75.6 122.9 61.4 54.6 27.3 0.60 849067 70755.6 1560.8 780.4 240.1 120.1 195.1 97.5 86.7 43.4 0.50 1467188 ******* 2697.0 1348.5 414.9 207.5 337.1 168.6 149.8 74.9 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


12 RECIPES


12.1 FORMAT CONVERSION

This is easy:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 read s1 old.hkl protein|xplor|mklcf|shelxs|* *    ! read old format
 { apply Fobs magnitude, resolution and/or Fobs/Sigma cut-offs }
 write s1 new.hkl protein|xplor|mklcf|shelxs|* *   ! write new format
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.2 EXTREMELY LARGE FOBS

First make a histogram of the Fobs values, then SHow the large ones and if you don't like them, KIll them (or use ROgue_kill):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 histo set fobs 1 10 100 1000 10000 100000 1000000
 show set fobs > 100000
 kill set fobs > 100000
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.3 RESOLUTION CUT-OFFS

Supply the unit-cell constants and apply the appropriate cut-offs:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 cell set a b c al be ga
 calc set res
 kill set res > 10
 kill set res < 2.5
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.4 FOBS/SIGMA CUT-OFFS

This is really simple (but do you really want to throw away data ???):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 kill set f/s < 2
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.5 WILSON SCALING OF TWO DATASETS

Just follow the recipe:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 read s1 s1.hkl
 cell s1 a b c al be ga
 sym s1 symop1.o
 read s2 s2.hkl
 cell s2 a b c al be ga         ! may be different from those of set s1
 sym s2 symop2.o                ! ditto
 cal * resol                    ! calculate resolution of each reflection
 cal * orbit                    ! calculate orbital multiplicity
 kill * reso > 8.0              ! cut out common resolution range
 kill * reso < 2.7              ! ditto
 wilson s1 s2 w1.plt w2.plt
 wilson s1 s2 w1x.plt w2x.plt
 wilson s1 s2 w1xx.plt w2xx.plt
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.6 EXPANDING REFLECTIONS TO P1

This can easily be done with the LAUE command; this command always expands to P1, and then uses the Laue conditions to find out which reflections should be kept. Just feed DATAMAN your dataset, the proper symmetry operators (of your real spacegroup) and put it into Laue group 1:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 read m1 q.hkl
 symm m1 p422.sym
 laue m2 m1 1
 sort m3 m2 lkh
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Note that this is not limited to P1. For instance, if you want to expand your P213 reflections into P212121 (i.e., going down from m3 to mmm Laue symmetry; mmm = Laue group 6), use:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 read m1 q.hkl
 symm m1 p23.sym
 laue m2 m1 6
 sort m3 m2 lkh
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.7 WORKING WITH INTENSITIES

If you use SHELXL, for example, you will have Is in your files. Convert them to Fs with the CAlculate command:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 read m1 i.hkl
 calc m1 i2f
 (...)
 calc m1 f2i
 writ m1 i.hkl
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.8 GENERATING A UNIQUE, COMPLETE DATASET

Use the following set of commands to generate a unique, complete dataset:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 ! read your existing dataset (can in fact be *any* dataset since
 ! we only use it to tell DATAMAN what cell constants to use in
 ! the HEmisphere command !)
 read m1 dump.cns cns
 ! provide the cell constants
 cell m1 78.99 78.99 38.02 90 90 90
 ! generate an asymmetric unit of data (e.g., to 2.0 A resolution)
 ! provide the correct Laue group !
 asym m2 m1 2.0 8
 ! provide the symmetry operators
 sym m2 p43212
 ! remove systematic absences
 abs m2 kill
 ! sort by L-K-H
 sort m3 m2 lkh
 ! save the dataset
 write m3 new.cns cns
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.9 DIFFERENCE REFINEMENT

If you want to try out difference refinement with X-PLOR (see: T.C. Terwilliger & J. Berendzen, ACta Cryst D51, 609-618 (1995)), you can use DATAMAN to produce a set of modified Fobs using the following recipe:

(1) run the following job in XPLOR:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 remarks Generate Fobs(nati) and Fcalc(nati) for use in difference refinement
 remarks T.C. Terwilliger & J. Berendzen, ACta Cryst D51, 609-618 (1995)
 @parameters.xplor
 structure   @m1_gen.psf end
 coordinates @m1_mb_mbx.pdb
 xrefine
  @crystal.xplor
  @scatter.xplor
  nreflections=100000
  reflection @../hkl/cbh2.xplor end
  resolution 8.0 1.8
  method=FFT
  fft memory=1000000 end
  tolerance=0.0 lookup=false
  mbins 20
  update-fcalc
  print r-factor
  do scale (fcalc=fobs)
  write reflections fobs sigma
        output=../../umb/hkl/nati_fobs.xplor end
  write reflections fcalc sigma
        output=../../umb/hkl/nati_fcalc.xplor end
 end
 stop
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

(2) then change FCALC to FOBS in the output FCALC reflection file:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 unix> sed -e 's/FCALC/FOBS/' nati_fcalc.xplor > q ; mv q nati_fcalc.xplor
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

(3) create the Fobs-Fcalc file in DATAMAN (note: you can *NOT* do this in X-PLOR with "do amplitude (fobs=fobs-fcalc)", since this will give you the absolute value of the difference; here you want to keep the *sign* of the difference as well !):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > re fo nati_fobs.xplor xplor
 DATAMAN > re fc nati_fcalc.xplor xplor
 DATAMAN > co fo fc
 Correlation coeff Fobs : (   0.954)
 Rmerge = SUM |F1-S*F2| / SUM |F1+S*F2|
 Value of Rmerge : (   0.087)
 [NOTE: actual R-factor is ~2 times 0.087 = 17.4 %]
 DATAMAN > df delta fo fc
 DATAMAN > wr delta nati_fo_fc.xplor rxplor
 DATAMAN > $ head -3 nati_fo_fc.xplor
INDEX= 6 0 0 FOBS= 5.200 SIGMA= 3.253 TEST= 0
INDEX= 7 0 0 FOBS= -14.239 SIGMA= 3.677 TEST= 0
INDEX= 8 0 0 FOBS= -5.998 SIGMA= 4.667 TEST= 0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

(4) Wilson-scale the complex Fobs to the high-res dataset Fobs with DATAMAN (note: you *must* do this, unless both datasets are already on the same -e.g., absolute- scale; otherwise the subtraction will produce rubbish):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > read nati ../../nati/hkl/cbh2.xplor xplor
 Nr of reflections read : (      55094)
 DATAMAN > read mug mug_merge.xplor xplor
 Nr of reflections read : (      23496)
 DATAMAN > compare mug nati
 ...
 HKLs in set 1 : (      23496)
 HKLs in set 2 : (      55094)
 HKLs in both  : (      10413)
 Correlation coeff Fobs : (   0.928)
 ...
 Rmerge = SUM |F1-S*F2| / SUM |F1+S*F2|
 Value of Rmerge : (   0.090)
 DATAMAN > cell nati 49.1 75.8 92.9 90.0 103.2 90.0
 DATAMAN > symm nati p21.sym
 DATAMAN > cell mug 48.76 75.1 91.7 90.0 103.0 90.0
 DATAMAN > symm mug p21.sym
 DATAMAN > calc * resol
 Highest resolution : (   1.743)
 Highest resolution : (   2.400)
 DATAMAN > calc * centr
 DATAMAN > calc * orbit
 DATAMAN > kill nati resol < 2.4
 DATAMAN > kill mug resol > 8.0
 DATAMAN > wilson nati mug
 Name of first plot file ? (wilson_nati_mug_1.plt)
 Name of second plot file ? (wilson_nati_mug_2.plt)
 Step size ? (2.4999999E-03)
 ...
           W SCALE  =  0.20725E-01
           W BTEMP  =     -4.852
 ...
 Applying scale to set 2
 ...
 Comparison of <I1> and <I2> :
 Correlation coefficient : (   0.997)
 Scaled R w.r.t. <I1>    : (  6.731E-02)
 Scaled R w.r.t. <I2>    : (  6.731E-02)
 RMS difference          : (  2.897E+07)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

(5) create the difference Fobs file with DATAMAN (note that this may give a few reflections with Fobs < 0. I tend to ignore these [using "fwindow 0.001 1000000" in X-PLOR], but you could also reset them to zero):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 DATAMAN > df diff mug delta
 Delta-F Set 1 = (MUG)
     and Set 2 = (DELTA)
 Encoding reflections of set 1 ...
 Checking reflections of set 2 ...
 HKLs in native     set 1: (      23064)
 HKLs in derivative set 2: (      51722)
 HKLs in new nat-der set : (      22304)
 Nr of WORK reflections : (      20446)
 Nr of TEST reflections : (       1858)
 Percentage TEST data   : (   8.330)
 This is an Rfree dataset
 DATAMAN > stats diff
 Stats : (DIFF)

Item Minimum Maximum Average Sdv Var ==== ======= ======= ======= === === H -20 19 -1.205 8.986 80.754 K 0 29 11.362 7.322 53.616 L 0 38 14.850 9.247 85.508 Fobs -1.828E+01 5.202E+02 8.910E+01 5.651E+01 3.194E+03 SigFo 1.273E+00 2.019E+03 2.726E+02 2.170E+02 4.709E+04 Fo/Sig -4.208E+00 1.248E+02 5.261E+00 1.236E+01 1.527E+02

Correlation Fobs-SigFo : ( -0.212) Correlation Fobs-Fo/Sig : ( 0.344) Correlation SigFo-Fo/Sig : ( -0.502)

Nr of reflections : ( 22304) Nr of WORK reflections : ( 20446) Nr of TEST reflections : ( 1858) Percentage TEST data : ( 8.330) This is an Rfree dataset DATAMAN > wr diff diff_refinement_fobs.xplor rxplor ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

(6) refine against the new DIFF dataset (but calculate maps and [free] R-factors using the normal Fobs after every refinement cycle)


13 KNOWN BUGS

None, at present.


Uppsala Software Factory Created at Fri Dec 18 19:42:08 1998 by MAN2HTML version 971024/1.6