(C) 1991, Baylor College of Medicine CHAIN Crystallographic Modeling Program Version 5.0 January 1, 1992 CHAIN INSTALLATION PROCEDURE (Silicon Graphics Version) This version of the program is specific for the Silicon Graphics 4D series of graphics unit. The program requires a Silicon Graphics 4D or Personal Iris running IRIX V4.0.1 (or higher), a mouse and 8-dial box, at least 8 Mb of memory, and at least 15,000 free disk blocks READING THE DISTRIBUTION TAPE The distribution tape provided is a 1/4" cartridge tape in TAR format. The tape contains a complete set of files for program CHAIN. If this is a new CHAIN installation, one should begin by creating a root level directory on the disk which will store pro- gram CHAIN. This directory will be given the logical name CHAIN_ROOT. The UNIX command is: mkdir /usr/local/chain Alternatively, you can place the top level directory anywhere you wish. The tape is then read using the following commands: cd /usr/local/chain tar xov If this procedure has worked correctly, you will find a directory tree with several subdirectories. The entire distribution, in- cluding source files, requires approximately 15,000 blocks on the disk. On small disk systems, only about 5,000 blocks are re- quired to be disk resident. ORGANIZATION OF THE DISK FILES The files on the distribution tape contain the command pro- cedures, source code, executable image, sample data, and documen- tation for the program: DIRECTORY USE $CHAIN_ROOT/exe executable image and command procedures $CHAIN_ROOT/lib space group and amino/nucleic acid dictionaries $CHAIN_ROOT/src FORTRAN source code $CHAIN_ROOT/demo sample control and data files $CHAIN_ROOT/extra auxiliary programs ADDING THE LOGICAL NAME TABLE The file chain.com, located in the exe directory, contains all of the logical name assignments. The root directory name, and the sourcing of chain.com file should then be added to either the system or user's .cshrc file so that each user has access to all of the needed logical names and symbols: setenv CHAIN_ROOT /usr/local/chain source $CHAIN_ROOT/exe/chain.com The first line should be changed, of course, to correspond to the root directory you selected for program CHAIN. If properly in- stalled, any users will simply have to give the command 'chain' to initiate the program. READING THE DOCUMENTATION At this point in the installation, the user should print a copy of the documentation contained in the exe directory. This docu- ment should answer many of the questions you might have regarding the program. The documentation is written in DWB, but can be easily converted to other formats. PREPARING THE SYSTEM COMMAND FILE Before running the program, one should check the chain.cmd system command file found in the exe directory. The first set of com- mands defines the graphics unit in use. This should be changed depending on the type of graphics unit in use. Please refer to the GRAPHICS command in the documentation. INVOKING THE PROGRAM If the program has been properly installed, the user only has to give the command 'chain' to invoke the program. One can include additional qualifiers with this command to invoke special rou- tines: % chain [-d] [-ng] [-s system_file] [-t] [-u user_file] [session_file] -d overrides the SET MESSAGE parameter in the program. All out- put messages, including a number of special debug listing mes- sages are displayed. A small display will also appear on the screen that lists the pick and other messages. This qualifier is not normally used. -ng indicates that no graphics device will be used. All terminal commands may still be given, except for the SHOW command. -s system_file specifies an alternate system COMMAND file. The default system file name is $CHAIN_ROOT/exe/chain.cmd, however, you can specify an alternate system command file, such as system.cmd by using this command. -t overrides the automatic terminal window resizing and movement that CHAIN normally does. -u user_file specifies an alternate user-specific COMMAND file. If you have several different COMMAND files in your directory, you can select which one will be used. session_file specifies a session file to be used. This saves the user from being prompted for the session file name. GETTING STARTED This manual is designed as a user's guide to program CHAIN. Most of the common commands, both from the terminal and the display screen, are briefly described here. It also includes a number of hints to aid the user in displaying and in fitting atomic models. The primary purpose of the program is to assist the crystallogra- pher in building atomic models from an electron density map. It is used to build, display, and manipulate atomic models and elec- tron density on a graphics device. The user first prepares data files containing the desired coordinate and density information. It then allows one to display the electron density contours, su- perimposed with atomic coordinates on the screen. One can then interactively make modifications to the coordinates. A number of additional features are included with the program to automatically regularize or refine the coordinates and to display them in a variety of ways. The program also provides a number of interfaces to read in coordinates from and to write them out to non-CHAIN programs. Program CHAIN was written by John Sack in the laboratory of Florante A. Quiocho and is the result of the laboratory's long experience in the use of molecular graphics for fitting atomic models. Many of the ideas for this program come from the work done on the program FRODO by T. Alwyn Jones, Bruce Bush, Phil Evans, Jim Pflugrath, and Mark Saper. How Program CHAIN Works Program CHAIN is a series of tightly coupled subroutines connect- ed via a main parser. As key-word commands are given by typing the command on the terminal keyboard or by touching the command on the display menu, the parser interprets the command and in- vokes the required routine to perform the desired function. Because of this type of organization, new subprograms can be easily added to CHAIN, provided they are modified to read in the CHAIN files. Additional entries can be added to the key-word list along with the appropriate calling routines. The procedure for adding commands to program CHAIN is discussed in the Programming Notes section of this manual. Installing Program CHAIN The instructions for installing program CHAIN on the host comput- er and configuring the program for the type of graphics system in use are contained in the CHAIN installation notes. For the pur- poses of this guide, it is assumed that the program has been properly installed, and one is ready to try out the program. Be sure your system has the CHAIN_ROOT directory defined as the top-level directory where the program is stored, such as: setenv CHAIN_ROOT /usr/local/chain source $CHAIN_ROOT/exe/chain.com On your system, the program may be in a different directory than /usr/local. A set of test routines are included with the distri- bution (in the demo directory) which will be used for examples described in this guide. Preparing The chain.cmd File If this is your first time using CHAIN, you will want to define a directory, called CHAIN_USER, to store special files. While this is not required, it will be useful later on when you decide to personalize CHAIN to your liking. You should add a line in your .cshrc file to define the CHAIN_USER directory, such as: setenv CHAIN_USER /usr/people/myfiles/chain where, of course, the directory name is appropriate for your sys- tem. In this directory, you can write a chain.cmd file containing any commands you would like to have executed every time you run CHAIN. An example would be: SET MENU LEFT ! menu on left side of screen SET IDENTS R3A RA ! atom identification labels SET CONTACTS 3.5 ! contact radius SET COLOR MAP 1 CYAN ! color of density map 1 This command file moves the menu to the left hand side of the screen, sets the format of the atom identifications that will ap- pear whenever you touch an atom on the display, the contact dis- tance for the contacts display, and the color of the first elec- tron density map display. There will be more discussion on these commands later on. As you work your way through the program, you will want to add other commands to this file. Running CHAIN You are now ready to run CHAIN. If the program has been properly installed on your system, you need only give the command 'chain'. Once everything is ready, you will be prompted for the name of the SESSION file. This file is used to save and restore various parameters between sessions using CHAIN. It is created at the end of a previous session, and contains the values of all the parameters set when the session was ended. The file can then be read at the begin- ning of the next session, and set all of the parameters the way they were at the end of the last session. If an old session file is selected, all of the parameters set at the end of the last use of the session are retrieved from the file. The program then reads in the current atomic coordinates into the host memory. If you are starting a new session, and no session file exists with the given name in your directory a new SESSION file is created. You will have to set all the parameters and create the initial coordinate and density files you are going to use before proceeding to the display. One can also specify the session name during the call to program CHAIN by giving the command : chain filename.ses where 'filename.ses' is name of the desired session file. Session files have the default file extension name .ses. For the examples given in this guide, we will use the test files included with the distribution and found in the demo directory. If the program has been installed properly, we can test out the program by going to this directory, and begin CHAIN using this test session: cd $CHAIN_ROOT/demo chain test After reading in the SYSTEM command file, the USER command file (in your CHAIN_USER directory), and the 'test.ses' session file, the program will draw the initial display and then indicate it is ready by giving you the top-level prompt "CHAIN >>". It is wait- ing for your first command. USING THE PARSER When running CHAIN, one begins in the terminal parser. Commands are entered from the keyboard to select the atoms and electron density to be displayed and the parameters used in the refinement procedures. A terminal command is invoked by typing the command (or the three-letter abbreviation for the desired command), followed by the new parameter value(s). Values are delimited by spaces. For most of the parameters, the user needs to enter only the desired command and the new value for the parameter. For exam- ple, RADIUS 6.0 will reset the sphere radius to 6.0 Angstroms. If no value is given with the command, the program will prompt for it. If a carriage return is entered as the response to any terminal command, the old value of the parameter is kept. If, for exam- ple, you give an incorrect command, entering a carriage return will let you exit the command without changing any values. Com- mands may be typed using either capital or small letters. Special Symbols The CHAIN parser also allows some special symbols to be used when interpreting commands: @ - Read and parse the commands found in the specified command file. When completed, program control returns back to the terminal. The parser will only allow you to call files one level deep. The default extension name of this file is .cmd. See command SCRIPT for the creation of a parser file to be read. $ - Invoke any valid UNIX command. Control is immedi- ately returned to the program. You can also enter a child pro- cess using the SHELL command. Note that commands are executed under the Bourne shell. ? (question mark) displays a list of the legal commands available at this level of the program. If the program is currently re- questing a value, the command displays the current value(s) of the parameter. = (equal sign) keeps the current value of the parameter. For ex- ample, if four values are requested, a response of "1 = = 2" changes the first and last values, but the second and third values are kept as they were. ! (exclamation point) or # (pound sign) indicates a comment statement. The parser stops interpreting any characters following the exclamation point or pound sign (except when reading a title parameter). Special Rules and Conventions In addition to the special symbols, CHAIN also has a number of special rules and conventions used throughout the program. This simplies many of the commands: COLOR TYPES - whenever the program requests a COLOR, the user may respond with with any of available color type parameters. One can specify either an absolute color (WHITE, RED, ORANGE, YELLOW, GREEN, BLUE, CYAN, VIOLET, PURPLE, GRAY), coloring based on the setting of the appropriate color dial (DIAL), or when appropri- ate, coloring based on information contained in the coordinate file: ATOMTYPE Coloring by the atom type (see command SET ATOMTYPE) ACIDTYPE Coloring by the acid type (see command SET ACIDTYPE) SECONDARY Color determined by the residue secondary structure code SEQUENCE Coloring depending on polypeptide sequence TEMP Coloring depending on the atom's temperature factor WEIGHT Coloring depending on the atom's occupancy or weight ACID TYPES - whenever the amino or nucleic acid types are re- quested for a display, the user can specify, in addition to the a list of acid names found in the coordinate file, several addi- tional name: PHILIC Hydrophilic amino acids (ARG,ASN,ASP,GLN,GLU,HIS,LYS,SER,THR) PHOBIC Hydrophobic amino acids (ILE,LEU,MET,PHE,TRP,TYR,VAL) NEUTRL Neutral amino acids (SER,THR,ASN,GLN,TRP,TYR) ACIDIC Acidic amino acids (ASP,GLU) BASIC Basic amino acids (HIS,ARG,LYS) AMINO All 20 standard amino acids NONAM All non-amino acid types PURINE Purines (ADE,GUA) PYRIM Pyrimidines (CYT,THY,URA) ATOM NAMES - The program allows up to six characters to designate atom names, although normally only four characters are used. When atom names are requested by the program, it is not necessary to include any preceding blank spaces, as the program left justi- fies atom names before doing any comparisons. ATOM TYPES - when a set of atom types is requested, the user can specify either the exact name of the atoms or use the "*" to in- dicate any matching character. Thus, "C" indicates to act only on carboxyl carbons whereas "C*****" indicates to act on all car- bon atoms, etc. A minus sign (-) as the first atom type designa- tion indicates to select all BUT the specified atom types. RESIDUE NAMES - The program allows up to six characters to desig- nate residue names (including the chain name and insertion char- acter). When residue names are requested by the program, you should include the entire name, without any blank spaces. The program left justifies names before doing any comparisons. Although residues are normally given integer names, the program stores the residue names are characters, and thus you can use any alphanumeric name except for some special words (END, FIRst, LASt, MOLecule, STArt). RESIDUE RANGES - When a range of residues is requested by the program, the user may specify either a single residue, a range of residues (by specifying the first and last residue in the range), or a set of multiple ranges. Since the range selection must uniquely specify the residues desired, there are some special rules which apply: If one requests a single residue, no additional commands may appear on the same line since the program would interpret the new command as the second residue in the range. If desired, the user can specify a single residue as a range, such as " 1 1 ", to allow additional commands on the line. If more than one residue range is desired, one should separate the ranges with a plus sign (+) to indicate that the next resi- due range is to be appended to the current list. Thus, "1 10 + 20 30" indicates that residues between 1 and 10 AND between 20 and 30 should be used. If the command line ends with a plus sign, it indicates that more residues are to be entered on the next line. Otherwise, the program assumes the range specifica- tion ends at the end of the line. Up to 20 residues ranges may be specified. If the residue range involves residues from other than the current atom file, a colon (:) indicates the atom file. Thus, "1 10 + 2:20 30" indicates that residues between 1 and 10 in the current atom file and residues between 20 and 30 in atom file 2 should be used. Note that multiple files can not be specified in all commands. In particular, the coordinate display RANGE command only allows residues from the current display. There are several special words that can be used in place of the actual names of the residues such as FIRST (the first resi- due in a file), LAST (the last residue in the file), ALL (all residues in the file), or a series of one to four dots to indi- cate the last or next 5, 10, 15, or 20 residues. Thus "FIRST LAST" is equivalent to "ALL", and "101 ..." would indicate 15 residues starting at residue 101. ATOMIC POSITION or SCREEN CENTER - whenever an atomic position or screen center is requested, the user can specify this value in orthogonal Angstroms, fractional coordinates (by giving the letter "F" followed by the fractional coordinates), or as a residue/atom pair. EULERIAN ANGLES - the program defines rotations as a triplet of Eulerian angles. The definition of Eulerian Angles as defined by Crowther and used by Fitzgerald in program MERLOT. In this de- finition, the angles Alpha, Beta, and Gamma describe rotations about the Z, new Y, and then new Z axes. Thus given a set of three angles (A, B, G), the rotation matrix used would be: CA*CB*CG-SA*SG -CA*CB*SG+SA*CG -CA*SB SA*CB*CG+CA*SB -SA*CB*SG+CA*CG -SA*SB SB*CG -SB*SG CB where SA, SB, and SG are the sines of the three angles, and CA, CB, and CG are the cosines of the angles. ORTHOGONALIZATION MATRIX - The default orthogonalization matrix used by the program is the standard Protein Data Bank Convention (X along a, Y along c* x a, Z along c*): a b * cos(gamma) c * cos(beta) 0 b * sin(gamma) -c * sin(beta) * cos(alpha*) 0 0 c * sin(beta) * sin(alpha*) EXTENSION NAMES - Each file used by the program is given a de- fault extension name. If you do not include it, the program will add it for you. In cases where you do not wish to have a name added, add an asterisk at the end of the file name. Internal Files External Files Session File .ses Protein file .pro Atom File .atm XRAY file .xry Density File .map XPLOR file .xpl Model File .mod CCP4 file .ccp Script File .cmd Diamond file .dia Contact listing .cnt Protin File .wah Generic Plot file .plt Protein Data Bank .pdb Spool file .spl Update file .upd Postscript file .pst MERLOT file .mlo HPGL plot file .hp MS (Connolly) file .ms Logfile .log XPLOR binary map .bin Session Set file .set UTILITY COMMANDS The utility commands are used to start or end a CHAIN session and to set or examine various system parameters. There are also utility commands to get help on any CHAIN command or to attach to a subprocess. Command BEGIN starts a new modeling session. It is equivalent to ending the current active session and the beginning the new ses- sion. This command is automatically given at the start of the program. The routine requests the name of the new session. The program searches for the SESSION file owned by that user. If no session file exists with this name, a new SESSION file is creat- ed. Command END terminates a CHAIN modeling session. All files currently open are closed, the current parameters are written to the SESSION file, and the program is terminated. Alternatively, the command QUIT ends a CHAIN session but the new parameters are NOT written to the session file. Command CURRENT displays all of the parameters that are set for the current session. This display is useful to look at before going on the display to make sure all the necessary parameters have been set. Since the parameter list is usually very long, the user can list only a portion of it by specifying one of the sections of the display such as ATOMS (or CA) - title and other information on each of the atomic coordinate files, DISPLAYS (or CD) - parameters for each of the atomic coordinate displays, or MAPS (or CM) - parameters for each of the electron density displays. Command LOGFILE initiates or ends the saving of all terminal prompts and messages in a log file for later examination. The command requests the name of the logfile, and remains active un- til a LOGFILE OFF command is given. Command SHOW enters the interactive display from the terminal. All of the present system values are checked, and then program control is transferred to the interactive display. Command SET allows one to change the parameters which define the graphics system and display. The SET commands can be placed in the system command file, a user's command file, or called in- teractively from the terminal, depending on whether they should apply to all users, the current user, or only to the current ses- sion. The general form of the command is SET . A complete description of each of these commands can be found in the Reference section of this manual. Some of the more common commands that you might want to use are CONTACT (sets the contact distance for the interactive display's CONTACT command), HYDROGENS (determine if hydrogen atoms will be displayed and regularized in a structure), and MENU (places the menu along the left or right side of the screen). Command SCRIPT initiates or ends the saving of subsequent termi- nal commands in a script file. This script file can then be edited and replayed at a subsequent time. The command requests the name of a file used to store the subsequent terminal com- mands. This command is only valid if a script file is not currently active, and remains active until a SCRIPT OFF command is given. Command SPOOL is an interactive routine to read in the PLOT file and make a hard copy plot. The plot file, created when the user requested a plot to be made by picking the PLOT menu command on the interactive screen menu, can then be used by this spooling program to draw a picture of the current display on a digital plotter or laser printer. The routine requests the name of the PLOT file, the name of the output spooling file or device in which the formatted plot commands are to be sent, and the format of the output file. ATOMIC COORDINATES AND ELECTRON DENSITY The main purpose of program CHAIN is to display atomic coordi- nates and electron densities, and then to make modifications to the coordinates. The terminal mode of the program has a series of commands to permit the user a wide range of options as to de- fine an atomic coordinate or electron density file, read in data from an external source, and make modifications or additions to the coordinate file. Defining An Atomic Coordinate File Before being able to display atomic coordinates you must define the atomic coordinate data file using the commands DISPLAY and FILENAME. DISPLAY defines which of multiple files you are about to define (or modify) and FILENAME gives a name to this coordi- nate set. The program allows for four active coordinate displays. Usually, you will be working with only one display, and the DISPLAY com- mand is not used. You can however, defined additional displays by giving the command DISPLAY 2 or DISPLAY 3. The program will operate from these alternate displays until you return using the DISPLAY 1 command. There is a fourth display, but this is used as a temporary storage for active displays and is not normally used. The FILENAME is the name of a coordinate file on the disk that will hold the atomic coordinates and other information about your structure. This file is in a special format for program CHAIN so you will have to use commands to read in data to the file, list the information in the file, or to write out data for use with other programs. This file usually has the extension name '.atm', but you can call it anything you like. Included in the distribu- tion is an example atom file 'test.atm'. To define this file as your coordinate file, you would give the command: DISPLAY 1 FILE test.atm Note several things. First of all, multiple commands can be placed on a single line provided there is no confusion. If, for example, you were giving a list of atom types, the program wouldn't know where the list of atom types ended and your next command began. In this case, however, the DISPLAY and FILENAME commands each have only one value associated with them, so there is no problem putting them on the same line. Each command can be abbreviated to three letters. Thus we could have given the command "DIS 1 FIL test" to do the same thing. Also note that there are certain default values for each parame- ter. The default display is 1, thus if you have not changed it, you didn't have to give the display number. You can always find out the current value of a parameter by giving the command fol- lowed by a question mark. If you have given the command "DIS ?", the program would have responded with the number 1. Furthermore, since the default atomic coordinate file name is '.atm', we did not have to give the complete file name. Examining The Atomic Coordinate File There are a number of commands to examine the current atomic coordinate data file. A complete description of each command is found in the Reference section of this manual. Some of the more common ones are: LIST lists out the residues or atoms in the coordinate file. The format of this command is "LIST ". You determine if you want to list each atom or each residue in the coordinate file, and then the range of residues to list. Thus, some examples would be: LIST ATOM ALL ! list all atoms in the file LIST RES 1 10 ! list residues 1 through 10 LIST ATOM 5 .. ! list atoms in 10 residues starting at 5 LIST RES 5 LAST ! list residues from residue 5 to the end CHECK examines the coordinates for undefined atoms and for incom- plete residues. The format of the command is "CHECK ", thus the command "CHECK ALL" would give you a complete listing of all undefined/incomplete residues in the file. CONTACT lists all the inter and intra-molecular contacts in the file. The routine asks a number of questions such as the name of a listing file (in case you want to review the list later), the contact distance range to report, the residue range to search, and whether you want inter molecular or intra molecular contacts. Reading And Writing Atomic Coordinates When using coordinates from an external source, one must first read them into CHAIN using the READATOM command. This is re- quired since CHAIN uses a special random access disk file to re- trieve atomic coordinates. The program uses the Protein Data Bank as the default external format. However, the it also allows a number of other formats such as Robert Diamond's BUILDR program (DIAMOND), Hendrickson's PROTIN program (PROTIN), the expanded UPDATE format (UPDATE), Fitzgerald's MERLOT format (MERLOT), or Brunger's XPLOR program (XPLOR). There are a large number of special parameters you can set, such as that only certain amino or nucleic acids types or atom names should be read in from the external file, set the temperature factor or occupancy, and how the atomic coordinates are added to the file. The new coordinates can replace, overwrite, or append the current atom list. The input can be fractional or Angstrom coordinates. Once you give the READ command, you can set any of these parameters, and make any changes until the GO command is given. ACIDS - specify which acids types to read in ATOMS - atom types to be read from the input file CELL - cell parameter to convert to orthogonal Angstroms FILE - name of the input file FORMAT - format of the input file MODE - specify how atoms are to be added to file TEMP - overall temperature factor WEIGHT - specify overall weight An example would be: READ FILE TEST.DIA FORM DIAMOND MODE APPEND ATOMS CA ACIDS TRP ALA GO This command tells the program to read in the coordinates from file TEST.DIA. This file is in DIAMOND format, and that you want to append the coordinates to the end of your CHAIN coordinate file. You want only alpha carbon atoms, and only alanine and tryptophan residues. The GO command then begins the process of reading in the coordinates. Note that the ATOMS and ACID commands come at the end of lines so not to confuse the atom or acid type list with another command. You could also have used the special name STOP to terminate the atom type and acid type lists: ATOMS CA STOP ACIDS TRP ALA STOP GO You can also use a very similar routine WRITE to write out the coordinates. All of the options listed above (except for MODE) are available, along with the additional option of selecting mul- tiple ranges from the CHAIN coordinate set. Modifying The Atomic Coordinates At this point, you will need to make some modifications to the new coordinate file. In particular, if the input file did not contain the space group or the unit cell dimensions, you will want to define them in the file in order to display symmetry re- lated molecules. You can also want to make modifications to the file, such as inserting or replacing coordinates. Some of the more common modification commands are: BRIDGE - define disulfide bridges in the coordinate file CELL - specify the real space cell parameters CODE - add residue code information DELETE - remove a residue from the file IMPOSE - apply a rotation / translation operation INSERT - add a new residue to the atomic coordinate data file MOVEATOM - move atoms to new positions NUMBER - renumber the residues in the atom file RENAME - change the residue names in the coordinate file MUTATE - replace a residue of one amino or nucleic acid type SECOND - add secondary structure information SPACE - store the crystallographic space group information STATUS - change the atom-status of the atomic coordinates TITLE - add a title to the coordinate file Defining A Coordinate Display The last step before displaying your coordinates is to set all of the parameters that determine how you wish these atoms to be displayed on the screen. You can select residues atoms will be displayed from the file. With the RANGE option, for example, the program will display residues in a region along the chain of the molecule. The RADIUS option displays all of the atoms within a given radius of the center of the display. You can also display a combination of both RANGE and RADIUS, either the INTERSECTION or the UNION of the two. Other commands that affect how the atoms are displayed are CENTER (to defined the center point of the display), BONDING (to deter- mine how bonds are to be made), SYMMETRY (to turn the symmetry atom generating option on), and COLOR (to determine the coloring of the atomic bonds). Once you give the SHOW command, the pro- gram will prepare and display the atomic coordinates on the screen. ON and OFF acts as a master switch which allows the user to turn on or off the atomic coordinate display generation. If you turn a display OFF, it will not be shown on the screen but all the display parameters are saved and can be recovered by using the ON command. Command REMOVE turns off the atom display generation AND removes any display parameters for this display. Other display commands include: ACIDS - specifies amino or nucleic acids types to be displayed. ATOMS - specifies atom type to be displayed. BONDING - specifies how bonds are to be made between atoms. ALPHA - short-hand method to draw an alpha carbon backbone trace. COLOR - specifies the coloring of the atomic bonds. MAINCHAIN - a short hand method of drawing the main chain atoms. SIDECHAIN - a short hand method of drawing the side chain atoms. An example of a set of display commands is: DISPLAY 1 ON ! turn display 1 on (default) ACIDS ALL ! All acid types ATOMS ALL ! All atom types BONDING DISTANCE ! bonding by distance criteria COLOR ATOMTYPE ! coloring by atom type RANGE 1 5 ! range of residues from 1 to 5 UNION 5.0 ! include atoms within 5 A of center CENTER 1 CA ! center display at CA of residue 1 SYMMETRY 10.0 ! symmetry atoms within 10 A of center SHOW ! go on to the display Regularizing The Atomic Coordinates The regularization option based on the Hermans and McQueen REFINE program. The routine regularizes the bond lengths and bond an- gles of existing amino or nucleic acids using a dictionary file of ideal bond lengths and bond angles. The routine attempts to minimize the difference between the ob- served and expected bond lengths, bond angles, and dihedral an- gles by shifting the atomic coordinates, and thus produce an ap- proximately idealized structure. The routine has no knowledge of the observed structure factor data and uses only a dictionary of the ideal values in the calculation. This routine is of particular use after you have moved some atoms or have mutated some residues with REPLACE. It is also useful when building a new structure by creating starting coordinates to work with (using the EXTEND routine). You first set a number of regularization parameters which deter- mine the range of residues to regularize, the number of cycles, and any special distances or angles: ANCHOR - fix the ends of the regularization range CYCLES - define the number of regularization cycles to be done. FREE - free any fixed coordinates during regularization GUIDE - determines if special conformations will be used SEPARATION - insert distance restraints between atoms SHIFTS - define the maximum shift allowed during each cycle WEIGHTS - sets the starting and ending weights ZONE - defines the range of residues to be used When you have all the parameters set, commands REGULARIZE or EX- TEND initiate the regularization procedure. REGULARIZE loops through the define ZONE and minimizes the differences between the observed, and the stereochemically correct bond distances and an- gles. Command EXTEND is an alternative to the REGULAR command. With EXTEND, the residues after the first residue in the regulariza- tion range are made UNDEFINED, and polypeptide chain is created out past the first residue. This allows one to build a complete- ly new molecule with given secondary structure. Preparation of Static Models Besides atomic coordinates and electron density, you can also de- fine static MODEL displays containing molecular wire models, la- bels for residues or atoms, and dots to indicate van der Waals or interfacial surfaces. These models are often used for demonstra- tion or photographic purposes. Each MODEL display can be made up of multiple commands to create a complex display. Each MODEL can be made up from a series of commands. This enables the user to view the entire protein structure for study or photography without limiting the number of atoms displayed. Since it is a static display, however, one can- not pick or move atoms in this display. The command MODEL begins the creation of a MODEL display. One then gives the number of the MODEL display to be defined. There are 16 MODEL displays. One can then give any of the MODEL com- mands and then will be prompted for any necessary input. When one has completely defined the MODEL, the commands SHOW (or another MODEL command) terminate a MODEL display. As modeling commands are given, they can be stored in the model file. You can clear (rewind) this file by giving the MODEL CLEAR command. If you have an old model file you wish to display, you can first define the file by the SET MODEL FILE command, and then display it using the MODEL ON command. BARRY generates a Barry surface around a given range. The atomic coordinates are read from the atomic coordinate data file, and the calculated electron density is then contoured at the van der Waals radius. DOTS draws the surface for a set of atoms, either as the van der Waal type radius, at the interface of two surfaces or as a Connolly type surface. DRAW creates an atomic model from the commands in the current display. This is useful when one wants to see many different coordinate files at once. HBONDS generates a display of possible hydrogen bonds in the structure. IDENTS generates atom and residue labels, and is useful for a complicated displays because they may be switched on or off as a group. JOIN creates extra bonds between given atoms in the atomic coordinate file, such as di-sulfide bridges, or hydrogen bonds in the display. LINETYPE specifies the linetype (solid, dash, or dotted) or a display OUTLINE draws an outline of the unit cell on the screen RIBBON draws a stylized representation of the secondary struc- ture. VECTOR draws a display from vectors listed in an external file. Creation and Display of Electron Density Maps There are three main steps involved in displaying the electron density. First, the density map must be created, outside of CHAIN, using an appropriate density calculation program. The density map is then written into CHAIN format, and finally, one sets the parameters for displaying the density. Command MAP reads in an external map and set the parameters asso- ciated with the display of an electron density map. There are eight electron density map displays. Each display contains a single contour level from an electron density file. One begins by giving the MAP command followed by the number of the display to be created. There are a number of parameters available to determine how this map will be displayed. Command MAP initiates the electron density display routine. All subsequent commands will be applied to the map number given until the command DONE, SHOW, or another MAP command is specified. You can specify any of the eight electron density displays. FILE is the name of electron density data file. This file is usually made by converting a Fourier map using the READ command. The file usually has the extension name ".map". ON and OFF act as a master switch which allows the user to turn the electron density display generation on. All the parameters that are necessary to define the density display should now be set before going to the display screen. When turned OFF, the density display generation is turned off but all of the current density display parameters are saved for future use. Note that this parameter turns off the GENERATION of the electron density display while the menu commands MAP turn on and off the DISPLAY of each of the maps. REMOVE both turns off the density display generation and removes the current density display parameters from the session files. COVER determines the cover distance. The cover distance is used to remove vectors from the electron density display when they are greater than a COVER distance from any atom in the display. The default setting is the maximum display radius. LEVEL sets the contouring levels to be displayed from an electron density file. This value is in terms of the initial, and not the scaled, map values. RADIUS and VOLUME define the range and extent of electron density contours to be drawn on the display. With RADIUS, the command expects a contour radius VOLUME allows one to define the dimensions (widths) of the con- tour box. Thus one can choose a noncubical box for contouring. All vectors in the box at the given contour level will be displayed, except when the COVER parameter is set to less than the radius value. If RADIUS is greater than zero, the contouring box is a cube cen- tered at the screen center. If, however, RADIUS is set to less than zero, the program will attempt to alter the dimensions of the contouring volume in order to cover all the atoms in the display. READ initiates the reading the external density map. Once you have created an electron density map using PROTEIN or some other program, you need to write it into a special format for CHAIN. While in the MAP sub-program, the command READ initiates the electron density conversion routine. The routine requests the name of the external density file, and the format (BINARY, CCP4, PROTEIN, XPLOR, or XRAY) of it. If you are not currently using one of the available electron den- sity map formats described above, there is a an option to create a routine to read in any electron density map. This procedure is described in the Programming Notes section of this manual. When all of the desired parameters are set, the SHOW command will cause the electron density display, along with any coordinate displays you have defined, to appear on the screen. For example, suppose you have two maps, 'test.2fo' and 'test.foc', you want to display. You can defined the display by the commands: MAP 1 FILE test.2fo ON LEVEL 0.1 COVER 0 VOLUME 10 20 30 MAP 2 FILE test.foc ON LEVEL 0.5 COVER 0 RADIUS 10 SHOW The first map will be display at contour level 0.1 in a box 10 x 20 x 30 Angstroms. The second map we be at a 0.5 contour level in a box 10 x 10 x 10. Note, for example, that if the file name extension is '.map', it is not required and that the RADIUS com- mand came at the end of the line because you can give either one or three values for it. You also use the MAP command to read in a map from an external file, even if you are not going to display it right away. If you had a PROTEIN style map, 'density.fo' you want to put it into a CHAIN file 'fo.map', you could give the commands: MAP 1 FILE fo.map READ density.fo PROTEIN STOP QUIT In this case, you turned off the map since you don't want to look at it now, and gave the name of the internal CHAIN file as 'fo.map'. You then read in the PROTEIN style map file 'density.fo'. The STOP command returned you the main parser lev- el. If you want to read in your maps from a command procedure after you have calculated them, you can call CHAIN as part of your pro- cedure to automatically read in a map: chain dummy MAP 1 FILE fo.map READ PROTEIN density.fo STOP QUIT Indirect Command Files One useful feature of program CHAIN is the use of the indirect command file. Many special or complicated tasks can be replaced by the use of these files. For example, when doing a series of XPLOR refinements, you can read the new coordinates back into CHAIN by invoking a READATOM command file: ! ! Read in an XPLOR coordinate file ! set hydrogens off display 1 file xplor_out.atm ! readatom file finalstage.pdb format XPLOR acids ALL atoms ALL format PROTIN mode NEW cell 1.000 1.000 1.000 90.000 90.000 90.000 temp -1.00 weight -1.00 GO ! bridge 100 120 ! Add di-sulfide bonds ! ! Read in the XPLOR electron density maps ! MAP 1 FILE xplor.foc READ delmap.fofc XPLOR MAP 2 FILE xplor.2fo READ map.2fofc XPLOR If this file were named load.xplor, you could invoke it by giving the chain command, @load.xplor. Working with large files When using CHAIN with a large molecule or with multiple electron density maps, you may find the system to be rather sluggish. To help with the performance of the program, you may wish to turn off some or all of the interactive routines. A command file to do this would be: ! ! Command file to turn everything off ! SET BELL OFF ! Picking bell SET DIALS DISPLAY OFF ! Dial labels SET DISTANCE OFF ! Distance display SET FIXED OFF ! Fixed atom display SET FKEYS OFF ! Function key display SET HIGHLIGHT OFF ! Menu highlighting SET SCALEBAR OFF ! Scale bar SET SIDEVIEW OFF ! Sideview display SET UPDATE OFF ! Continuous updating USING THE INTERACTIVE DISPLAY The interactive display can only be entered from the terminal by the SHOW command. When you enter the interactive display, there is a pause as the the program determines which atoms will be displayed and the connectivity of these atoms and then sends the atom and bond vector lists to the graphics unit. It then deter- mines which, if any, electron density contours need to be drawn, does the contouring and sends these vectors to the graphics unit. Control is then sent to the graphics unit. The display menu is cleared, and the program then waits for new picks of either atoms or commands. Once in the interactive routine, the user has four ways to in- teract with the display; the keyboard, the dials, the function keys and the MIDDLE button on the mouse. Most actions involve using the mouse to pick atoms to be labeled or moved and to select options from the display menu. The molecule can be rotat- ed, and the colors of the various displays can be changed by means of the eight control knobs. The twelve function keys along the top of the keyboard are used to turn selected displays on or off. Using The Function Keys The special keys along the top of the keyboard, known as the function keys, activate different parts of the display. For ex- ample, you can selectively turn the menu, the axes, the atoms, and the different electron density maps on and off. Each of the keys controls different functions, depending on which function key board is active. The labels above the keys change when the functions change. The MASTER set controls which set of the twelve function keys is active. From this set, one can go to any of the other sets of function keys, or exit back to the terminal. Each of the other function key sets has an EXIT button to return control to the master function key set. The VIEW set controls the display view rotations. The keys select the view matrix, and allow one to rotate 90 degrees about any of the three axes or to set the view to be down a given axis. The DISPLAY set controls the display of the menu and view port objects. Each key can turn one part of the display (menu, axes, identifications, the terminal emulator, and contact display) on and off. The ATOMS set controls the display of the four atom and four sym- metry atom displays. Any of the eight displays can be turned on or off, without deleting them, by pressing the appropriate func- tion key. The labels on the function keys change to indicate whether the displays are on or off. The DENSITY set controls the display of the eight electron densi- ty maps created. Any of the eight displays can be turned on or off, without deleting them, by pressing the appropriate function key. The labels on the function keys change to indicate whether the displays are on or off. The two MODEL sets controls the display of the first MODEL ob- jects created in routine MODEL. Any of the displays can be turned on or off, without deleting them, by pressing the ap- propriate function key. The labels on the function keys change to indicate whether the displays are on or off. The RESET fkey set resets different parts of the display. The keys reset the rocking speed and angle, the stereo parameters, the default colors of the displays, the identification's size and position, and the screen intensity to their default values. Using The Function Dials The dials can have different functions, depending on which "dial set" is active. The keys of the numeric keypad control the use of the eight function dials. When one of the numeric keys is pressed, the function of the dials will change. The enter key is used to quickly return to the terminal from the display mode. The possible dial function sets are: ---------------------------- | KEY 7 | KEY 8 | KEY 9 | | | | | | MOVE |FRAGMENT |TORSION | ---------------------------- | KEY 4 | KEY 5 | KEY 6 | | | | | | ATOMS | MODEL A | MODEL B | ------------------------------------ | KEY 1 | KEY 2 | KEY 3 | | | | | | | | IDENTS | SCREEN | ATOMS | | ---------------------------- ENTER | | KEY 0 | KEY . | | | | | | | VIEW | STEREO | | ------------------------------------ CHAIN automatically switches the dial function whenever functions MOVE, FRAGMENT, or TORSION is activated. The user can always switch to any of the dial sets even if the functions are not ac- tive (such as going to the FRAGMENT dial set when there is no such fragment). Using the Menu Options The commands along the edge of the screen are known as the menu. These menu commands are activated by moving the cursor over the desired menu command and clicking on the MIDDLE button of the mouse. The selected menu command will light up. Most of the menu commands work by FIRST clicking on the desired atom or atoms and THEN clicking on the menu item. For example, to get an atom's position, first pick the desired atom from the active display and then pick the POSITION menu command. The coordinates will appear on the terminal and on the lower left of the display. To get the distance between two atoms, first pick the two atoms, and then the DISTANCE menu command: TERMINAL returns control of the program from the display menu to the keyboard. If any coordinates have been changed, the user is asked if the modified coordinates should be saved in the atomic coordinate data file when leaving the interactive mode. CLEAR is the master switch to clear any active menu items on the display. All active displays (MOVE, FRAGMENT, TORSION, and ROTOMER) are REJECTED and all monitoring (PLANE, POSITION, DIS- TANCE, ANGLE, and CONTACTS) is turned off. REJECT is used to reject the changes made to the structure or system. The modified coordinates are not saved in the coordinate file. All active displays (MOVE, FRAGMENT, TORSION, and ROTOMER) are turned off, and the coordinates reset to their initial posi- tions. RESET resets changes made to the structure or system. All active displays (MOVE, FRAGMENT, and TORSION) are reset to their initial positions while leaving the function active. The view transla- tion is reset to its last value sent from the host program. SAVE saves the current atomic coordinate file. The new coordi- nates of all modified atoms are written to the atomic coordinate data file. Any old coordinates in the disk file get overwritten. UNSAVE discards any changes made to the coordinates since the last SAVE command was given. Any modifications made to the coor- dinates are lost. IDENT clears the atom identifications on the display and/or the atom information in the text area. It is also used to change the format of the identifications on the screen. REDRAW shifts the screen center to the location of the last atom touched on the screen. The screen is redrawn, resetting all un- saved fragments. CENTER shifts the screen center to the location of the last atom touched on the screen. The screen center is shifted without any new atoms or electron density vectors being drawn. BOND makes or breaks a bond between the last two atoms picked on the screen. If the initial screen connectivity was not deter- mined by the dictionary, the correct bonding pattern does not ap- pear on the display. These bonds can be formed or removed using this command. MOVE allows an atom to be moved without affecting the rest of the molecule. The dial settings change automatically to those con- trolling the movement of the atom. Bonds involving this atom are 'rubber banded' as the atom moves. The MOVE command can also be used to add atoms to the display. FRAGMENT moves a group of connected atoms independent of the rest of the display. All the atoms connected to the last atom touched move as a rigid group. The picked atom acts as the central pivot point. TORSION interactively modifies the torsion angles of a structure. Up to six consecutive torsion angles can be defined, and rotated independently. REFINE initiates the Real Space Refinement procedure, using the electron density map file. All the atoms connected to the last atom touched move as a rigid group in an attempt to minimumize the difference between the observed and calculated density. ROTOMER displays the most likely conformations of the side chains for the selected residue. The routine allows the user to select a side chain rotomer. EXTEND adds the next residue in the sequence to the display. The coordinates of the new residues in the display range are read in from the coordinate file. For proteins, the action is to move along the sequence, residue by residue, from the N-terminal to the C-terminal. STATUS changes the fix/free atom-status words of all subsequently picked atoms. This is useful prior to regularization to fix or recalculate the position of certain atoms before the regulariza- tion. POSITION displays the current atomic coordinates of the last atom picked on the screen. A terminal listing is also produced giving all the information that exists concerning the atom (including the atomic temperature factor, weight, atom type and atom-status word). DISTANCE displays the distance between the last two atoms picked on the screen. This distance is updated on the screen if either atom is moved. ANGLE displays the angle defined by the last three atoms picked on the screen. Every triplet of atoms picked produces one angle calculation. This angle is updated on the screen if any of the three atoms move. PHIPSI displays the phi/psi angles for a selected residue on a small Ramachandran plot which appears on the screen. CONTACTS creates a display on the screen showing all atoms which are within a certain distance of the last atom touched. Contacts between this atom and atoms in the same residue are not displayed. PLANE makes a least squares plane calculation for a set of picked atoms. The deviation from the plane of each atom is given. PLOT writes the current display (atoms, bonds, identifications and electron density contours) to a plotter, laser printer or a plot file for making plots of the screen display on an external plotter. STORE saves a view in memory. These viewport memories hold the current view (rotation, translation, clip and scale). The user can store a current set or retrieve the stored set using the RE- CALL command. RECALL recalls a previously stored view. The display is given the rotation, translation, clip and scale of this view. The com- mand can also report back the current view to the user. STEREO switches the stereo viewing of the display on and off. The type of stereo display drawn depends on the setting of the GRAPHICS STEREO command. ROCK switches the rocking of the display on and off. The rocking speed and maximum angle are set using the SET ROCK command. IMAGES writes an rgb screen image of the current screen for later display during picture taking. It also has the option of writing a file of the current atoms being displayed for use with the RASTER3D program. Using the Peripheral Devices The program provides for the use of several different peripheral devices. Creating Plot Files The program provides PLOT and SPOOL options for creating hard copy plots of the display on an HP plotter or a PostScript laser printer. One first creates a generic plot file using the PLOT menu command. One then has the option of manually making modifi- cation to this file, such as adding labels or greek letters. The SPOOL command then translates the generic plot file into ei- ther HPGL or PostScript format for plotting. The output spool file can then be sent to a plotter. Using the Spaceball Device The spaceball device is controlled by the SET SPACEBALL command. This determines if a spaceball controller is present on the sys- tem, and the type of screen display you desire. Option Meaning OFF turns the spaceball off (used when you do not have a spaceball) ON turns the spaceball on DISPLAY OFF turns the spaceball screen display off DISPLAY ON turns the spaceball screen display on DISPLAY FIXED turns the spaceball screen display on but without interactive display of settings SCALE sets sensitivity of the spaceball by multiplying a scale factor to each value. The default value is 1.0 If your system has a spaceball device, you should set this param- eter ON, otherwise, it should be set OFF. The top row of buttons on the spaceball set the device's func- tion; either the normal view rotations and translations, the mov- ing atoms translations, or the molecular fragment motion. The botton row determine if the spaceball will control, all motions or just rotations or translations. The function of the spaceball can be changed by touching the buttons, or by touching the space- ball display on the screen: ------------------------------------ | | | | | | VIEW | MOVE | FRAG | | | | | | | ------------------------------------ | | | | | | 6-AXIS | ROT | TRANS | | | | | | | ------------------------------------ There is also a button on the back of the ball to reset the spaceball in case it starts to drift. Using the Stereo Graphics Stereo Viewer The program provides an interface for a StereoGraphics Stereo Viewer. The command GRAPHICS STEREO determines if a Stereograph- ics stereo viewer is present. If you have a stereo viewer, you should set this variable ON, otherwise it should be set OFF. The stereo viewer is switched on by the STEREO menu command, or by the VIEW switch on the screen display. The stereo viewer is automatically switched off when you return to the terminal mode. In the event that the program crashes while in stereo mode, you can use the UNIX command "offstereo" to reset the stereo device. chain Command CHAIN invokes program CHAIN. If the program has been properly installed, the user only has to give this command to invoke the program. One can include additional qualifiers with this command to invoke special routines: If the program has been properly installed, the user only has to give the command 'chain' to invoke the program. One can in- clude additional qualifiers with this command to invoke special routines: % chain [-d] [-ng] [-s system_file] [-t] [-u user_file] [session_file] -d overrides the SET MESSAGE parameter in the program. All output messages, including a number of special debug listing messages are displayed. A small display will also appear on the screen that lists the pick and other messages. This qualifier is not normally used. -ng indicates that no graphics device will be used. All termi- nal commands may still be given, except for the SHOW command. -s system_file specifies an alternate system COMMAND file. The default system file name is $CHAIN_ROOT/exe/chain.cmd, however, you can specify an alternate system command file, such as system.cmd by using this command. -t overrides the automatic terminal window resizing and move- ment that CHAIN normally does. -u user_file specifies an alternate user-specific COMMAND file. If you have several different COMMAND files in your directory, you can select which one will be used. session_file specifies a session file to be used. This saves the user from being prompted for the session file name. If a session file name is not given, it will be requested by the program. (see command BEGIN) SPECIAL COMMANDS @ - Read and parse the commands found in the speci- fied command file. When completed, program control returns back to the terminal. The parser will only allow you to call files one level deep. The default extension name of this file is .cmd. See command SCRIPT for the creation of a parser file to be read. $ parses any valid UNIX command. Unlike the SHELL command (see command SHELL), the program returns immediately to CHAIN after the command is completed. With command SHELL, the program remains in a child process until a LOGOUT command is given. ? (question mark) displays a list of the legal commands avail- able at this level of the program. If the program is currently requesting a value, the command displays the current value(s) of the parameter. = (equal sign) keeps the current value of the parameter. For example, if four values are requested, a response of "1 = = 2" changes the first and last values, but the second and third values are kept as they were. ! (exclamation point) or # (pound sign) indicates a comment statement. The parser stops interpreting any characters fol- lowing the exclamation point or pound sign (except when reading a title parameter). BEGIN Command BEGIN starts a new CHAIN modeling session. If there is already a current session active, it is first ended (with a END command), and the new session is then started. BEGIN is au- tomatically called when you invoke program CHAIN. This SESSION file saves and restores various parameters between sessions using CHAIN. It is created at the end of a previous session, and contains the values of all the parameters set when the session was ended. The SESSION file can then be read at the beginning of the next session, and sets all of the parame- ters the way they were at the end of the last session. If an old session is selected, all of the parameters set at the end of the last use of the session are retrieved from the SES- SION file. The program then reads in the current atomic coordi- nates and electron density into the host memory. If starting a new session, and no session file exists, the necessary parameters will have to be set and the initial coor- dinate and density files created before proceeding to the display. - name of the new session file. The program searches for the SESSION file owned by that user. If no ses- sion file exists with this name a new SESSION file is created. The BEGIN command is automatically called when CHAIN is first invoked. One can also specify the session named during the in- itial call to program CHAIN. BRIDGE Command BRIDGE defines disulfide bridges in the atomic coordi- nate data file. The command changes the flags in the coordi- nate file so that the disulfide-linked atom points to the atom- ic coordinate record of the equivalent atom in the other cys- teine residue. This information is used by the bonding routine to add a covalent bond in the display, and by the regulariza- tion routine to include this restraint during regularization. and are the names of the two residues to be bridged. CELL Command CELL specifys the real space cell parameters (in Angstroms and degrees) in the coordinate file. This informa- tion is required for drawing symmetry related molecules on the display and molecular contact searches. If no angles are given, they are all assumed to be 90 degrees. CENTER Command CENTER defines the screen center to be used in the next display. The command prompts for the position to be used as the next screen center. The position of the new screen center can be specified as an orthogonal or fractional coordinates, as a residue and atom pair, LAST as the position of the last iden- tified atom on the screen, or at the center of the molecule (see subcommand POSITION). CHECK Command CHECK checks the current file for incomplete residues. The atom names in the atomic coordinate data file are compared with the names found in the dictionary file for any nonexistent residue types, atom names, or undefined coordinates. One may specify one or more ranges of residues to be checked (see sub- command RANGE). CLIP Command CLIP set the initial position of the screen display clipping plane. The plane can be positioned between 0 (display completely clipped) and 1 (no clipping). The clipping plane can be moved by the CLIP dial on the view dial set. CODEWORD Command CODEWORD adds residue code words to the coordinate file. The routine requests the 4-character code word and the residue range to apply it. These code words are used by pro- gram XPLOR to divide the coordinates of the input file. They are written to PDB and XPLOR output files. CONTACTS Command CONTACTS lists out the inter- and intra-molecular con- tacts between atoms contained in the atomic coordinate data file. The routine will search for either intra-molecular (between atoms in the same molecule) or inter-molecular (between atoms in symmetry related molecules) contacts. Inter-molecular contacts require that the CELL and SPACEGROUP information has already been specified. The routine requests the following parameters: a. Contact listing file name (if desired) b. Maximum contact distance (in Angstroms) c. Residue search range(s) for the contacts d. Selected atom types in the search range(s) e. Residue test range(s) for the contacts. All contacts between residues in the search range and residues in the test range will be listed. f. Selected atom types in the test range(s) g. Switch to include intramolecular contacts h. Switch to include intermolecular contacts (assumed to be true if intra-molecular contacts were not selected). CURRENT