Uppsala Software Factory

Uppsala Software Factory - MAPMAN Manual


1 MAPMAN - GENERAL INFORMATION

Program : MAPMAN
Version : 990129
Author : Gerard J. Kleywegt & T. Alwyn Jones, 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 electron-density maps
Package : RAVE


2 REFERENCES

Reference(s) for this program:

* 1 * T.A. Jones & S. Thirup (1986). Using known substructures in protein model building and crystallography. EMBO J 5, 819-822. [http://www.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=3709525&form=6&db=m&Dopt=r]

* 2 * 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.

* 3 * 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.

* 4 * 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]

* 5 * G.J. Kleywegt (1996). Making the most of your search model. CCP4/ESF-EACBM Newsletter on Protein Crystallography 32, June 1996, pp. 32-36. [http://alpha2.bmc.uu.se/usf/factory_6.html]

* 6 * 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]

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

* 8 * G.J. Kleywegt & T.A. Jones (1998 ?). Software for handling macromolecular envelopes. To be published.

* 9 * G.J. Kleywegt (1998 ?). Local density correlation and ... To be published.

* 10 * 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

930409 - 0.5 - first production version; first manual
930410 - 0.6 - implemented HISTO, SCALE, ZERO
930413 - 0.7 - implemented UVW, SPACEGROUP
930416 - 0.8 - bug fix (reading XPLOR maps)
930420 - 0.9 - more formats supported
930510 - 1.0 - implemented EXTRACT
930513 - 1.1 - removed bugs in (NEW)EZD scale calculation
930602 - 1.3 - made smaller ESV version (only 3 maps of approximately 3 MW each); print program dimensioning with "?" option
930608 - 1.4 - implemented MOMENTS, $ and NORMALISE options
930615 - 2.0 - new production version; implemented ADD
930705 - 2.1 - new options MIN_MAX and CORRELATE
930803 - 2.2 - implemented PICK commands
930805 - 2.3 - implemented new READ format DSN6/BRICK, so that you may RECONSTRUCT OLD BRICK files !
930806 - 2.4 - implemented CELL option to change cell constants of a map (sometimes needed when reconstructing an old BRICK file)
930825 - 2.5 - made NEW-EZD format compatible with O 5.9.1
930901 -2.5.1- removed bug from reading NEW-EZD files
930928 - 3.0 - implemented BONES and SWAPBYTES options
931001 - 3.1 - implemented BONES PRUNE (for iterative skeletonisation)
931004 -3.1.1- sped up BONES PRUNE by a factor of ~200
931109 - 3.2 - implemented 3DMATRIX (from XPLOR) input format to enable display of rotation and translation functions with O and O2D
931117 - 3.3 - extended ODl command
931124 - - made paper manual; drastically shortened this one
940303 - - store spare bones randomly throughout skeleton
940323 - 3.4 - Steve Muchmore (Purdue) implemented TNT input format
940415 - 3.5 - improved O2D plot files
940525 - 3.6 - option DH produces Density Histogram
940806 - 3.7 - new output format ENVELOPE (for CCP4 masks)
950118 - 3.8 - sensitive to environment variable CCP4_OPEN
950207 -3.8.1- removed minor bug in LIst command
950216 -3.8.2- removed sign-reversal bug from NOrmalise command (it used to *add* rather than subtract the average)
950512 - 3.9 - implemented BRix command; added PHASES and FSMASK input formats for PHASES maps and masks, respectively (both are *UN*tested !)
950630 -3.9.1- minor bug fixes; added 1D_projection and 2D_projection
950717 - 4.0 - implemented loads of "filters"
950719 -4.0.1- fixed bug in reading DSN6 files (should now work properly on all machine types, little- and big-endian)
951020 - 4.1 - new command ERase, INtegrate, PAste and FRame
951102 - 4.2 - new PIck INtegrate command; fixed bug which made that peak interpolation only worked the first time PI PE/IN was used, but not thereafter
951113 - 4.3 - added WRite format X-PLOR (ASCII only); changed X-PLOR reading routine to utilise X-PLOR version 4 addition of average and sigma at end of map file
960124 -4.3.1- minor bug fix; print prod/plus and dynamic range whenever any of them changes
960125 -4.3.2- new VAlue_at command to list density value at a certain grid point (plus those of its neighbours)
960215 - 4.4 - try to restore lost changes (yet another disk crash ...); recalculate & display Prod & Plus whenever the dynamic range of the map changes; improve error message when Prod out of bounds; new VAlue_at command (different from the version before the disk crash); new CHange_value command to set all map values within a certain range to another value
960409 - 4.5 - macro mechanism (@ filename)
960411 -4.5.1- picked peaks can now be written as an AMORE rotation function solution file
960415 -4.5.2- minor bug fixes
960517 - 4.6 - implemented simple symbol mechanism
960629 -4.6.1- changed mask output format to OMASK
960827 -4.6.2- map statistics now do get updated for the MI, CO and AD commands
961121 - 4.7 - implemented PIck HIgh option (e.g., to pick high values in a rotation function map, rather than just the peaks)
961125 - 5.0 - implemented dynamic memory allocation
970501 -5.0.1- MStats command to get statistics about map points inside/outside a mask
970626 - 5.1 - support initialisation macro (setenv GKMAPMAN macrofile)
970628 - 5.2 - several minor changes; new PEek commands
970630 - 5.3 - removed "MAXREC=" from OPEN statements for DSN6 files (this stemmed from the PDP11 days !); implemented reading of BRIX maps; added map type "XPLOR" (easier to type than "X-PLOR" ;-)
971120 -5.3.1- NEWEZD files shouldn't contain null characters any longer (I hope; only happened on SGIs); the EZD format has been renamed to OLDEZD. From now on, "the EZD" format by default refers to the (NEW)EZD format. (NEW)EZD files can be contoured directly in O using the fm_* commands
980113 - 5.4 - added new map output format "AMORE" which will write *binary* maps for use with Jorge Navaza's version of AMORE (*not* the CCP4 version as far as I know !). They cannot be read back into MAPMAN at present, but if anyone needs that, let me know.
980428 -5.4.1- fixed bug which caused a crash if all points in a map have the same value
980715 -5.4.2- added option Mean to the "mode" parameter of the PEek CUbe and PEek SPhere commands
980922 -5.4.3- removed bug so that BRIX files are now read correctly on little-endian machines (DEC ALPHA) as well
980929 - 5.5 - new ZP_restart command to re-start the program with different memory allocation
981008 -5.5.1- new QInvert command to do quick-and-dirty inversion of a map (i.e., swap rho(1,1,1) and rho(NX,NY,NZ) etc.)
981021 -5.5.2- new ECho command to echo command-line input (useful in scripts)
981022 - 5.6 - implemented command history (# command)
990129 -5.6.1- BOnes commands will print more information when allocated storage space is exceeded


4 START-UP MACRO

From version 5.1 on, MAPMAN 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 GKMAPMAN to point to a MAPMAN macro file, e.g.:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 setenv GKMAPMAN /home/gerard/mapman.init
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


5 MAP SIZE AND NUMBER OF MAPS

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

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

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 setenv MAPSIZE 8000000
 setenv NUMMAPS 3
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

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

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 run mapman mapsize 20000000 nummaps 1
 ----- 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 map 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.

MAPMAN needs space for NUMMAPS + 1 maps.


6 INTRODUCTION

MAPMAN is a program for manipulation of electron-density files. Its applications comprise:

1 - map exchange among different machines through intermediate EZD files
2 - conversion of maps produced by different programs
3 - producing DSN6-files for "O"/FRODO (a la MAPPAGE or BRIX)
4 - simple mathematics on maps
5 - combination of different maps
6 - peak picking
7 - creating BONES skeletons
8 - swap bytes on VAX maps

MAPMAN allows you to work with several maps simultaneously ! The wild-card character "*" can be used for most single-map options if you want to carry out an operation for all maps in memory.

When you read a map, you give it a name by which you can refer to it later. All names are converted to uppercase, so "m1" and "M1" are the same maps ! MAPMAN checks that you don't use duplicate map names.

MAPMAN 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. MAPMAN will prompt you for the values of any parameters that were not supplied in this way.

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

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

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


7 FORMATS

At present, the following map formats are supported:

- INPUT: PROTEIN FFT-Y TENEYCK2 CCP4 X-PLOR EZD MASK NEWEZD BINXPLOR BRICK DSN6 3DMATRIX TNT PHASES FSMASK

- OUTPUT: CCP4 EZD MASK NEWEZD ENVELOPE X-PLOR

NOTE: only binary XPLOR files produced by 32-bit versions of the program can be read !

NOTE: we are unable to test whether or not the following formats actually work: PROTEIN FFT-Y TENEYCK2 PHASES FSMASK

NOTE: if you write a map as a mask file (format MASK or ENVELOPE) you must provide a cut-off to decide between solvent and protein density; the output file will contain zeros and ones.

NOTE: format ENVELOPE does not work correctly yet !!!!!

NOTE: this program is now sensitive to the environment variable CCP4_OPEN. If this variable has *not* been set, you will not be able to create any CCP4 maps. If this happens, the program will print a warning message. To fix this, put the following line in your .login or .cshrc file: setenv CCP4_OPEN UNKNOWN


8 STARTUP

MAPMAN welcomes you with the current array dimensions and a list of supported formats for input and output files. It then gives you a list of all available commands:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 *** MAPMAN *** MAPMAN *** MAPMAN *** MAPMAN *** MAPMAN *** MAPMAN ***

Version - 981008/5.5.1 (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:41:07 1998 User - gerard Mode - interactive Host - sarek ProcID - 9077 Tty - /dev/ttyq17

*** MAPMAN *** MAPMAN *** MAPMAN *** MAPMAN *** MAPMAN *** MAPMAN ***

Reference(s) for this program:

* 1 * T.A. Jones & S. Thirup (1986). Using known substructures in protein model building and crystallography. EMBO J 5, 819-822. [http://www.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=3709525&form=6&db=m&Dopt=r]

* 2 * 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.

* 3 * 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.

* 4 * 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]

* 5 * G.J. Kleywegt (1996). Making the most of your search model. CCP4/ESF-EACBM Newsletter on Protein Crystallography 32, June 1996, pp. 32-36. [http://alpha2.bmc.uu.se/usf/factory_6.html]

* 6 * 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]

* 7 * G.J. Kleywegt & T.A. Jones (1998 ?). Software for handling macromolecular envelopes. To be published.

* 8 * G.J. Kleywegt (1998 ?). Local density correlation and ... To be published.

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

* 10 * 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

*** MAPMAN *** MAPMAN *** MAPMAN *** MAPMAN *** MAPMAN *** MAPMAN ***

Allocate maps of size : ( 5000000) Max number of maps : ( 3) Max nr of maps in memory : 3 Max nr of points in map : 5000000 Max nr of picked peaks : 65536 Max size of density buffer : 1048576 Max nr of BONES points : 100000 Max nr of BONES branches : 100000 Max nr of BONES connections : 200000 Record length for DSN6/BRIX : 128

Input formats : ( PROTEIN FFT-Y TENEYCK2 CCP4 X-PLOR OLDEZD MASK NEWEZD BINXPLOR BRICK DSN6 3DMATRIX TNT PHASES FSMASK BRIX XPLOR CNS EZD)

Output formats : ( CCP4 OLDEZD MASK NEWEZD ENVELOPE X-PLOR DSN6 BRIX XPLOR CNS EZD AMORE)

MAPMAN's options :

? (list options) ! (comment) QUit $ shell_command & symbol value & ? (list symbols) @ macro_file ZP_restart mapsize nummaps

REad map file fmt WRite map file fmt [cutoff] DElete map LIst [map] HIsto map x1 x2 x3 [...] EXtract map file type plane MOments map DH map plot_file nr_bins 1D_proj map file type 2D_proj map file type first last

UVw map u v w SPacegroup map ispcgr LAbel map text CEll map a b c al be ga PRod_plus map prod plus RAnge map low high MUltiply map factor DIvide map factor PLus map value ODl map odl_file type mode SCale map low high ZEro map low high NOrmalise map ERase map e1 .. e6 INtegrate map e1 .. e6 FRame map type e1 e2 e3 VAlue_at map e1 .. e6 CHange_value map lo hi new

PEek VAlue map pdb_in pdb_out mode PEek CUbe map pdb_in pdb_out mode nr_points PEek SPhere map pdb_in pdb_out mode radius

SImilarity map1 map2 DUplicate map oldmap ADd map map_to_add MIn_max map1 map2 COrrelate map1 map2 PAste map1 e1 .. e6 map2 e1 e2 e3 MStats map mask_map cutoff QInvert map oldmap

BOnes SKel map base step nr_spares BOnes COnnect file id mc BOnes ? BOnes PRune file mc bfac

MAppage map file BRix map file SWapbytes brick_file

PIck PDb res atom first PIck LImits e1 .. e6 PIck LEvel threshold PIck ? PIck PEaks map file format PIck INtegrate map file format PIck HIgh map file format

FIlter ? FIlter EDge map a b FIlter MEdian map size FIlter AVerage map size FIlter MInimum map size FIlter MAximum map size FIlter SMooth map FIlter SIgnal/noise map size FIlter GRadient map FIlter LAplace map FIlter KHighest map size k FIlter KLowest map size k FIlter VAr_thr map size a b FIlter STat_diff map size a b c

Max nr of maps in memory : 3 Max nr of points in map : 5000000 Max nr of picked peaks : 65536 Max size of density buffer : 1048576 Max nr of BONES points : 100000 Max nr of BONES branches : 100000 Max nr of BONES connections : 200000 Record length for DSN6/BRIX : 128

MAPMAN > ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9 GENERAL COMMANDS


9.1 ? - list options


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


9.2 ! - comment


does nothing (use this for comments in input scripts and macros)


9.3 $ - execute shell command


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

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > $ xterm &
 MAPMAN > $ ls -FartCos m1*E
3435 -r--r--r--   1 gerard   1758288 Jun  2 23:54 m1_start.E
1634 -rw-r--r--   1 gerard    836224 Jun  8 13:46 m1_startx.E
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.4 #


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")


9.5 @ - execute MAPMAN macro


execute a macro

Example of a MAPMAN macro:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 ! mappage10.mapmac
 !
 ! read a map, set sigma level to 10.0, mappage for O
 !
 ! enter map file name, then map type
 read m1
 !
 ! normalise map to get sigma level at 1.0
 norm m1
 !
 ! multiply by 10 to get sigma level at 10.0
 multiply m1 10
 !
 ! enter O map file name
 mappage m1
 !
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

When executed, this gives:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > @mappage10.mapmac
 ... Opened macro file : (mappage10.mapmac)
 ... On unit : (      61)
 > (!)
 > (! enter map file name, then type)
 > (read m1)
 File name ? (not_defined) /nfs/scr_uu1/gerard/scratch/all4_amore.map
 Format ? (CCP4)
 Read header
 ...
 CPU total/user/sys :       3.3       1.9       1.4
 > (!)
 > (! normalise map)
 > (norm m1)
 Normalise : (M1)
 Subtract average : (  2.566E-07)
 Divide by sigma  : (  1.407E+00)
 ...
 CPU total/user/sys :       3.9       3.9       0.0
 > (!)
 > (! multiply by 10 to get sigma level at 10.0)
 > (multiply m1 10)
 Multiply : (M1)
 ...
 CPU total/user/sys :       1.9       1.9       0.0
 > (!)
 > (! enter O map file name)
 > (mappage m1)
 Brick file ? (10) /nfs/scr_uu1/gerard/scratch/q.E
 Opening DSN6 file : (/nfs/scr_uu1/gerard/scratch/q.E)
 Little-endian machine; will swap bytes
 Scale constant for cell : (      80)
 Pages along X, Y and Z  : (      21       21       38)
 Nr of records written : (      16759)
 CPU total/user/sys :       8.0       6.3       1.7
 > (!)
 ... End of macro file
 ... Control returned to terminal
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.6 & - manipulate symbols

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 -----
 MAPMAN > & ?
 Nr of defined symbols : (       4)
 Symbol PROGRAM : (MAPMAN)
 Symbol VERSION : (960517/4.6)
 Symbol START_TIME : (Fri May 17 20:26:49 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


9.7 QUit - stop the program


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


9.8 ZP_restart - restart the program with different memory allocation


if you have started the program with too little memory allocated, you can restart it with this command. Provide new values for MAPSIZE and NUMMAPS. (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 !!!


9.9 ECho - toggle command-line echo on/off


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).


9.10 REad - read a map into memory


read a map into memory. You have to supply a unique name for the map, the file name and the format type. If you enter "?" for the format type you get a list of currently supported input maps.

NOTE: binary XPLOR maps can only be read if they were created by an XPLOR version which uses 32 bits for reals and integers !!!

NOTE: you may also read old mappaged files (BRICK or DSN6 files) ! This enables you to convert ancient VAX PROTEIN maps into UNIX CCP4 format:
- create or read from tape your old PROTEIN map
- run AMAPPAGE on your VAX
- FTP (binary) the DSN6 file to your UNIX box
- run MAPMAN and do: SWapbytes old.map
- REad M1 old.map dsn6
- WRite M1 new.E ccp4

NOTE: from version 5.3, BRIX maps can also be read back into MAPMAN

If you have saved the full range of electron density values when you mappaged the file, you should be able to get correlation coefficients of ~0.998 between the original map and the new CCP4 map ! Note that the spacegroup is set to P1 by default.
Note that the program knows if it should do a swap-bytes on the header record of the brick file, so you can read BRICK files made on any type of machine into MAPMAN running on any type of machine.
Sometimes the cell constants are slightly altered when moving from VAX to UNIX (round-off error plus intermediate conversion to integers); in such cases, use the CELL command to get them right again.

From version 4.3 onwards, X-PLOR version 4 maps are recognised by the fact that they have the original average and sigma density stored at the end of the map. If these values are found, the map will be changed such that the original density values are restored (in e-/A3).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > re m1 x ?
 Supported formats : ( PROTEIN FFT-Y TENEYCK2 CCP4 X-PLOR EZD MASK NEWEZD
  BINXPLOR BRICK DSN6 3DMATRIX TNT)
 MAPMAN > re m1 p21_start.E ccp4
 Read header
 Filename : (p21_start.E)
...
 Fourier parameters as read from the data-set
          Origin ................................    0    0    0
          Extent ................................   70   48   88
          Grid ..................................   70   48   88
          uvw (fast, medium, slow) ..............    Z    X    Y

Header done Map read into memory CPU total/user/sys : 2.2 1.6 0.5 MAPMAN > re m2 map.tnt tnt Read header Input map : (map.tnt) Title : (*Density map produced by RFACTOR) Title : (*Density map calculated by inverting coefficients.) Title : (*Coefficients were of type 2FO-FC) Title : ( Map file PUNCHed on 11-Mar-94 11:54:15.) Fast, medium, slow axes ? ( 1 2 3) Number of sections ? ( 10) 170 Unit cell constants ? ( 100.000 100.000 100.000 90.000 90.000 90.000) 109.900 138.800 79.900 90.000 116.500 90.000

Parameters as read from the map file Origin ...................... -39 0 -62 Extent ...................... 232 167 170 Grid ........................ 160 200 120 Cell axes ................... 109.90 138.80 79.90 Cell angles ................. 90.00 116.50 90.00 UVW (fast, medium, slow) .... X Y Z

Header done Not in core Reading levels ... Level number : ( 10) Level number : ( 20) ... Level number : ( 160) Level number : ( 170) Sum of density in map : ( 9.406E+05) Map read into memory Closing TNT map on unit : ( 1) CPU total/user/sys : 32.0 29.4 2.6 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > re m4 q.xplor x-plor
 Read header
 Input map : (q.xplor)
 Title : (REMARKS FILENAME="q.xplor")
 Title : (REMARKS Created by MAPMAN V. 951113/4.3 at Mon Nov 13 19:50:32
  1995 for user ger)
 ...
 Header done
 Not in core
 Reading levels ...
 Level number : (      10)
 Level number : (      20)
 Level number : (      30)
 Level number : (      40)
 Level number : (      50)
 Level number : (      60)
 This is an X-PLOR version 4 map !
 Average density : (  1.411E-04)
 Sigma level     : (  6.193E+00)
 Restoring original density values (e-/A3)
 Sum of density in map : (  1.689E+02)
 Map read into memory
 Closing XPLOR map on unit : (       1)
 CPU total/user/sys :       2.3       2.2       0.1
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.11 WRite - write map to disk


write a map to disk. You have to supply the map name, the file name, the format type (or "?" for a list) and, if you are writing the map as a mask, a cut-off value: all points which have a density greater than the cut-off will be set to "1" in the mask; the others to "0". Masks are written in COMPRESSED format; if you should need the old format, convert the mask with MAMA afterwards. Note that "MASK" creates and O/RAVE-style mask, whereas "ENVELOPE" creates a CCP4 mask ("mode 0 map").
From version 4.3 onwards, ASCII X-PLOR maps can also be written (in the format of X-PLOR version 4).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > wr m1 x ?
 Supported formats : ( CCP4 EZD MASK NEWEZD ENVELOPE X-PLOR)
 MAPMAN > wr m1 p21_start.ezd ezd
 Writing EZD map ...
 CPU total/user/sys :      12.5      11.4       1.1
 MAPMAN > wr m1 p21_start.mask mask 0.1
 Writing MASK ...
 Border between 0 and 1 : (   0.100)
 Nr of mask points set : (     135304)
 Writing mask (compressed format)
 Grid points : (     295680)
 Stretches   : (      33321)
 Mask points : (     135304)
 Mask write OK
 CPU total/user/sys :      12.4      11.4       0.9
 MAPMAN > wr m1 qq.xplor x-plor
 Writing ASCII X-PLOR map ...
 CPU total/user/sys :       6.0       3.9       2.1
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.12 DElete - remove map from meory


remove a map from memory


9.13 LIst - list map properties


list properties of one or all maps in memory. These include:
- data from the map header
- statistics regarding the density values in the map
- data pertaining to the volume of the cell and the map
- current mappage PROD/PLUS and dynamic range


9.14 LAbel - enter map comment


enter a comment for a map (enclose in "double quotes" if the comment contains spaces)


9.15 CEll - change cell constants


change the unit cell constants of a map (sometimes needed when reconstructing old BRICK files). No checks are made. This is a potentially dangerous operation ...


9.16 MAppage - make map file for O


create an "O"/FRODO DSN6/brick file, using the current values of PROD and PLUS.
Note: from version 5.3 on your DSN6 files may have more than 32767 records ! (This was a relic from the PDP11 days.)

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > map m1 p21_start.map
 Opening DSN6 file : (p21_start.map)
 Big-endian machine; will NOT swap bytes
 Pages along X, Y and Z  : (       9        6       11)
 Nr of records written : (        649)
 CPU total/user/sys :       3.8       3.3       0.4
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.17 BRix - make map file for O


same as MAppage, but creates a paged density file in Morten's BRIX format. If you type "head -10 brix_file", you'll see the cell constants, grid, etc. of the map.
BRIX maps can be used with the Map_* commands in O just as plain mappaged files.
Note: from version 5.3 on your DSN6 files may have more than 32767 records ! (This was a relic from the PDP11 days.)

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > br m1 m1_1.brix
 Opening DSN6 file : (m1_1.brix)
 Little-endian machine; will swap bytes
 Pages along X, Y and Z  : (      11       11       10)
 Nr of records written : (       1211)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.18 PRod_plus - set values for MAPPAGE


set the values for PROD (real) and PLUS (integer) for any or all maps (will be used for the next MAPPAGE)


9.19 RAnge - set values for MAPPAGE


define a range of density values at which you are likely to contour your data. MAPMAN will figure out appropriate values for PROD and PLUS from this range. (See recipe 3.3 !)


9.20 MUltiply - multiply map by a constant


multiply all density values with a certain factor. The density statistics AND the values of PROD and PLUS are automatically updated.


9.21 DIvide - divide map by a constant


divide a map by a factor (NOT equal to zero). The density statistics AND the values of PROD and PLUS are automatically updated.


9.22 PLus - add a constant to map


add a number to all density values (use a negative number to subtract). The density statistics AND the values of PROD and PLUS are automatically updated.


9.23 ODl - make ODL file for O


make an ODL file which shows the boundaries of your map OR of your unit cell when displayed in O. Supply:
o the name of the map
o the name of the ODL output file
o the type (Box or Cell)
o the drawing mode (Line or Solid)
Draw it in O by typing: "draw mymap.odl". This is useful to have on the screen since it prevents you from trying to contour the map outside its boundaries. If you want to change the name of the graphics object or its colour, you have to edit the file.


9.24 FRame - convert map indices


conversion between map indices, fractional and Cartesian coordinates. This may be useful for the PIck LImits, ERase, INtegrate, Value_at and PAste commands.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > fr
 Which map ? (M1)
 Input Indices/Fractional/Cartesian (I/F/C) ? (I)
 Value for X ? (0.0000000E+00) 20
 Value for Y ? (0.0000000E+00) 40
 Value for Z ? (0.0000000E+00) 77
 Indices    : (      20       40       77)
 Fractional : (   0.333    0.417    0.642)
 Cartesian  : (   3.017   31.292   57.333)
 Point lies inside the map
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > fr m1 fr 0.333    0.417    0.642
 Fractional : (   0.333    0.417    0.642)
 Indices    : (      20       40       77)
 Cartesian  : (   2.994   31.317   57.363)
 Point lies inside the map
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > fr m1 cart 3.017   31.292   57.333
 Cartesian  : (   3.017   31.292   57.333)
 Fractional : (   0.333    0.417    0.642)
 Indices    : (      20       40       77)
 Point lies inside the map
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.25 INtegrate - sum part of map


sum the density values in a part of a map.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > in m1 10 50 20 60 30 70
 Limits : (      10       50       20       60       30       70)
 Integrate : (M1)
 Nr of points summed : (      68921)
 Sum of density      : (  1.105E+02)
 Sum of | density |  : (  5.356E+04)
 Average zeroed density   : (  1.603E-03)
 Average | zeroed dens |  : (  7.771E-01)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.26 ERase - zero part of map


set the density in a part of the map to zero.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > er m1 10 50 20 60 30 70
 Limits : (      10       50       20       60       30       70)
 Erase : (M1)
 Nr of points set to zero : (      68921)
 Sum of zeroed density    : (  1.105E+02)
 Sum of | zeroed dens |   : (  5.356E+04)
 Average zeroed density   : (  1.603E-03)
 Average | zeroed dens |  : (  7.771E-01)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.27 VAlue_at - get density values at points in map


list the electron-density values at a block of points. If the limits you supply imply that there are more than 50 points to be listed, the program asks if you really want to see these. Any limits you provide that are outside the map are reset to the lower or upper bound of the corresponding map limits.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > va m1 -20 -20 -20 -20 -20 -20
 Limits : (       8        8       20       20      -15      -15)
 List values : (M1)
 Nr of map points to list : (          1)

X Y Z Density 8 20 -15 0.0000E+00

Nr of points listed : ( 1) Sum of density : ( 0.000E+00) Sum of | density | : ( 0.000E+00) Average density : ( 0.000E+00) Average | dens | : ( 0.000E+00) MAPMAN > va m1 40 42 70 72 40 42 Limits : ( 40 42 70 72 40 42) List values : (M1) Nr of map points to list : ( 27)

X Y Z Density 40 70 40 8.1301E+00 40 70 41 9.2141E+00 40 70 42 1.0705E+01 40 71 40 8.1301E+00 40 71 41 9.6206E+00 40 71 42 1.1789E+01 40 72 40 5.2846E+00 40 72 41 7.8591E+00 40 72 42 1.1111E+01

X Y Z Density 41 70 40 1.3008E+01 41 70 41 1.3008E+01 41 70 42 1.3686E+01 41 71 40 1.3008E+01 41 71 41 1.3008E+01 41 71 42 1.4092E+01 41 72 40 1.0705E+01 41 72 41 1.2195E+01 41 72 42 1.4092E+01

X Y Z Density 42 70 40 1.5176E+01 42 70 41 1.5447E+01 42 70 42 1.5176E+01 42 71 40 1.5176E+01 42 71 41 1.5447E+01 42 71 42 1.5176E+01 42 72 40 1.4905E+01 42 72 41 1.5447E+01 42 72 42 1.5176E+01

Nr of points listed : ( 27) Sum of density : ( 3.358E+02) Sum of | density | : ( 3.358E+02) Average density : ( 1.244E+01) Average | dens | : ( 1.244E+01) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.28 PEek VAlue|CUbe|SPhere - extract density values at atomic positions


with the PEek commands you can feed MAPMAN a map and a PDB file, and it will extract information concerning the (integrated, r.m.s., ...) density at the atomic positions (of course, this also works for PDB files containing peaks picked earlier by MAPMAN). The value will be inserted in the B-factor field, and a new PDB file will be created. Note that the B-factor field has only 6 columns (i.e., you may have to rescale your map to get reasonable numbers).

With the PEek VAlue command, the density at the atomic centre will be extracted; the "mode" parameter may be:
* N = Nearest - this will extract the value at the nearest grid point
* I = Interpolate - this will do linear interpolation of the 8 grid points surrounding each atom
* S = Spline - this will do spline interpolation using a 4 * 4 * 4 cube surrounding each atom

With the PEek CUbe command, density in the neighbourhood of atomic positions will be extracted; the "mode" parameter may be:
* I = Integrate - simply add up the density values inside the cube
* M = Mean - calculate the average of the density values inside the cube
* A = Absolute integral - add up the absolute density values
* R = Rms - calculate the root-mean-square density
You need to supply the number of grid points around each atom that will be included in the calculations (e.g., 1 or 2). Using a margin of 1 grid point means that 27 grid points will be considered (in general: (1+2*N)**3, where N is the number you supply).
Note that the affected bit of the map is cubic only for cubic cells; in general it will be a parallellopiped.

The PEek SPhere command is very similar to the PEek CUbe command, except that a sphere of points around each atom is used. You must supply the mode (same options as for PEek CUbe), and the radius around each atom.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > peek value m1 m6a.pdb
 Output PDB file ? (out.pdb) value_spline.pdb
 Mode (Nearest|Interpolate|Spline) ? (Spline) s
 Grid spacing (A) : (   0.501    0.499    0.489)
 Peeking ...
 New PDB file created
 MAPMAN > peek cube m1 m6a.pdb cube_rms2.pdb rms 2
 Grid spacing (A) : (   0.501    0.499    0.489)
 Peeking ...
 New PDB file created
 MAPMAN > peek sph m1 m6a.pdb sphere_rms2.pdb rms 2
 Grid spacing (A) : (   0.501    0.499    0.489)
 Peeking ...
 New PDB file created
 CPU total/user/sys :      13.0      13.0       0.0
 MAPMAN > peek sph m1 m6a.pdb sphere_abs2.pdb abs 2
 Grid spacing (A) : (   0.501    0.499    0.489)
 Peeking ...
 New PDB file created
 CPU total/user/sys :      13.0      13.0       0.0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.29 SImilarity - compare two maps


compute several comparison statistics for two maps (which must have the same cell and grid and a non-empty overlap region). The following values are computed:
- correlation coefficient
- the unscaled R-factors with respect to both maps
- the RMS-difference between the maps
- the shape similarity index (equals the correlation coefficient if and only if the average of both maps is the same)

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > si m1 m2
 Similarity Map : (M1)
 Similarity Map : (M2)
...
 Nr of points in common grid : (     295680)
 Correlation coefficient : (   1.000)
 R-factor w.r.t. map 1   : (  35.424)
 R-factor w.r.t. map 2   : (   0.973)
 RMS difference          : (  1.961E+02)
 Shape similariy index   : (   0.239)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.30 COrrelate - combine two maps


combine two maps in the following way:
GAMMA = 2*MAP1*MAP2/(MAP1^2 + MAP2^2)
MAP1 = GAMMA*MAP1
MAP2 = GAMMA*MAP2
The resulting density for each point is determined by:
(a) the original density
(b) the correlation with the density at the corresponding point in the other map
Note that -1 <= GAMMA <= +1, with GAMMA = 1 if and only if MAP1 = MAP2. (NOTE: GAMMA is set to 1 if MAP1=MAP2=0.)
Reference: B. Rees et al., J. Mol. Biol., 214, 281-297 (1990).


9.31 MStats - statistics for map points inside/outside a mask


calculate map statistics separately for points lying inside or outside a mask. Parameters:
- name of the map for which you want statistics
- name of the "map" which is to be used as the mask
- cut-off value for deciding which points are set in the "mask map" (if you read in a real mask, 0 is outside and 1 is inside the mask, so a cut-off of 0.5 is appropriate)

The map and the "mask map" must have the same grid and cell.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > re m1 m11_2fofc.map dsn6
 ...
 MAPMAN > re m2 m1.mask mask
 ...
 MAPMAN > mstats m1 m2 0.5
 Masked stats Map  : (M1)
              Mask : (M2)
 Lower limits common volume : (     -56      -51      -46)
 Upper limits common volume : (      71       63       69)
 Limits first  map  : (       1      128        1      115        1
  116)
 Limits second map  : (      11      138       14      128       17
  132)
 Number of common map points : (    1707520)

Density inside the mask : Nr of points : ( 280522) Average density : ( 2.528E-02) St. deviation : ( 1.803E+01) Minimum value : ( -5.488E+01) Maximum value : ( 1.000E+02) Sum of values : ( 7.091E+03)

Density outside the mask : Nr of points : ( 2910308) Average density : ( -3.621E-01) St. deviation : ( 1.432E+01) Minimum value : ( -5.488E+01) Maximum value : ( 9.756E+01) Sum of values : ( -1.054E+06) CPU total/user/sys : 10.0 9.7 0.3 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.32 MIn_max - combine two maps


combine two maps in the following way:
MAP1 = MIN(MAP1,MAP2)
MAP2 = MAX(MAP1,MAP2)


9.33 ADd - combine two maps


add two maps and store the result in the first map. Only density inside the common volume is added, the rest of the points are not affected. Possible uses of this option:
(1) if you don't like COMAP, use this option in combination with MUltiply (for example), to combine maps from different crystal forms
(2) to find the difference between two maps which perhaps should be nearly identical, MUltiply one of them by -1.0 and add it to the other; the statistics of the residual density will tell you how different the maps were


9.34 PAste - paste density into another map


yes, it's Macintosh-like cut-and-paste functionality ! This command allows you to copy a part of a map and to paste it into another map (which must have the same cell and grid, of course).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > pa m1 10 50 20 60 30 70 m3 10 20 30
 Limits : (      10       50       20       60       30       70)
 Nr of points copied : (      68921)
 Sum of OLD density  : (  1.879E+02)
 Sum of NEW density  : (  1.105E+02)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.35 DUplicate - copy a map in memory


make a "backup copy" of a map in memory.


9.36 QInvert - quick-and-dirty inversion of a map


"invert" a map (*not* an inverse FFT !) by creating a new map, such that rho-new(I,J,K) = rho-old(NX+1-I,NY+1-J,NZ+1-K).


9.37 HIsto - density histogram


generate a histogram of density counts. You have to supply at least three values to define the histogram ranges.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > hi m1 -100 -50 -30 -20 -10 0 10 20 30 40 50 100
 Histrogram limits : ( -1.000E+02  -5.000E+01  -3.000E+01  -2.000E+01
  -1.000E+01   0.000E+00   1.000E+01   2.000E+01   3.000E+01   4.000E+01
  5.000E+01   1.000E+02)
 Histogram : (M1)

Nr of values < -100.00 : 0 ( 0.000 %) Nr of values >= -100.00 and < -50.00 : 780 ( 0.264 %) Nr of values >= -50.00 and < -30.00 : 15222 ( 5.148 %) Nr of values >= -30.00 and < -20.00 : 23328 ( 7.890 %) Nr of values >= -20.00 and < -10.00 : 42825 ( 14.484 %) Nr of values >= -10.00 and < 0.00 : 77377 ( 26.169 %) Nr of values >= 0.00 and < 10.00 : 66974 ( 22.651 %) Nr of values >= 10.00 and < 20.00 : 28849 ( 9.757 %) Nr of values >= 20.00 and < 30.00 : 16553 ( 5.598 %) Nr of values >= 30.00 and < 40.00 : 11028 ( 3.730 %) Nr of values >= 40.00 and < 50.00 : 6946 ( 2.349 %) Nr of values >= 50.00 and < 100.00 : 5797 ( 1.961 %) Nr of values >= 100.00 : 1 ( 0.000 %) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.38 EXtract - make O2D plot file of a plane


extract a plane from a map as a 2D contour plot file for O2D. You must supply the map name, the name of the O2D file, the type of plane (X, Y or Z) and the index of the plane (in grid units).
You may plot the file with O2D (first "open 2 1 0 1", then "2d your_file"). This may be useful for plotting Harker sections of Patterson maps, for instance.
By default, MAPMAN will generate instructions to plot five levels, (AVERAGE + ILEVEL*SIGMA/2), ILEVEL=1,5. You may change this by editing the plot file.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > li m1
...
 File    = crabp.difpat
 Grid    =         40        40       200
 Origin  =          0         0         0
 Extent  =         40        21       200
 Cell    =     41.500    41.500   203.500    90.000    90.000    90.000
...
 MAPMAN > ex m1 z25.o2d z 50
 O2D file written
 MAPMAN > ex m1 z50.o2d z 100
 O2D file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.39 1D_proj - make O2D plot file of a 1D projection


project the density in the entire map onto one of the three axes, X, Y or Z (A, B, or C). The output is a 1D plot file which can be converted into PostScript (or CricketGraph) format with O2D.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > 1d
 Which map ? (m1)
 O2D plot file ? ( ) c.plt
 ONTO which axis (X/Y/Z) ? (Z)
 Nr of points in projection :          301
 Average density            :   3.9404E+01
 Standard deviation         :   2.3940E+03
 Minimum density            :  -4.5252E+03
 Maximum density            :   4.9876E+03
 O2D file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.40 2D_proj - make O2D plot file of a 2D projection


project the density in *along* one of the three axes for a number of planes perpendicular to that axis. This may be useful if you want to include neighbouring planes of Harker plots (compare with the EXtract command). The output is a 1D plot file which can be converted into PostScript (or CricketGraph) format with O2D.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > 2d
 Which map ? (M1)
 O2D plot file ? ( ) ab.plt
 ALONG which axis (X/Y/Z) ? (Z)
 Start plane ? (0)
 End plane ? (300)
 Nr of points in projection :        16641
 Average density            :   7.1369E-01
 Standard deviation         :   2.8884E+02
 Minimum density            :  -8.0051E+02
 Maximum density            :   1.2097E+03
 O2D file written
 CPU total/user/sys :       3.6       3.4       0.2
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.41 SCale - scale map


scale a map by defining the lower and upper bounds of the density (statistics and PROD and PLUS are automatically updated).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
...
 Density min,max,ave =     -7.2651E+01     1.0000E+02     1.5338E-08
 Sigma, variance     =      1.9707E+01     3.8836E+02
 Mappage prod/plus   =      1.4770E+00            107
 Mappage dyn. range  =     -7.2446E+01     1.0021E+02
...
 MAPMAN > sc m1 -1 1
 Scale : (M1)
 MAPMAN > li
 Nr of maps in memory : (       1)

Map 1 = M1 ... Density min,max,ave = -1.0000E+00 1.0000E+00 -1.5841E-01 Sigma, variance = 2.2829E-01 5.2117E-02 Mappage prod/plus = 1.2750E+02 127 Mappage dyn. range = -9.9608E-01 1.0039E+00 ... ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.42 ZEro - zero low/high density values


set all points with density LESS THAN the lower bound OR GREATER THAN the upper bound to zero. Statistics, PROD and PLUS are updated automatically.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
...
 Density min,max,ave =     -7.2651E+01     1.0000E+02     1.5338E-08
 Sigma, variance     =      1.9707E+01     3.8836E+02
 Mappage prod/plus   =      1.4770E+00            107
 Mappage dyn. range  =     -7.2446E+01     1.0021E+02
...
 MAPMAN > zero m1 0 40
 Zero : (M1)
 Less    than lower bound : (     159532)
 Greater than upper bound : (      12744)
 MAPMAN > li m1
 Nr of maps in memory : (       1)

Map 1 = M1 ... Density min,max,ave = 0.0000E+00 3.9999E+01 5.0790E+00 Sigma, variance = 8.9967E+00 8.0940E+01 Mappage prod/plus = 6.3751E+00 0 Mappage dyn. range = 0.0000E+00 3.9999E+01 ... ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.43 CHange_value - alter density values


set all points with density GREATER THAN the lower bound AND LESS THAN the upper bound to the new, user-supplied value. This can be used, for instance, if you want to contour a map extracted with (M)AVE at negative levels. Since the areas outside the mask will have a density of 0.0, you may want to reset those to a value which is smaller than the minimum density inside the mask. In that particular case, use a range of -0.001 and 0.001 as in the example below:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > ch
 Which map ? (m1)
 Lower bound ? ( -1.0000E+04) -0.001
 Upper bound ? (  9.9900E-01) 0.001
 New value ? (   0.0) -100
 Change : (M1)
 Nr of points changed : (      61484)
 Requested dynamic range : -1.0000E+02  1.6125E+01
 Value of Prod and Plus  :  2.1959E+00     220
 Actual dynamic range    : -1.0019E+02  1.5939E+01
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.44 UVw - set slicing directions


-> change the values of U, V and W, which determine how the map is written in CCP4-format (fast, medium, slow; 1=X, 2=Y, 3=Z).
NOTE: NOT TESTED


9.45 SPacegroup - set spacegroup number


change the spacegroup number (used when writing CCP4 maps), for example from the real one to P1.
NOTE: DOES NOT CHANGE THE SYMMETRY OPERATORS IN CCP4 MAPS !!! USE MAPFIX TO DO THIS.


9.46 MOments - extensive map statistics


calculate more extensive map statistics, including higher-order statistical moments of the electron density distribution

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > mom m1
 Moments : (M1)

Extensive map statistics Number of data points ................... 439296 Average electron density ................ -1.18879E-07 RMS density ("sigma") ................... 1.24695E+01 Mean Absolute Deviation from the mean ... 8.93063E+00 Variance ................................ 1.55488E+02 Standard deviation ...................... 1.24695E+01 Skewness (third moment) ................. 7.29890E-01 Sigma(skewness) estimate ................ 3.69570E-03 Skewness / Sigma(skewness) .............. 1.97497E+02 Asymmetric tail extending towards positive density Kurtosis (fourth moment) ................ 2.47488E+00 Sigma(kurtosis) estimate ................ 7.39140E-03 Kurtosis / Sigma(kurtosis) .............. 3.34832E+02 Leptokurtic (sharp) distribution ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9.47 NOrmalise - normalise map


gives a map an average value of zero and a standard deviation of one by first subtracting the average and then dividing by the old standard deviation. May (or may not) be useful for comparing different maps or for scaling maps prior to using COMAP.
NOTE: this operation changes the average, standard deviation (and thereby) variance of your map, but not its skewness or kurtosis (see MOMENTS option).
NOTE: use this option, followed by MULTIPLY to give your maps a standard sigma level (e.g., 10).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > list m1
 ...
 Nr of points =     208800
 Density min,max,ave =     -4.5111E+01     1.0000E+02    -5.0106E-03
 Sigma, variance     =      4.3394E+00     1.8831E+01
 Mappage prod/plus   =      1.7573E+00             79
 Mappage dyn. range  =     -4.4956E+01     1.0016E+02
 ...
 MAPMAN > no m1
 Normalise : (M1)
 Subtract average : ( -5.011E-03)
 Divide by sigma  : (  4.339E+00)
 CPU total/user/sys :       1.5       1.4       0.0
 MAPMAN > li m1
 ...
 Nr of points =     208800
 Density min,max,ave =     -1.0397E+01     2.3043E+01    -2.3120E-03
 Sigma, variance     =      1.0000E+00     1.0000E+00
 Mappage prod/plus   =      7.6256E+00             79
 Mappage dyn. range  =     -1.0360E+01     2.3080E+01
 ...
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.48 SWapbytes - swap bytes on binary map file


do byte-swapping on a DSN6 map which you ftp-ed (binary) from a VAX to a Unix box This OVERWRITES your old file !!! Due to round-off errors you may need to adjust your cell parameters (see example below, where two angles are 89.99 instead of 90 degrees)

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > sw q2.map
 Origin              0    0    0
 Extent             85   66  157
 Grid               84  128  156
 Cell       49.10   75.80   92.90   89.99  103.20   89.99
 Prod/Plus          1.00     0
 Scale1/2          100  100
 Bricks in x,y,z    11    9   20
 Nr of records         1981
 Total number of records written =     1981
 CPU total/user/sys :       7.0       1.7       5.3
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.49 DH - make O2D plot file of density histogram


create a Density Histogram. The output is an O2D plot file (plot with "1D" or "HI" in O2D). If you've just done an averaging step, ALL solvent points will have the same density; you may want to set the corresponding histogram value to zero in the plot file before conversion with O2D (you may also need to change the XYVIEW card).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > dh m1 m1bins.plt 500
 Calculating histogram ...
 O2D file written
 CPU total/user/sys :       2.7       2.5       0.1
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 % 420 gerard rigel 00:51:31 dirs/p2 > o2dps m1bins.plt hi

... o2dps ... convert O2D plot files to PostScript ...

Will convert m1bins.plt to m1bins.ps with option hi ...

Running O2D ...

Lowest X-value : ( -6.610E+01) Highest X-value : ( 8.682E+01) Lowest Y-value : ( 0.000E+00) Highest Y-value : ( 3.158E+05) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


10 PICKING PEAKS


10.1 PIck ? - list peak-pick parameters


print the current values of the peak-pick parameters

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > pi ?

Peak residue & atom names : |HOH| O1 | First peak residue number : 1001 Peak threshold level : 6.0000E+00 Pick limits : 0 0 0 0 0 0 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


10.2 PIck PDb - define peak format


define the settings for the PDB file to which the picked peaks will be written; supply the residue type, atom name and the first residue number. NOTE: atom names have FOUR characters, the FIRST TWO of which must be the symbol of the chemical element (e.g., " O", " N") !

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > pick pdb H2O " O  " 501
 MAPMAN > pi ?

Peak residue & atom names : |H2O| O | First peak residue number : 501 Peak threshold level : 6.0000E+00 Pick limits : 0 0 0 0 0 0 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


10.3 PIck LImits - define map part for peak-picking


define the part of the map that has to be picked (in grid units). Supply lower X, upper X, lower Y, etc. Setting lower and upper to 0, or lower greater than upper, results in the entire range of the map being picked.
Note that border points cannot be picked and that no crystallographic symmetry is used in the picking process !

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > pi lim 0 0 10 -10 5
 Upper bound for Z ? (0) 95
 MAPMAN > pi ?

Peak residue & atom names : |H2O| O | First peak residue number : 501 Peak threshold level : 6.0000E+00 Pick limits : 0 0 10 -10 5 95 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


10.4 PIck LEvel - define peak-picking level


supply the lowest level at which peaks should be picked

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > pi lev 5.5
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.5 PIck PEaks - do peak-picking in map


do the actual picking. Provide two parameters: the name of the map to be picked, and the name of the PDB file to which the peaks will be written. First, the pick limits will be set appropriately. Second, all points in the pickable volume whose intensity exceeds the pick level are selected and counted. Third, for each of these points, the program checks if they are a local maximum (i.e., intensity greater than each of the 26 neighbouring points); if so, the peak is picked and interpolation takes place to get a more precise peak position and intensity. Fourth, the peaks are written to a PDB file.
Note: from version 4.5.1 on, there is an extra format parameter. This may be P(db) to get a PDB file, or A(more) to get a file which looks like an AMORE rotation function output file (e.g., for use with the OMAC/auto_amore.csh script). This can be used if you run lots of rotation functions with different parameters, then combine them with COMAP, and finally peak-pick them with MAPMAN.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > pi pea m1 peaks.pdb pdb
 Pick level  : (  5.500E+00)
 Pick limits : (       1       64)
 Pick limits : (       1       87)
 Pick limits : (       5       64)
 Nr of points in pick volume : (     334080)
 Nr of points >= pick level  : (        820)
...
 Nr of peaks found : (         52)
 MAPMAN > $ cat peaks.pdb
REMARK Created by MAPMAN V. 930803/2.2 at Tue Aug 3 17:14:32 1993 for user gerard
REMARK 52 peaks picked above level 5.500000
REMARK Map file ../../scratch/am/crabp21.difpat
REMARK Map name M1
REMARK Map text Read from ../../scratch/am/crabp21.difpat
REMARK
CRYST1   37.127  106.501   40.495  90.00 110.05  90.00
REMARK Peak #        1 @      3.220    16.397    46.593 $    5.985534E+00
ATOM      1  O   H2O   501      -7.990   9.922  26.855  1.00 20.00
...
REMARK Peak #       52 @     65.191    73.900    33.332 $    5.892479E+00
ATOM     52  O   H2O   552      29.660  44.718  19.212  1.00 20.00
END
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > pi pea m1 multi_roting.log amore
 Pick level  : (  1.000E+00)
 Pick limits : (       1       46)
 Pick limits : (       1       71)
 Pick limits : (       1      142)
 Nr of points in pick volume : (     463772)
 Nr of points >= pick level  : (     174271)
 Picking ... Interpolate intensity
 Nr of peaks found : (        340)
 CPU total/user/sys :       1.0       1.0       0.1
 MAPMAN > $ cat multi_roting.log
REMARK Created by MAPMAN V. 960411/4.5.1 at Thu Apr 11 20:49:51 1996 for user gerard
REMARK 340 peaks picked above level 1.000000
REMARK Map file multi_rot.map
REMARK Map name M1
REMARK Map text Read from multi_rot.map
 SOLUTIONRC     1     2.19    40.87   190.94  0.00000  0.00000  0.00000  3.0  0.0
 SOLUTIONRC     1     1.43    56.65   354.18  0.00000  0.00000  0.00000  2.9  0.0
 SOLUTIONRC     1     2.78    71.59   156.24  0.00000  0.00000  0.00000  3.7  0.0
 SOLUTIONRC     1     1.25    85.11   105.13  0.00000  0.00000  0.00000  3.3  0.0
 ...
 SOLUTIONRC     1   113.66   140.50   322.90  0.00000  0.00000  0.00000  3.7  0.0
 SOLUTIONRC     1   114.53   156.38    25.65  0.00000  0.00000  0.00000  4.0  0.0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.6 PIck INtegrate - pick peaks in map and integrate


same as PIck PEaks, except that an approximation of the peak integral, rather than the interpolated intensity, is stored. The integral is computed as the sum of the *positive* electron density values in a 2*2*2 box centred at the local peak maximum. When picking maps, this value ought to be roughly proportional to the number of electrons in the box. This can be used, for example, to estimate the occupancy of partly-occupied metal sites.
Note: from version 4.5.1 on, there is an extra format parameter. This may be P(db) to get a PDB file, or A(more) to get a file which looks like an AMORE rotation function output file (e.g., for use with the OMAC/auto_amore.csh script). This can be used if you run lots of rotation functions with different parameters, then combine them with COMAP, and finally peak-pick them with MAPMAN.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > pick int m1 integrate.pdb pdb
 Pick level  : (  4.850E+01)
 Pick limits : (       9      176)
 Pick limits : (      27      233)
 Pick limits : (      26      257)
 Nr of points in pick volume : (    8068032)
 Nr of points >= pick level  : (       3903)
 Picking ... Integrate intensity
 Nr of peaks found : (        436)
 CPU total/user/sys :      17.7      17.6       0.1
 MAPMAN > $ head -10 integrate.pdb
REMARK Created by MAPMAN V. 951102/4.2 at Thu Nov 2 21:55:50 1995 for user gerard
REMARK 436 peaks picked above level 48.50000
REMARK Map file /nfs/scr_uu1/gerard/scratch/m2_fofc.xE
REMARK Map name M1
REMARK Map text Read from /nfs/scr_uu1/gerard/scratch/m2_fofc.xE
REMARK
CRYST1   49.100   75.800   92.900  90.00 103.20  90.00
REMARK Peak #        1 @      9.346   134.124   169.783 $    9.681636E+02
ATOM      1  O1  HOH  1001     -14.274  66.886  80.822  1.00 20.00
REMARK Peak #        2 @     11.919   161.172   115.088 $    1.303484E+03
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.7 PIck HIgh - pick points with high density values


rather than picking peaks (which must be local density maxima), this option picks points whose value exceeds the current level that you have defined. This can be used, for instance, to pick rotation function solutions with a high value which are not necessarily peaks (e.g., from a rotation function map as produced by the CCP4 version of AMORE). Use the HIstogram command to find an appropriate level that won't generate too many points.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > re m1 all1_amore.map ccp4
 MAPMAN > his m1 30 32 34 36 38 39 40
 MAPMAN > pick lev 39
 MAPMAN > pick high m1
 Output file ? (peaks.pdb)
 Format (Pdb|Amore) ? (PDB) amo
 Pick level  : (  3.900E+01)
 Pick limits : (       1       82)
 Pick limits : (       1      119)
 Pick limits : (       1      250)
 Nr of points in pick volume : (    2439500)
 Nr of points >= pick level  : (        156)
 Picking ... High-density values
 Nr of peaks found : (        156)
 CPU total/user/sys :       8.7       8.5       0.2
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11 SKELETONISING DENSITY


11.1 BOnes ? - list settings


list current settings and defaults for the BONES commands

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > bo ?

Current BONES parameters and defaults : Current BONES map : M1 From file : test.E Skeletonised with base level 5.000 and step 2.000 And including 100 spare points Yielding 2373 points and 2555 connections BONES file : sgi.bones BONES ID for O : SKL Minimum length for main-chain fragments = 4 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11.2 BOnes SKeletonise - skeletonise map


skeletonise a map (which must be in memory); parameters:
map = name of the map to use
base = base level for the electron density (e.g., 1.5*sigma)
step = step size for the skeletonisation (e.g., 0.5*sigma)
nr_extra = number of spare points to include
Use the LIst command to find the sigma level of your map
As of 940303, the spare bones are distributed randomly throughout the skeleton (before, they were all stored at position (1500,1500,1500)).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > bo sk m1 5 2 100
 Constructing envelope with base level    5.000
 Level increment .....................    2.000
 Number of levels (max. 10) ..........       10
 Nr of points (level > 0) in input map    12802
 Ditto, in skeletonised map ..........     2273

Nr of points in the bones : 2373 (includes spare points !) Nr of spare points : 100 Nr of connections : 2555 Nr of branch-points : 741

Nr of fragments Size less than or equal to 1 = 18 Size less than or equal to 2 = 30 Size less than or equal to 3 = 9 ... Size less than or equal to 100 = 0 Size greater than 100 = 1 Maximum fragment size = 919

CPU total/user/sys : 80.2 78.8 1.4 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11.3 BOnes COnnectivity - generate bones from skeleton


decide what is main-chain and what is side-chain in the previously generated skeleton and write a BONES datablock file for O; parameters:
file = name of the O file
id = name for your skeleton (up to 5 characters)
mc_len = minimum size of fragments which are to be considered main-chain

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > bo co sgi.bones skl
 Min length main-chain fragments ? (           5) 4
 Min length for main-chain fragments :        4
 Nr of main-chain connections        :     1879
 Nr of side-chain connections        :      675
  eq 1            1        2273
 Histogram of bones types 1,2,3....
 Bone type : 1 481 1791 100 0 0 0 0 0 0
 Type 2 = side-chain; 3 = main-chain
 Type 1 = left-overs; 4 = spare parts
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.4 BOnes Prune - (not normally used)


take a skeleton, throw away all short stretches which are not connected to any main-chain atoms, and write them to a PDB file; parameters:
file = name of output PDB file
mc_len = minimum size of fragments which are to be considered main-chain
bfac = a uniform temperature factor for ALL BONES atoms which are written to the PDB file
The PDB file will contain ALL main-chain BONES atoms PLUS those side-chain atoms which are connected to main-chain fragments.
The output PDB file can be used to calculate structure factor amplitudes and phases, which can then be used in an iterative skeletonisation scheme

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > bo pr bones.pdb 6 5.0
 Min length for main-chain fragments :        6
 Nr of main-chain connections        :     5074
 Nr of side-chain connections        :     5912
 Nr of BONES with 0 neighbours =      372
 Nr of BONES with 1 neighbours =     3713
 Nr of BONES with 2 neighbours =     5396
 Nr of BONES with 3 neighbours =      715
 Nr of BONES with 4 neighbours =       22
 Nr of BONES with 5 neighbours =        0
 Nr of BONES with 6 neighbours =        0
 Pruning BONES ...
 Nr of BONES written to PDB file : (       6424)
 Nr of BONES with code 1,2,... written:
 Nr : (0 1479 4945 0 0 0 0 0 0 0)
 Nr of BONES with code 1,2,... NOT written:
 Nr : (1 3793 0 0 0 0 0 0 0 0)
 CPU total/user/sys :       5.3       5.0       0.3
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12 MAP COSMETICS


12.1 FIlter - apply digital image filters to map


this command enables you to apply a host of "filters" to your maps. Most of these are inspired by digital image-processing techniques. Some of them suppress noise, others enhance features, yet others are utterly useless.
Type "FIlter ?" to get a list of implemented filters plus an explanation of their parameters. Note that most filters change *all* characteristics of your map (average, sigma), so you have to find a suitable contour level. Also, some operations will not work well in coarse grids (MI, KL). For those options that require a cube size, a value of "1" (one) is recommended; for other parameters sensible defaults are given by the program.

Some (early) observations:
- MEdian, AVerage, SMooth and VAr_thr reduce noise somewhat
- MAximum and KHighest smear out the density
- SIgnal/noise may bring out density for surface side chains
- LAplace shows the edges of the molecule (sometimes)
- EDge and STat_diff are rather neutral operations
- KLowest, GRadient and MInimum are rather useless
These filters are intended to clean up your density a bit, or to enhance real features. An as yet unexplored application lies in the use of these techniques in density modification.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > filter ?

Filter options: --------------- MEdian - replace point by median value in local cube MInimum - replace point by minimum value in local cube MAximum - replace point by maximum value in local cube AVerage - replace point by average value in local cube i.e., convolution with 1 1 1 1 1 1 1 1 1 (1/27) * 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 SMooth - convolution with 1 2 1 2 3 2 1 2 1 (1/55) * 2 3 2 3 5 3 2 3 2 1 2 1 2 3 2 1 2 1 EDge - convolution with A A A A A A A A A (1/B) * A A A A B-26A A A A A (A<0, B>0) A A A A A A A A A SIgnal/noise - replace point by average/sigma in local cube GRadient - convolution with (-1 0 +1) in 3 directions LAplace - convolution with (-1 2 -1) in 3 directions KLowest - replace point by average of K lowest nbrs KHighest - replace point by average of K highest nbrs VAr_thr - variable threshold (A, B in <0,1]): NEW = old - (A*sigma + B*ave) STat_diff - statistical differencing (A, B, C in <0,1]): NEW = (1-A)*old + (old-ave)*B*C/(C+B*sigma)

Parameters: Size = one-sided size of small, local cube (usually, 1) A,B,C = parameters that determine the convolution matrix (the program suggests sensible defaults) K = number of neigbours to use in averaging

Further reading : Wayne Niblack, "An Introduction to Digital Image Processing", Prentice-Hall International, London, 1986. ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MAPMAN > fil smo m1
 SMooth - working ...
 Filter : (   1.000    2.000    1.000    2.000    3.000    2.000    1.000
    2.000    1.000    2.000    3.000    2.000    3.000    5.000    3.000
  2.000    3.000    2.000    1.000    2.000    1.000    2.000    3.000
  2.000    1.000    2.000    1.000)
 Sum    : (  55.000)
 CPU total/user/sys :       3.9       3.9       0.0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


13 KNOWN BUGS

Some of the input and output formats don't work properly (yet).


Uppsala Software Factory Created at Sat Jan 30 02:51:11 1999 by MAN2HTML version 971024/1.6