General options (GENERAL)

Introduction.

If you run WHAT IF, you see a large series of options in the text window. The options above the line are called general options, and the options below the line are specific for the currently active menu. (At the beginning there is nothing below the line, you first have to type the name of the menu you want to use.) The group of options above the line are called the `general menu'.

The general menu holds three classes of options:

1) Options to pass control to another menu;

2) Control options like FULLSTOP, percent, exclamation mark, etc.;

3) Options that are always useful and/or often used.

Some of these options are in the main menu, which you see in the text window when you just hit RETURN. Several others are in the menu called GENMEN. These are the less frequently used options, which are nonetheless potentially useful no matter in which menu you are presently working.

Despite being in another menu, you don't have to go to that menu to run the options in it. They are always active. You have to go to GENMEN, however, if you want to get help or one-line help (SHORT) for general options, and automatic input command correction will only work when you are actually in the GENMEN menu.

The WHAT IF main menu looks roughly like:

HELP   INFO   SHELL  GENMEN END    $..  %..  !.. SCRIPT 
DOLOG  NOLOG  GO   FULLSTOP LISTA  LISTR  HISTOR GETMOL 
GRAFIC GRATWO GRAEXT COLOUR PLOTIT USEGRA ITMADM LABEL  
SOUP   3SSP   ACCESS ANACON BUILD  CHECK  CHIANG CLUFAM 
DGLOOP DIGIT  DOSELF DRUG   DSSP   ELECTR EXTRA  HBONDS 
HSSP   MAP    MODIFY NEURAL NMR    NOTES  OTHER  PROTON 
QUALTY REFINE SCAN3D SCNSTS SEARCH SELECT SEQ3D  SETPAR 
SETVDW SHOENT SPCIAL SUPPOS SYMTRY TABLES WALIGN        
WATER  XRAY                                             
ANATRA TRAMOV GROMAC GRID                               
The top two lines hold the help and option-control related options:
E: HELP    Gives help about options
   INFO    Gives extensive help about options
   SHELL   Opens a system shell
   GENMEN  Looks at all the other general options
   END     Goes back to the previous menu
   $       Execute a shell command directly
   %       Executes commands from a different menu
   !       Repeat a previous command
   SCRIPT  Executes commands from a script file
   DOLOG   Opens the log file
   NOLOG   Closes the log file
   GO      Passes control from the text window to the graphics window
   FULLST  Ends WHAT If execution the neat way
   LISTA   Lists all information about 1 residue
   LISTR   Lists the sequence of all protein, nucleic acids, and sugars
   HISTOR  Shows recently executed options.
   GETMOL  Reads in a PDB file
The third line holds the graphics-related options:
   GRAFIC  General menu for the graphics options
   GRATWO  Two-dimensional graphics menu
   GRAEXT  Fancy graphics menu
   COLOUR  Menu to colour atoms and residues
   PLOTIT  Plotting menu (mainly postscript and GIF files output)
   USEGRA  Menu for user-defined MOL-object generation
   ITMADM  Menu for the administration of MOL-objects/items
   LABEL   Atomic-labelling menu.
The following commands all bring you to another menu. Soup is the most important menu. Some other menus are given almost alphabetically:
   SOUP    Soup manipulation menu
   3SSP    Multiple protein structure superposition menu
   ACCESS  Menu for accessibility calculations
   ANACON  Contact analysis menu
   BUILD   Ab initio protein building menu
   CHECK   Structure validation menu
   CHIANG  Torsion-angle menu
   CLUFAM  Clusters and families menu
   DGLOOP  3D-fragment database menu
   DIGIT   Menu for reconstructing molecules from stereo pictures
   DOSELF  This menu is only meant for WHAT IF maintenance
   DRUG    Drug-design, docking, etc
   DSSP    Menu to work with DSSP (or its emulator)
   ELECTR  Menu to work with DelPhi (electrostatics)
   EXTRA   Menu that does some other funny things
   HBONDS  Hydrogen bonds menu
   HSSP    Menu to work with HSSP files
   MAP     Handling menu for electron density and other map types
   MODIFY  Mutation and debump menu
   NEURAL  Neural network toy menu
   NMR     Menu with NMR specific options
   NOTES   Menu to make notes with amino acids
   OTHER   Yet another menu that does funny things
   PROTON  Menu to do proton-specific things
   PKA     pKa calculation menu
   QUALTY  Packing quality control menu
   REFINE  Structure refinement/regularization menu
   SCAN3D  Relational protein database module
   SCNSTS  Statistics on SCAN3D and DGLOOP groups
   SEARCH  Menu to search in the soup 
   SELECT  Nearly obsolete menu to select proteins for SCAN3D
   SEQ3D   Menu to regenerate the internal database
   SETPAR  Menu to change parameters
   SETVDW  Van der Waals radius menu
   SHOENT  Menu to look at the internal database
   SPCIAL  Menu that you should not use without reading the source code
   SUPPOS  Protein structure superposition menu
   SYMTRY  Menu to work with crystallographic symmetry
   TABLES  The spreadsheet menu
   WALIGN  Menu to work with sequences (has menu sub-menus)
   WATER   Menu to work with water molecules
   XRAY    Menu with X-ray specific options
   DGEOM   Distance geometry toy menu

The last line lists some interfaces to external programs:
   GROMAC  Menu to work with the GROMACS EM/MD program
   ANATRA  Trajectory analysis menu
   TRAMOV  MD trajectory movie menu
   GRID    Menu to work with Goodford's GRID program

Obtaining coordinates

The options to read coordinates should actually be in the SOUP menu, which is where they are described. However, these options are so important that we decided to make several of them general options, so you can run them, regardless of which menu you are in.

See also the SOUP chapter.

Reading coordinates from a PDB file (GETMOL)

The most important command in WHAT IF is GETMOL. It is used to read PDB files. After GETMOL, you will be prompted for the file name. You can type the name of any PDB file. Include the path in the name, unless the file is in the present directory, or in your standard PDB directory. If this latter possibility does not work, ask your WHAT IF manager to check the file CCONFI.FIG in the dbdata directory. You do not need to type the .pdb or .brk extension to the file name.

After the file is found, you are prompted for the set name. Here, everything is allowed. If you just type return, the set name will be the same as the file name, which is probably what you want.

If you ask for a PDB file by giving its PDB-assigned four-letter code, but it does not exist, WHAT IF will try to get it from my (Gert Vriend's) computer, dump it in your local directory, and read it. This facility often doesn't work because of firewalls, non-installed perl modules, etc.

GETMOL actually belongs in the SOUP menu, but it is so important that we made it a generally accessible option.

Reading a set of PDB files (GETMLS)

The command GETMLS will prompt you for a file name. All PDB files listed in that file will be read using the GETMOL command. See the NMR chapter for more details. This option requires complete and correct file names. It cannot, like GETMOL, correct your file name or get your file from the PDB, or ...

Reading a demonstration file (START)

The START command will load a small protein molecule (crambin) without needing to know where the PDB files are stored. START obtains this molecule from the WHAT IF internal database.

Listing coordinates or sequences

WHAT IF always allows you to inspect the presently available sequence information and coordinates, both for the molecule(s) you are working on and for all of the other molecules in the database.

We distinguish three sets of options:

1) looking in the database;
2) looking at sequences;
3) inspecting the molecule(s) you are presently working on.
Most of these options are explained in greater detail in the SOUP menu.

Looking at sequence in the soup (LISTR)

The LISTR command makes WHAT IF show you the entire sequence of the soup. See the chapter on the SOUP for more information.

Looking at the sequence in the soup (LISTRR)

The LISTRR command will prompt you for a residue range, and show for that range the internal residue number, the residue type, and the original name/number as read from the PDB file. See the chapter on the SOUP for more information.

Looking at atomic coordinates (LISTA)

The LISTA command can be used to look at atoms, in residue groups. WHAT IF will prompt you for a residue range, and will then show for every requested residue both the amino acid information such as name, type, etc. and the atomic information such as coordinates, B-factor, Van der Waals radius, colour (if already set), charges (if already calculated) etc. This option also works on drugs, water, etc. See the chapter on the SOUP for more information.

Looking at atomic coordinates (LISTAA)

The LISTAA command functions similarly to LISTA, the difference being that LISTA prompts you for only one range of residues, whereas LISTAA will prompt you for multiple ranges. See the chapter on the SOUP for more information.

Looking for sequence patterns (SHOPAT)

Sometimes one wants to find a sequence pattern, e.g. Arg-Gly-Asp in a large structure. The SHOPAT option can help with this. SHOPAT prompts you for three residue types (you can give multiple types at each position). For every occurrence of the pattern the first position will be listed. The sidechains of all matching patterns will be displayed. You have to give patterns of length 3. If you want patterns of length 2, use ALL as residue type at position 3 in the pattern. In this case, however, an accidental occurrence of your dipeptide pattern at the C-terminus will go undetected.

Toggling 1 and 3 letter code

Normally, the command LISTR lists the sequence, for example, like:
The sequence of proteins, sugars and nucleic acids:
Molecule number 1
    1-  10  THR  THR  CYS  CYS  PRO    SER  ILE  VAL  ALA  ARG
   11-  20  SER  ASN  PHE  ASN  VAL    CYS  ARG  LEU  PRO  GLY
   21-  30  THR  PRO  GLU  ALA  ILE    CYS  ALA  THR  TYR  THR
   31-  40  GLY  CYS  ILE  ILE  ILE    PRO  GLY  ALA  THR  CYS
   41-  46  PRO  GLY  ASP  TYR  ALA    ASN
The magical command:
SETWIF 1 0
will tell WHAT IF to use 1-ltter code rather than 3-letter code. The same example output will then look like:
The sequence of proteins, sugars and nucleic acids:
 Molecule number 1
    1-  46  TTCCPSIVAR SNFNVCRLPG TPEAICATYT GCIIIPGATC PGDYAN
You put WHAT IF back to 3-ltter code with similar magic:
SETWIF 1 1
Three-letter code is the default. This magic influences many, but not all WHAT IF options that list residue types. Clicking a C-alpha in the graphics window, for example, will always show the amino acid type in 3-letter code.

Information and help related options

Documentation in hypertext format (APROPO)

The APROPO command will execute the corresponding command in the WHAT IF configuration file CCONFI.FIG. At this moment my CCONFI.FIG file holds:
firefox http://swift.cmbi.kun.nl/writeup/
So, APROPOS will open a browser window with the WHAT IF writeup page in it.

Creating a command script (AUTOON)

The AUTOON command will make WHAT IF create a (new) file SCRIPT.FIL. Subsequent commands to WHAT IF are echoed to this file. After some minimal editing, it can be used as a script file for the SCRIPT option. (See also the AUTOOF and SCRIPT options.)

Terminating automatic script file creation (AUTOOF)

The AUTOON command will make WHAT IF log your commands to the file SCRIPT.FIL. The AUTOOF command will close this file. You will have to edit this file a little, since it is not yet automatically valid as a script file. (See the SCRIPT option.)

Starting a log file (DOLOG)

The DOLOG command makes WHAT IF prompt you for the name of a log-file, and for a comment to be written in this file. Thereafter, all relevant information written to the terminal/text-window will also be echoed to this file. (See also NOLOG and the chapter on logging in this writeup.)

Terminating a log file (NOLOG)

The DOLOG command makes WHAT IF prompt you for the name of a log-file. The NOLOG command will close this file. Thereafter, you can (for example) print the file with any valid print command preceded by a dollar. (See also the chapter on logging in this writeup.)

History logging

The HISTOR command logs commands you recently executed. For a thorough explanation see the chapter on logging results.

Spawning a UNIX subprocess (SHELL)

The SHELL command will generate a new window for you. You return from a subprocess to WHAT IF by typing exit. You then get back into WHAT IF exactly where you left it, and nothing will have changed.

I think this command is no longer useful.

Very extensive help (INFO)

The INFO command can be used to read the part of the writeup that deals with a certain command. Just type:
INFO XXX
in which XXX stands for any option in the present menu. You will get at the terminal the introductory paragraph from the chapter containing XXX, and the paragraph that deals with the command XXX itself.

INFO should not be used for general options. But if you do it anyway, you will get the introductory paragraph of the chapter for the current menu, followed by the help for the option requested.

Normal help (HELP)

The HELP command can be used to get a limited amount of help for a given command. Just type:
HELP XXX
in which XXX stands for any option in the present menu, and you will get some help for the command XXX.

Short help (SHORT)

The SHORT command will make WHAT IF show you a list of all the commands available in the current menu, followed by a short description of what that option can do for you. SHORT is now implemented in almost all menus.

Short help (MAN-K)

The MAN-K command (UNIX users can also type man -k) can be used to search for all SHORT help lines containing a given keyword. Just type:
MAN-K XXX
in which XXX stands for any text string, and you will get a list of all lines in all SHORT listings with XXX in it, complete with the names of the matching menus.

Finding options (FIND)

The FIND command can be used to get help for an option that is not in the current menu. Just type:
FIND XXX
in which XXX stands for any option, and you will get some help for the command XXX.

Short help for main menu options (SHORTT)

The command SHORTT (with two Ts) gives short help about general options.

Automatic help for every option (NOVICE)

The NOVICE option toggles the mode in which you automatically get HELP presented for every non-general option that you use. As the name suggests, this option is meant for new users.

This option only works inside a menu. You would get help text if you use SETACC inside the ACCESS menu, for example, but the option %SETACC will not automatically provide the SETACC help text, nor will general options such as GETMOL, LISTA, etc.

Direct execution of UNIX commands ($)

If you want to execute a UNIX command, you can first give the SHELL command in WHAT IF, and then do what you want to do in the new window. If you only want to execute a single command, it might be easier to just type this command preceded by a dollar sign. WHAT IF will strip the leading dollar sign from the command line, and pass the rest on to the operating system. If you are executing such a process, you can terminate it with control-C (or whatever control sequence you normally use to break a process). This will terminate the execution of the command, and bring you back to WHAT IF.

Executing commands in other menus (%)

If you know that a command exists, but forget in which menu it is, or do not want to go to that menu, you can execute it anyway by prefixing it with a percent sign. E.g. typing %SHOSOU in the GRAFIC menu will list the present contents of the soup.

Using all menus at the same time (AUTO%)

The AUTO% command will automatically try a % sign in front of every option that it cannot execute otherwise.

Use AUTO% again to toggle back to the normal mode of operation.

When using the AUTO% option, you cannot use type-ahead after a command that can only be executed after the automatic addition of a prefixed % sign.

The default for this option is ON, i.e., WHAT IF starts with AUTO% used once already.

Continue in Dutch (DUTCH)

The command DUTCH will make WHAT IF talk Dutch. Not all messages have been translated, so WHAT IF will sometimes use one or two English sentences, but most will be Dutch.

WHAT IF's Dutch is sometimes a bit funny. That is because a large fraction of the program messages were translated by WHAT IF itself.

Continue in English (ENGLIS)

The command ENGLISH will force WHAT IF to talk English. This option is only useful if you changed the default language earlier in the session. English is the default language.

Continue in French (FRENCH)

One day, the FRENCH command will make WHAT IF talk French. At the moment, only the prompt becomes French.

Continue in Spanish (SPANIS)

One day, the SPANIS command will make WHAT IF talk Spanish. At the moment, only the prompt becomes Spanish.

Looking at the history (HISTOR)

The HISTOR command will show you the command history. But note that many options still don't get logged in the history file.

Program parameters

(Re)setting program parameters (SETPAR)

In many places in WHAT IF parameters like line thickness, number of dots per sphere, radius of water, cutoff radius for distance calculations, etc. may seem somewhat arbitrary. I spent a lot of time thinking about good default values, but if you disagree with my choices, you can go into the parameter-setting menu with the SETPAR command. The parameter menu has many parameter submenus in it.

Many menus include a PARAMS command, which takes you into a special menu to modify the parameters specific to the current menu. A few parameters function globally in WHAT IF, and are therefore hard to place in any particular PARAMS menu. These parameters are stored in the general parameter menu, which you access with the SETPAR command. The following commands are found in that menu:

(LINCOL)

Colour of lines made with screen option .LINE

(LINMOD)

Line type for the lines made with screen option .LINE

(AA1OR3)

Amino acid output in 1- or 3-letter code flag (about half of the options in WHAT IF listen to this flag, the others just do what they like.).

(INSFLG)

Amount of sequence output flag in SCNSDB menu (a rather useless parameter).

(VDWOVR)

Bump/contact distance between Van der Waals radii

(DFBFAC)

Default B-factor. This is used if there is no B-factor in the coordinate file, and when `dreaming up' new atoms.

(CYSCYS)

Do/don't use interchain disulphide bridges.

(NEICON)

Do/don't use covalent neighbours in BUMP/CONTAC-like options.

(Re)setting program parameters (PARAMS)

In many places in WHAT IF parameters like line-thickness, number of dots per sphere, radius of water, cutoff radius for distance calculations, etc. may seem arbitrary. I spent a lot of time thinking about good default values. But if you disagree with my choices, from many menus you can go directly to the corresponding parameter setting menu with the PARAMS command.

See SETPAR to get an overview of most of the available parameter menus.

(Re)setting program parameters (SETWIF)

Most of WHAT IF's internal parameters are stored in one big array. These parameters are numbered. The file PARAMS.FIG (in the dbdata directory) holds their initial values. You can poke new parameter values directly into these parameters with the SETWIF command. I strongly recommended that you do not use this option unless you are desperate: SETWIF does not check your values, and setting incorrect values can lead to a program crash.

Displaying internal program parameters (SHOWIF)

The SHOWIF command will prompt you for the number of a parameter (see SETWIF). It will then show the documentation for it.

Program flow

Automatic regular SOUP backups (IUKKEL)

The obtusely named IUKKEL command will make WHAT IF activate the SAVSOU option automatically (see the SOUP chapter) after every 50-th option that you execute. I happens after every 10-th option if you work in debug mode. Debug mode is default at the CMBI, but not anywhere else.

Renaming commands. (<)

WHAT IF allows you to rename commands. Start with the > sign, followed by a real command name. Continue on the same line with a > sign followed by the new name for this command. This renames one command. To use the new command name, type the < sign first, then the new command name.
  Example:
  >LISTA>TYPE ATOMS      to rename the LISTA command TYPE ATOMS
  <TYPE ATOMS            to use the new TYPE ATOMS command
The new command can be used only in the original command's menu. You can rename up to 100 commands. Renamed commands are not be remembered from the one WHAT IF session to the next, but you can make a SCRIPT file to remember them.

Blank characters are part of the command. So, if you rename a command with

  > LISTA > TYPE
then only '< TYPE 13' and not '<TYPE 13' will execute the LISTA command. In other words, the blank between > and TYPE is also needed between < and TYPE.

You can use the commands >> or << to get a listing of all renamed commands.

The commands <, >, ., !, dollar, and % cannot be renamed.

If you like to rename commands, I strongly suggest that you write a script file to do the renaming.

Repeating commands (!)

If you type an exclamation mark (!) followed by one or more characters, the last issued command starting with these characters will be repeated. You can use the hidden command .P (period, P) to get a list of the last 100 commands. Instead of an exclamation mark you can also use a period (.).

Repeating commands (.)

If you type a period (.) followed by one or more characters, the last issued command starting with these characters will be repeated. You can use the hidden command .P (period, P) to get a list of the last 100 commands. Instead of a period you can also use an exclamation mark (!).

Renaming commands. (>)

For the command >, see under the command <.

Script files (SCRIPT)

The SCRIPT option can be used to play a script of pretyped commands. This option is extensively described in a separate chapter entitled SCRIPT FILES. You are urged to read this chapter first, because SCRIPT files are a bit tricky.

Repeat script files over multiple molecules (LSCRIP)

The LSCRIP option can be used to run a script of pretyped commands over a set of PDB files. This option is extensively described in a separate chapter entitled SCRIPT FILES. You are urged to read this chapter first, because LSCRIP is a bit tricky.

If you use the MAKMOL command in a LSCRIP script, WHAT IF will each time MAKMOL is executed write the next number (1,2,3,... etc, for ever) tag to the end of the file name.

Running teaching scripts (TEACH)

The TEACH command is obligatory as the first command in any teaching script. (See the chapter on teaching scripts; and the workshop website for more information.)

Go back to previous menu (END)

Whenever you use a menu command you go one menu down in the menu tree. You can go back to the menu you came from with the END command.

There are several obvious synonyms for this command.

Go back to first menu (QUIT)

Whenever you use a menu command you go one menu down in the menu tree. You can go all the way back to the first menu with the QUIT command.

Terminating WHAT IF (FULLST)

The FULLSTOP command (only FULLST needs to be typed) is the preferred way to terminate a WHAT IF session. It will stop WHAT IF and bring the graphics device back to its normal state, which is good for the next user.

Especially on Evans and Sutherland equipment, it is important to use this option instead of control-Y or control-Z, or any other harsh command.

Using your own menu (MYMENU)

WHAT IF has an in-built empty menu. You can use this to write your own options, without having to worry about menu administration, or the creation of pull-down menus. The MYMENU command fetches this menu for you. See the EXTRA menu. In the default situation, i.e., that is how WHAT IF is delivered to you, this MYMENU is disabled. See the chapters at the end of the writeup for notes on the activation of this menu.

Activating more commands (MORE)

The MORE command shows up in about 10 menus. If MORE is typed the number of available commands in that menu will increase. MORE can be reversed with LESS. The main aim of the MORE and LESS commands is to let the user concentrate on the most important options.

Deactivating commands (LESS)

The LESS command reverses the action of MORE. (See the MORE command above).

Pass control to the graphics (GO)

There are two ways to communicate with WHAT IF. You can type commands in a text window, or you can work interactively in the graphics window. With GO, you pass control from the text window to the graphics window. In the graphics window you pick CHAT to get back to the text window.

Editing files (EDT)

The EDT command will prompt you for a file name, and it will get this file in the editor. Which editor is chosen is determined by the editor record in the CCONFI.FIG file. You said what your favourite editor was when you installed WHAT IF. Remember?

Restarting WHAT IF (INIALL)

Sometimes one would like to start a completely new session (simply because that would be faster than cleaning up the soup, the graphics, etc). INIALL does just that. Running INIALL is equivalent to getting out of WHAT IF with control-C or FULLST and starting again.

Alternative names for oft-mistyped options

When you are working in a menu, WHAT IF can correct mistyped options in that menu. To do so, it tries several heuristics:
1) The commonest three-letter code in this menu (e.g. TAB for the
TABLES menu, GRA for the GRAFIC menu, etc.) will be added to the
head or the tail of this option.
2) The first three characters and the last three characters of the
name are swapped. Five-character commands are padded, and both possible
swap combinations are tried.
3) All letters O are replaced by numerals 0 or vice versa.
4) All letters I are replaced by numerals 1 or vice versa.
5) All single character deletions, insertions and typographical errors are tried,
and each time the results are compared with all options in this
menu. If a single match is found, it is used. Sometimes
double insertions, deletions or typos can be corrected too.
6) All pairs of characters in the input option are swapped. If there
is exactly one swap that leads to exactly one valid option, it is used.

However, the above option correction only works for options that are found in the menu in which you are working. General options are not corrected.

(SPECIA)

This option does the same as SPCIAL.

(RESET)

This option does the same as GRPINI in the DGLOOP menu which in turn does the same as INIGRP in the SCAN3D menu.

(QUALIT)

This option does the same as QUALTY.

(GRFAIC)

Horrible misspelling of GRAFIC and GRAPHIC.

A whole series of other commands

The following commands all are always active. They aren't grouped as every grouping would be artificial. Just sit down one day, and mark the options you think you like.

Interatomic angle (ANGLE3)

The ANGLE3 command will prompt you three times for an atom. First, you will be prompted for the atom in the middle, i.e. the atom at which the angle is calculated. Thereafter you will be prompted for the atoms 1 and 2. ANGLE3 will calculate the angle going from atom 1 to the middle atom and then to atom 2. For each atom WHAT IF will prompt you first for the residue number and then for the atom in that residue.

Interatomic distance (DIST)

The command DIST will prompt you for two atoma. It will calculate the distance between those two atoms. For each atom WHAT IF will prompt you first for the residue number and then for the atom in that residue.

Direct action mode (DIRECT)

Normally, WHAT IF does its graphics via MOL-objects and MOL-items. After the DIRECT command, however, molecules, residues and atoms are always updated immediately if modified. Other graphics, such as, for example, H-bonds, are still put into MOL-items. This option is in the GRAFIC menu, but can be activated from every menu.

See the GRAFIC menu.

Interatomic distance (DSTOFF)

When you inspect interatomic distances interactively, WHAT IF will draw a line between the two atoms, and display the interatomic distance at the midpoint of this line. This line, and the distance, will be updated continuously. The DSTOFF option will selectively remove all lines and distances from the screen, and will stop them from being continuously updated. Clicking 'No Label' in the graphics window once will do the same, but will also remove several other interactive graphics items from the screen (i.e. NAYB, simple interatomic lines, etc).

Determining the extremes of a molecule (MINMAX)

The MINMAX command makes WHAT IF prompt you for a residue range, and then determine the extreme values of the coordinates in this range. It will also determine the centre of gravity of this range. You will then be asked if you want to recentre the SOUP. If you answer YES, the whole SOUP will be shifted so that the centre of gravity of the given range will be at the coordinate origin, (0, 0, 0).

Be aware that symmetry operations will no longer function properly after you execute this option.

Listing cell dimensions (SHOCEL)

The SHOCEL command will make WHAT IF list all kinds of cell-dimension information. The cell as read from the PDB file is listed together with the cell reconstructed from the PDB SCALE records. Additionally, WHAT IF uses artificial cell dimensions from GRID maps, DelPhi maps, surface maps, etc. SHOCEL will also summarize the artificial cell dimensions that come with those maps.

Hidden commands

The main menu has several so-called hidden commands.

Centering the graphics (CENXYZ)

The CENXYZ command makes WHAT IF prompt you for the coordinates of a point in space. This point will become the new centre of the graphics screen.

A chess program (CHESS)

The CHESS command will start a 1100 ELO rating chess program. (At least, if you activated it when you installed WHAT IF.) This command should only be used when your boss is on holiday.

Selecting a range for multiple options (CHOOSE)

The CHOOSE command will prompt you for ranges. Every subsequent command that would normally prompt you for multiple ranges will now no longer do so, but will use those you gave the CHOOSE command.

Use CHOOSE again to select new ranges.

Use NEWRNG to deactivate the ranges set with CHOOSE. After NEWRNG WHAT IF will prompt you again every time ranges are needed.

Options that only require one residue or a single range of residues as input are not affected by the CHOOSE and NEWRNG commands.

Deactivate preselected residue ranges (NEWRNG)

The NEWRNG command will deactivate the automatic ranges set with the CHOOSE command.

Time and date (FOOOOD)

The command FOOOOD will make WHAT IF tell you time and date. This information can be combined with the rumblings from your belly to see if it is time to eat, and whether the canteen is open today.

Time and date (TIME)

The more serious equivalent of FOOOOD is TIME. This option can even be used from the graphics window.

(Re)set default editor (SETEDT)

Several WHAT IF options will open files for editing. Which editor is used is determined by your choice when you installed WHAT IF. The default editor is stored in the file CCONFI.FIG. The SETEDT command allows you to use another editor for the duration of this WHAT IF run. Please make sure that you use only editors that stop WHAT IF execution while they are active (or give the editor some flags to force this behaviour). If you don't do this, there is no sense in editing input parameters, because WHAT IF would already be running with superseded parameters while you are still pointlessly changing them.

Set graphics mode on X11 systems (MODEF)

On X11 systems only you can (at the cost of rotational speed) increase the level of elaboration of the graphics options. The MODEF command switches on the fastest, but simplest, graphics mode. MODES, MODEC, MODEP make the graphics options progressively more elaborate:

   MODEF   X11 only: switch on fast graphics mode;
   MODES   X11 only: switch on slabbing;
   MODEC   X11 only: switch on depth cueing (MODEC is the default)
   MODEP   X11 only: switch on perspective view (presently bugged)

These options all include the options above them in the list, so MODEP also activates depth cueing and slabbing, for example. The default mode is MODEC. See also the GRAFIC chapter.

Set graphics MODES on X11 systems (MODES)

See under MODEF above. See also the GRAFIC chapter.

Set graphics MODEC on X11 systems (MODEC)

See under MODEF above. See also the GRAFIC chapter. This is the default grafics mode, i.e., when you do not use any MODE* command WHAT IF behaves as if MODEC was given.

Set graphics MODEP on X11 systems (MODEP)

See under MODEF above. See also the GRAFIC chapter. This option presently is bugged.

Renumbering residues (RENUMB)

The command RENUMB makes WHAT IF prompt you for a residue range. It will then prompt you for the number to be given to the first residue in this range, and will then renumber the residues in the given range, using an increment of one.

Automatic setting of MOL-object and item names (SIMPLE)

One often wants to use WHAT IF for looking quickly at a structure. It may be irritating to have to type the complete MOL-object number and MOL-item name every time. The command SIMPLE will make WHAT IF choose MOL-object numbers and MOL-item names automatically for every MOL-item you generate.

The first item will be called A and put in MOL-object 1. The second one will be called B and put in MOL-object 2, and so on. But after 8 items, WHAT IF starts to prompt you for object numbers and item names again.

Use SIMPLE to toggle this option on/off, or SMPLON to switch it on, and SMPLOF to switch it off.

Manual transformations (TRAROT)

The TRAROT command makes WHAT IF prompt you for a translation vector, a rotation axis and a rotation angle. It will then show you the transformation to be applied. It will ask you for a residue range, and apply the transformation to that range. If you only want a translation, set the rotation angle to zero.

Status of the screen buttons (SHOBUT)

The debug option SHOBUT will show the status of the 36 pickable boxes (so-called buttons) at the bottom of the graphics window. T means active (yellow) and F means inactive (white).

Status of the screen buttons (SHOIRF)

The debug option SHOIRF will show the status of the graphics flags. These flags get their initial value from the last line of the file WHATIF.FIG. (See the installation notes.)

Toggling the graphics flags (TOGGLI)

The TOGGLI command will prompt you for the number of a graphics flag, and will then toggle that flag from FALSE to TRUE or vice versa. If you don't know what you are doing, don't do it with the TOGGLI options - they can easily hang your system!

Show type-ahead buffer (STYPEA)

This is a debug option that you should not use.

List open FORTRAN units (LSTOPN)

This debug option lists which FORTRAN units are currently open, and which files are attached to those units.

Verifying the soup (MOL200)

If you are afraid that some complicated option has corrupted the soup, try the MOL200 option. It does not take much time, and when it gives no output, WHAT IF thinks that its soup is still OK. But if it gives ANY output, you are probably in trouble. In this case your best bet is to use the MAKMOL command (see the SOUP menu), terminate WHAT IF (with FULLST), check the PDB file that you made with MAKMOL, correct this PDB file as necessary, and restart WHAT IF.

Menus

Introduction to menus

The WHAT IF commands can be divided into several categories. The general commands are the ones that are always active: most of them are described in the introduction (chapters 1-3). The so-called hidden commands, which are undocumented, but nonetheless sometimes useful, and are described throughout this writeup, as needed.

Many commands, however, are more logically grouped in menus. The following is a list of some of the titles of chapters in this writeup that deal with one of the more frequently used menus.

Surface area calculations (ACCESS)
Water operations (WATER)
Quality control (QUALTY)
Hydrogen bonds (HBONDS)
Contact analysis (ANACON)
Building proteins (BUILD)
Superimposing structures (SUPPOS)
Van der Waals menu (SETVDW)
NMR specific options (NMR)
X-ray specific options (XRAY)
Families and clusters (CLUFAM)
Data spreadsheet (TABLES)
Torsion-angle evaluation and manipulation (CHIANG)
Structure verification (CHECK)
Hssp-related commands (HSSP)
Secondary structure (DSSP)
Working with maps (MAP)
Symmetry operations (SYMTRY)
Amino acid structure regularisation (REFINE)
The electrostatics menu (ELECTR)
The structure fragment database (DGLOOP)
Relational protein structure database (SCAN3D)
Atomic parameter correlation rows (SEARCH)
Sequence manipulation (WALIGN)
Using the graphics (GRAFIC)
Graphics objects and items (ITMADM)
2-dimensional graphics (GRATWO)
Graphics enhancement options (GRAEXT)
Colouring atoms, residues, molecules, etc. (COLOUR)
Plotting (PLOTIT)
Labelling atoms (LABEL)
Working with GROMACS (GROMAC)
To go to a menu you have to type its name. Such names are general commands, and therefore you can always go from any menu to any other. Whenever you are in a certain menu, you can use the END command to leave that menu.

The first couple of exercises in the tutorial will familiarise you with travelling between the menus.

Pull-down menus

The menu bar at the top of the screen holds the names of WHAT IF menus. Pick one of them and a pull-down menu with most of the commands that you expect in this menu will appear. Pick an option in this pull-down menu, and a window will pop up. In this window you are already in the option that you picked. You do not have to navigate through the WHAT IF menu maze first. The last line you see in this pop-up terminal window is often: Hit RETURN to continue. If you do hit return, the window disappears.

If you pick HELP in the right-most menu (right-most column, which is always there) the HELP option will be activated. If the HELP option is activated after you picked the the pull-down menu box (which is green now), you will get SHORT help on all the commands in this menu. But if the HELP option is activated before you pick a box in the pull-down menu, the terminal window will pop up, and extensive help about this option will be displayed.

The HELP option stays active until you pick HELP again.

Manipulating the pull-down menus

There are many more pull-down menus than can be made visible at the same time. At the time of writing (1 Mar 1994) there are some 50 pull-down menus. The arrow buttons -> and <- left and right of the pull-down menus can be used to scan through the pull-down menus in the indicated directions.

The menu for general options (GENMEN)

The GENMEN menu is redundant. All options available in this menu are always active, whichever menu you are in. But by going to the GENMEN menu, you can get a summary of the options available, and you can get HELP, INFO, etc.

WHAT IF output

WHAT IF creates pictures in the graphics window, and puts text output in the text window. All text sent to the text window can be written to a log file. All pictures can be written to plot files in a wide variety of formats. See the chapter on `WHAT IF output' for more details.

Opening the log file (DOLOG)

The command DOLOG opens the log file. All text written to the text window after DOLOG will also be written to a log file.

See the chapter on `WHAT IF output' for more details.

Closing the log file (NOLOG)

After the command NOLOG, WHAT IF will stop writing text to the log file.

See the chapter on `WHAT IF output' for more details.

Access to the operating system

You can send commands to the operating system by preceding them with a dollar. For example:
$ls /home/user/xdir
will (on a UNIX box) list the contents of the directory /home/user/xdir.

A small set of UNIX and UNIX-like commands have been hard-coded for WHAT IF under UNIX. These are:

WHAT IF         UNIX
LS              ls
DIR             ls
CAT             more
TYPE            more
RM              rm
DEL             rm
PWD             pwd
Any text added after the WHAT IF command will be passed on to the UNIX machine. That means that these options do NOT allow for type-ahead. E.g.:
LS LISTA 3
will result in the UNIX error message:
$ls lista
ls: lista: No such file or directory

The jokes

WHAT IF normally ends with a remarkable quote or a silly joke. If you are old and stuffy, or bored with all those jokes, you can put the command NOJOKE in your startup file. That eliminates the jokes.

The jokes will be refreshed/extended automagically every so many months...

Update

This chapter was last updated on 10-Jul-2006