Installation notes

Introduction.

The installation of WHAT IF is simple and can be performed without system privileges. To do so, try to understand how WHAT IF works (Explained somewhere in this chapter), do as you are told, but, most importantly, do not start to think for yourself. There is an installation script that does the installation for you. If you do as it requests, you get WHAT IF installed in just one till a few hours, completely hassle free.

The WHAT IF account on your machine

There is no need to install WHAT IF in a system area. There is not even a need to create a special WHAT IF account. However, it is strongly advised to create a WHAT IF account; if only it was so that we can log in on your system as user WHAT IF in case you end up with problems that you can not solve yourself.

Required resources

Make sure that the WHAT IF user has 300 Mbyte of free space available before starting the installation. 150 Mbyte will be returned after the installation. The experienced user can release another 20 Mbytes or so once the program is running smoothly.

In case you want to use WHAT IF without databases, make sure 60 Mbytes of disk space are available. 30 Mbytes will in this case be returned after the installation, and the experienced user can remove another 5 Mbytes or so.

WHAT IF requires on all machines 45 Mbytes of memory. That means that the sum of the mega bytes RAM accessible to you plus the part of the swap file accessible to you must at least be 40 Mbytes.

For example, on a PC with 8 Mbytes of memory you should install a swap file of at least 37 Mbytes (a bit more will not hurt of course). On a big SG workstation with 128 Mbytes memory you don't even need a swap file if you want to run WHAT IF three times in parallel.

Reading the tape

WHAT IF can be delivered on QIC150 or DAT tapes. Please state on which of these tape types you want to receive the program when you order WHAT IF.

The tape is written with the tar command. Just use tar to read it. The command:

tar -xv

tar -xvf /dev/mt/tps0d* (* is SCSI address of tape)

should do it. Ask a local computer user with 'tape-experience' or the local system people if you have trouble reading the tape. There is no need asking us about this, because we normally can not help with tape reading problems.

If your machine tells you that the tape is bad, try byte-swapping it (use 'man dd' and look for 'conv=swab'). Try for example something like:

dd if=/dev/tape bs=10k conv=swab | tar xvf -

How to install WHAT IF via FTP:

On anonymous FTP on swift.EMBL-Heidelberg.DE you will find a whatif directory. In this directory you find the file 'DO_INSTALL.SH'. With this rather elaborate script you can install or update WHAT IF on your machine. Be aware that it is forbidden to use this script before you have signed the WHAT IF contract and sent it to me.
0) If this is the first time you use WHAT IF, go to point 2.

1) Make a GOOD backup of your present version. If your version has a
   file .../dbdata/MUTDB.IND, please remove EVERYTHING that is in the
   old version, because a number of files were moved since! Anyway,
   starting from an empty directory has other advantages, so you
   might want to consider throwing everything old away in any case.

2) Login as "whatif" (if needed create the account). Get the script
   "DO_INSTALL.SH" and put it in the "whatif" home directory (that is
   the directory where the file "DO_WHATIF.COM" and "whatif" are
   located [or otherwise will be after the installation]).

3) Check the disk space available. A full installation of WHAT IF
   including the standard databases will take about 150MB of disk
   space. During the installation you will need about 300MB of disk
   space. If you do not have this space, you MUST install WITHOUT the
   database: in that case 100MB is more than enough. You will be asked
   for this during point (4). See the manual about what you will be
   missing.....

4) Execute the script "DO_INSTALL.SH" by typing "sh DO_INSTALL.SH"
   from the "whatif" home directory. You will be prompted for a
   password.  This password you can only get from me. It is forbidden
   to make this password available to others. This password stays
   valid for 7 days after you got it.

5) You will now get messages that files named *.cpio* got ftp-ed. If
   this takes more than 5 minutes per file, you better try again in
   the weekend, or at a time outside your and our (central european)
   working hours.

6) Sometimes the automatic FTP really does not work on a machine (It
   hangs for hours after getting a number of files). If this is the
   case, you need to FTP the files manually.  For this, type
   "ftp swift.embl-heidelberg.de", if it prompts you for a username, use
   "ftp", and if it asks you for a password, type your E-mail
   address. type "binary", and "prompt" and "cd private/<password>"
   where you substitute the password for <password>. Now get the
   necessary packages using "mget": you will always need "general*",
   "source*" and "doc*", if you want the database as well, you need
   "ascdata*" and "predata*" too. With these files in the current
   directory, restart the "DO_INSTALL.SH" script and answer the
   questions.

7) After some time (2 minutes - 6 hours, depending on your hardware,
   and on how much of the database must be installed) you will have
   WHAT IF ready to go. Log off, log in as another user and type:
   .../whatif/DO_WHATIF.COM where .../whatif/ is the complete path to
   the location where WHAT IF got installed.  In case something went
   wrong, you can read the installation notes and redo (parts of) the
   installation by hand.

8) If you need the space, the installation has gone smoothly and you
   have verified that WHAT IF runs correctly, the directory "predata"
   and all files in it can be removed, as well as all files *.f and *.o.

How to install WHAT IF from tape:

To install WHAT IF from tape proceed as follows:
1) Create a user called 'whatif', and log in as 'whatif'. Make
   sure you're working in an "empty" directry before you continue.

2) Put the tape in the tape unit.

3) Read the tape with the tar command.
   You either type:
     tar xv
   or, on SGI systems with more than 1 tape drive:
     tar xvf /dev/mt/tps0d* (where * is 1-7)

   With newer versions of the IRIX operating systems and with other
   computers you may need to "byte-swap" the archive. You can recognize
   this situation by the fact that "tar" will tell you that "this is
   not a tar archive". Please look for help in the manual pages for
   "dd" (the "conv=swab" option), or on a SGI machine use the
   /dev/mt/tps0d*ns device instead.

   If you are prompted for a second tape, just give control-C and neglect
   the request for a second tape. This is a bug in tar on some systems.
   WHAT IF fits on one tape easily, there is NO second tape.


4) Check the disk space available. A full installation of WHAT IF
   including the standard databases will take about 150MB of disk
   space. During the installation you will need about 300MB of free disk
   space. If you do not have this space, you must delete the database
   files that are stored in the files "ascdata*" and "predata*"
   before you proceed with the next point. In that case, however,
   100MB is more than enough. See the manual about what you will be
   missing.....

5) Type:
   sh conf/DO_INSTALL.SH
   This starts a rather elaborate script which will prompt you for the
   information it can not easily obtain otherwise.

6) After some time (2 minutes - 6 hours, depending on your hardware
   and what parts of the database need to be installed) you will have
   WHAT IF ready to go. Log off, log in as another user and type:
   ".../whatif/DO_WHATIF.COM" where .../whatif/ is the complete path to
   the location where WHAT IF got installed.  In case something went
   wrong, you can read the installation notes and redo (parts of) the
   installation by hand.


PS: If at any time you need to restart the installation script,
    answer "No" to the question "do we need to get the new version
    via FTP".

How to install WHAT IF on IBM Pc (clones) running LINUX:

The automatic installation script has now been adapted to work with Linux, so basically the procedure should be the same as for other machines.

To run WHAT IF under Linux you need:

 - About 43MB of memory+swap to be able to actually use the program.
   On an otherwise empty machine, 4MB of real memory is "sufficient"
   to run WHAT IF, 8MB is needed to work with the less memory
   intensive options of WHAT IF, but 16MB is definitely more
   comfortable.

 - Installed versions of numerous normal unix utilities, gnu zip, cpio
   and the libf2c and XFree86 packages. You also need f2c, and the gnu
   C compiler installed, such that you can recompile WHAT IF
   yourself. The f2c version MUST be newer than January 1994. If not,
   please get a newer version (e.g. by anonymous ftp from
   sunsite.unc.edu). The New GNU Fortran program can NOT be used to
   compile WHAT IF yet. We're waiting for new features in version 0.6!

Recompiling takes approximately 75 minutes on a 486/33 with a reasonably fast hard disk. Recreating the database can add significant time (2 hours) at the end...

Follow the instructions above to install WHAT IF on your system

How to newly install WHAT IF on IBM Pc (clones) running DOS:

To install WHAT IF under DOS proceed as follows (See the next chapter if you got an update set) :
1) Put floppy 1 in the drive

2) Give the installation command as indicated on the sticky label
   on the floppy disk.

3) Do what the installation procedure tells you to do. Use defaults
   in all cases where you don't know what to do.

How to update WHAT IF on IBM Pc (clones) running DOS:

If you get an IBM Pc (clone) update set, proceed as follows:
1) Backup your old version.
2) Remove the old version.
3) Create a WHAT IF root directory (e.g. c:\whatif ).
   If at all possible, call it exactly c:\whatif because that saves
   you some editing later.
4) In this WHAT IF root directory, insert the LAST floppy you received into
   your floppy drive (A: or B:) and type "A:PKUNZIP -d A:WHATIF"
   The "pkunzip" program will ask you to change floppies.
5) Go to the RUN directory
6) In the RUN directory you find several files called WHATIF.*** where
   *** is for example: BAT, FIG, or VMC One by one get these files in
   the editor and make sure that the directories in all the files in 
   this directory are in agreement with the location where you stored 
   WHAT IF. The easiest is if you installed WHAT IF in c:\whatif 
   because in that case not a single directory path has to be changed. 
   See the notes on WHATIF.FIG and DO_WHATIF.COM if the required 
   changes seem non-trivial (they realy are trivial).
7) Learn how WHAT IF works. 
8) Now comes the difficult part.
   In WHATIF.BAT you find the command SET WIFMODE=28.
   This number 28 is a magical number that has to be set in 
   agreement with your graphics card. Good numbers to try are around
   16 and around 26. The more you paid for the graphics card, the 
   higher the number you can try, and the better the graphics will
   look. It might be that this process takes more than an hour of
   stupid trial and error, but it is worth it, because optimising this
   number means that you get the best possible graphics. Sorry for
   the extra work this causes. 

Other packages WHAT IF can use.

Some options in the CHECK menu can create scatter diagrams to be included in a check report. This can only function correctly if the following programs are available on your (UNIX) system:
 - SCATTER: a program to create scatter diagrams
 - TRANSFIG: a program to make postscript plots
You might also want to have the following associated program:
 - XFIG: facility for interactive creation of graphics for X-windows
The packages needed to get these (free) programs running on your system can be found in the "/whatif/support" subdirectory of our "swift.embl-heidelberg.de" ftp site. When you install them, make sure that the programs are in your PATH, such that WHAT IF can find them.

How does WHAT IF work

Some understanding about the way WHAT IF operates is required if you want to do complicated things, like e.g. using a GL-based machine as a server for the X11 based WHAT IF version, or serving two different kinds of SG machines (e.g. with and without full screen stereo) from the same installation.

WHAT IF executes from a directory called the WHAT IF home directory. For now we will call this directory DIR. In practice it will often be something like /usr/people/whatif or /progs/whatif or something like that.

In this directory you need the files DO_WHATIF.COM (or whatif.bat and whatif.vmc under PCDOS) and WHATIF.FIG. These files are described below. You need several sub-directories in the DIR directory. The sub-directory DIR/dbdata is obligatory. In this DIR/dbdata directory you will find several files. The only one that a non-experienced WHAT IF manager should ever touch is CCONFI.FIG (although altering this file is not recommended). Other files that one can edit to make WHAT IF behave differently are ICONFI.FIG and RCONFI.FIG. However, editing these files can lead to non-functioning of WHAT IF if done unintelligently.

To execute WHAT IF you have to run DO_WHATIF.COM this is best done via an alias in your .cshrc that looks like

alias whatif DIR/DO_WHATIF.COM

DO_WHATIF.COM will copy DIR/WHATIF.FIG to the local directory where you want to run WHAT IF. This file WHATIF.FIG tells WHAT IF what kind of computer it is running on, what sorts of graphics hardware are available, and where certain files are located.

The file DO_WHATIF.COM

On my machine the file DO_WHATIF.COM looks like:
#!/bin/sh
DIR=/usr2/people/vriend
umask 001
stty intr '^C'
[ -f WHATIF.FIG -a ! $DIR = `pwd` ] && /bin/rm WHATIF.FIG
[ ! $DIR = `pwd` ] || {
   echo Please do not run WHAT IF in the whatif directory 1>&2
   exit 1
}
/bin/cp $DIR/WHATIF.FIG WHATIF.FIG || {
   echo Cannot copy WHATIF.FIG to current directory, sorry. 1>&2
   exit 1
}
$DIR/whatif ${1+$@}
/bin/rm -f TAPEIN.DAT TAPEOUT.DAT
/bin/rm -f AUTPLT.PLT CONNEC.DAT HATOMS.DAT PICK.IDX PLANES.DAT
/bin/rm -f RT37D.DAT TEXSTORE.DAT TEXTABLE.DAT ESP*.ESP
The installation script (DO_INSTALL.SH) knows how to make this file on the following platforms: SG (all types and hardware mixes), HP, IBM RS6000 and similar machines running AIX, IBM PC (and clones) under LINUX, DEC Ultrix stations, DEC alpha running OSF, SUN running SunOS 4.x or Slowlaris.

In summary: `DIR` is the same as DIR earlier in this chapter. The `umask` commands is needed to make my machine understand that WHAT IF is allowed to operate on its own files. The `stty` command allows me to break the program using control-C. The script than checks that you are not doing stupid things like running WHAT IF in its own directory, which could be fatal to the program... The `/bin/cp` command copies WHATIF.FIG to the local directory skipping any aliasses that might have been set on the cp command.

The '$DIR/whatif ${1+$@}` command finally starts the executable (which is called whatif, and sits in the directory DIR). In case of error messages with the magic `${1+$@}` in it, you can take that part of the '$DIR/whatif` line without much problems for WHAT IF.

The last three lines make sure that some of the most useless big files that WHAT IF normally generates are deleted after you stop the program in a friendly manner. If you get out with control-C WHAT IF punishes you by leaving these files in your project directory.

The file WHATIF.FIG

On my machine the file WHATIF.FIG looks like:
logdevnam=PS300A/phydevtyp=ETHERNET    .
0
2
/usr2/people/vriend/dbdata/
YES DATABASE
/usr2/people/vriend/qualty/
IN%VRIEND@EMBL-Heidelberg.DE
IRIS
IRIF  FFTFFFFFFFFFFFTFFFFF
On other machines differences can be needed. The installation script (DO_INSTALL.SH) knows how to make this file on the following platforms: SG (all types and hardware mixes), HP, IBM RS6000 and similar machines running AIX, IBM PC (and clones) under LINUX, DEC Ultrix stations, DEC alpha running OSF, SUN running SunOS 4.x or Slowlaris.

The first three lines are an historical artefact from the days of the Evans and Sutherland PS300 machines.

The fourth line should point at the DIR/dbdata directory (which is the dbdata subdirectory of the directory called DIR).

The fifth line should read `YES DATABASE` or `NO DATABASE` in agreement with you installing WHAT IF with or without database...

The sixth line is the location of the (rather large) quality control boxes. If you are not interested in predicting mutants, modelling by homology and structure verification, you don't need the quality control boxes at all. If you want to use them, then this line should hold the name of their directory, which normally should be DIR/qualty. However, you can put them at any other location, as long as you maintain the sub-directory structure in the `qualty` directory the same as it was upon installation.

The next two lines are historical artefacts.

The last line is important for SG users only. This line holds the FLAGS that determine how WHAT IF looks at its hardware. The following can be done with these flags:

1)  Should normally be FALSE
2)  Should normally be FALSE
3)  Should always be TRUE
4)  Switches on graphical debug output if set to TRUE
5)  Switches WHAT IF into HELP mode if set to TRUE
6)  Activates the personal menu if set to TRUE
7)  Is needed on a few VERY old SG types only.
8)  Experimental. Set to TRUE only if you are under 30 years old
9)  Keep at FALSE
10) If set to TRUE WHAT IF can only run the DEMO option
11) Better keep at FALSE
12) Activates full screen stereo upon startup if TRUE (keep FALSE)
13) Keep at FALSE
14) Use full screen stereo if TRUE. Side by side if FALSE.
15) Can be set to TRUE for most 24 bit-plane SGI machines.
16) Set to TRUE on Indigo 1 with 1024x768 pixel screens.
17) Set to TRUE in case you have 'funny' lines in graphics mode.
18) Keep at FALSE.
19) Set to TRUE if you want cross-eye side-by-side stereo
20) and higher, better keep at FALSE.
Several combinations of FLAGS are not allowed. E.g., 16 can not be combined with 14 or 15. 17 can not be combined with 14 or 15. 16 better is not combined with 8. 7 can not be combined with 16, but works best if combined with 17.

For X11 versions of WHAT IF, all flags are FALSE except for the third one, which MUST be TRUE.

X11/GL double installation on SGI machines.

If you have a version of "MAKE" that understands "VPATH" (If in doubt install the GNU version of make), and you want to make your SGI into a server for both GL and X11 screens, you can use an experimental script in the DIR/conf directory. This script assumes that you have successfully installed a complete GL version of WHAT IF. It will convert the installation to have both GL and X versions. You will be able to choose between the two by running DO_WHATIF.X11 or DO_WHATIF.GL.

After you ran the script, you will need to execute make in a few directories. It will tell you exactly how when it finishes.

I repeat: this is an EXPERIMENTAL script in DIR/conf. Use at your own risk... Backup frequently...

Other configuration files

The files DIR/CCONFI.FIG, DIR/ICONFI.FIG and DIR/RCONFI.FIG can be modified to make WHAT IF do things differently from the default situation. The CCONFI.FIG file sometimes needs modifications. Although you are strongly discouraged to change the other two, see below if you are the daring type.

The CCONFI.FIG file

On my machine the file CCONFI.FIG looks like:
/data/pdb/
%!PS-Adobe-2.0
lpr -Pfiery
/data/hssp/
zip -f
lpr -h -Pps17a
/bin/wsh
SHELL
/usr/bin/xmgr
Mosaic http://www.sander.embl-heidelberg.de/whatif/
The first line is the address of the PDB directory on your machine or cluster. Often this is a CD-player. If you do not have a centralised PDB directory, don't worry or if this line stays empty, WHAT IF will work just as well, but you will always have to type the entire path as part of the filename if a PDB file is not in the local directory.

The second line is the header line that your postscript plotter or laser writer expects in postscript files.

Line three is the local command needed to send a colour postscript file to the laser writer. If you allow your six year old son to play with WHAT IF, it might be cheaper to make this command point to a black and white printer....

Line four is the location of the hssp files on your machine or cluster. Most people will not need/have this. So don't worry if this line stays empty, or holds garbage.

Line five is the command to invoke the editor in a sub-process. The default is `vi`. If you use any other editor, make sure that you add the necessary flags to hold the calling program (i.e. WHAT IF) till the edit session is terminated. So do NOT use a self-backgrounding editor!!!

Line six is the command needed to submit a black and white postscript file to a laser writer or plotter.

Line 7 is the command needed to start a shell on your machine.

Line 8 is the command you want to use to start a shell. I express my deep admiration for the user frienlyness of UNIX by calling this command VMS....

GROMOS users can preview some of the output from the trajectory analysis module using the program `xmgr'. If you have this program installed, then line 9 should be the command needed to run it. Otherwise line 9 should stay empty.

The file ICONFI.FIG

At my machine ICONFI.FIG looks like:
 -1       :  1) Initial atom colours.
1         :  2) Colour of help text in pop up help boxes.
7         :  3) Colour of top/identifier bar.
1         :  4) Colour of top/identifier text.
5         :  5) Colour of toptxt (right top of screen messages).
40        :  6) Shift (in pixels) of default X coords of text window.
10        :  7) Shift (in pixels) of default Y coords of text window.
1         :  8) Colour of bottom of screen button text
1         :  9) ZFUNCT parameter (operating system dependent)
30        : 10) Degrees error in phi and psi allowed in DG* options
0         : 11) Cycles of optimization in modeling by homology
1         : 12) Internal debugging level (0 is production mode)
0         : 13) Reserved
1         : 14) First amino acid in topology file
23        : 15) Last amino acid in topology file
24        : 16) First nucleotide in topology file
27        : 17) Last nucleotide in topology file
1         : 18) Colour of the text in the status box
290       : 19) WHAT IF colour of N-C=O part of peptide plane
310       : 20) WHAT IF colour of H-N-C part of peptide plane
0         : 21) 21-24: X-low, H-high, Y-low, Y-high of the graphics port
1279      : 22) in pixels. Unless you know what you are doing, you should
0         : 23) keep these four values at 0 (zero). On the IBM-PC they need
1023      : 24) to be set. See the installation notes. (org. 0,1279,0,1023)
0         : 25) 25-28: As 21-24, but now for the inner window, the one
1105      : 26) in which the coordinates are written. If no menu updates
65        : 27) are needed, then redrawing the inner window alone is enough,
1000      : 28) unless there is an active pull-down menu.
0         : 29) if not zero use the attached groups
13        : 30) Maximal length of groups to be used in DGLOOP options
230       : 31) A    The configuration values 31-50 are reserved
180       : 32) C    for the COLSPC colours of the first 20
120       : 33) D    residues in the TOPOLOGY file.
120       : 34) E
240       : 35) F
230       : 36) G
30        : 37) H
240       : 38) I
30        : 39) K
250       : 40) L
180       : 41) M
70        : 42) N
230       : 43) P
70        : 44) Q
30        : 45) R
300       : 46) S
300       : 47) T
240       : 48) V
240       : 49) W
300       : 50) Y
1         : 51) colour index of pick labels (15=white)
          : 52)
The only two parameters that are critical are 12 and 29. Parameter 12 should be 0, unless you are looking for a bug somewhere in which case putting it at 1 will tell WHAT IF to debug itself (by crashing instead of recovering). Parameter 29 should normally be 0, but if you want to run WHAT IF with "attached groups", this flag should be 1.

The RCONFI.FIG file

At my machine ICONFI.FIG looks like:
0.5       :  1 Weight on backbone fit in homology building
1.0       :  2 Weight on rotamer density in homology building
1.0       :  3 Weight on quality control in homology building
4.0       :  4 Weight on bumps in homology building
0.2       :  5 Weight on phi-psi misfit in homology modeling
4.3       :  6 H-bond MC cutoff
          :  7 Reserved
          :  8 Reserved
20.0      :  9 Initial slab value
          : 10 Reserved
          : 11 Reserved
2.0       : 12 Weight on hydrogen bonds in homology building
As you really should not use these, I will not explain what they do.

Directory structure

The following is the directory structure on my machine. If you get associated programs that you want to install long after WHAT IF was installed, you can see from this list where to store the files and how to call them. WHAT IF assumes that executables have capital-only file names, ending in `.EXE`. This list was made somewhere late 1994, and is not going to be exactly the same as in your WHAT IF account.
DIR (this is /usr/people/vriend in my case)
3ssp.f          gradb.o         rjread.o
3ssp.o          graext.f        robmenu.f
ANATRA.INC      graext.o        robmenu.o
BIGINC.INC      grafic.f        scan3d.f
BOX.INC         grafic.o        scan3d.o
CHESS.INC       gratls.f        scan3e.f
CLUFAM.INC      gratls.o        scan3e.o
CMPINC.INC      gratwo.f        scan3s.f
CNTINC.INC      gratwo.o        scan3s.o
COMINC.INC      grids.f         scnsdb.f
CONFAC.INC      grids.o         scnsdb.o
DATBAS.INC      group.f         search.f
DGLOOP.INC      group.o         search.o
DGMUT.INC       hbond2.f        secstr.f
DO_WHATIF.COM   hbond2.o        secstr.o
EAAINC.INC      hbonds.f        select.f
ELMDAT.INC      hbonds.o        select.o
ELMINC.INC      hssp.f          server.f
EPSINC.INC      hssp.o          server.o
EQUFLD.INC      hydro.f         setvdw.f
ESPACE.INC      hydro.o         setvdw.o
ETMINC.INC      i.i             spcchk.sh
FDEVIC.INC      ini.f           spcial.f
FGLINC.INC      ini.o           spcial.o
FRACTI.INC      iridem.f        spcian.f
HB2INC.INC      iridem.o        spcian.o
HBONDS.INC      iridial.f       spctls.f
HGRINC.INC      iridial.o       spctls.o
HSPINC.INC      irigra.f        strand.f
HSTINC.INC      irigra.o        strand.o
INDCES.INC      iriini.f        support.c
IRIGRA.INC      iriini.o        support.o
JUNIOR.INC      irinew.f        suppos.f
LABELS.INC      irinew.o        suppos.o
MAPINC.INC      iriobj.f        supps2.f
MCXINC.INC      iriobj.o        supps2.o
MDFINC.INC      iripick.f       sym.f
MOLITM.INC      iripick.o       sym.o
MR              irisup.f        symcon.f
MR.c            irisup.o        symcon.o
MUTDAT.INC      items.f         symrea.f
Makefile        items.o         symrea.o
NEURON.INC      junior.f        symrep.f
NQAINC.INC      junior.o        symrep.o
OLDTXT.INC      label.f         symtls.f
OPTION.INC      label.o         symtls.o
PDBINC.INC      makdb.f         system.o
PIRINC.INC      makdb.o         tables.f
QUALTY.INC      map.f           tables.o
REFINC.INC      map.o           teach.f
RESULT.INC      mapcon.f        teach.o
SEARCH.INC      mapcon.o        tlsarr.f
SELECT.INC      mapfls.f        tlsarr.o
SPCIAL.INC      mapfls.o        tlsbyt.f
STKVLD.INC      mapp.f          tlsbyt.o
SUPPOS.INC      mapp.o          tlsfil.f
SYMANA.INC      masmap.f        tlsfil.o
SYMDAT.INC      masmap.o        tlsio.f
SYMINC.INC      mcxalg.f        tlsio.o
TABLES.INC      mcxalg.o        tlslog.f
VECTOR.INC      mdf.f           tlslog.o
WALIGN.INC      mdf.o           tlsmio.f
WHATIF.FIG      menus.f         tlsmio.o
aamain.f        menus.o         tlsmvc.f
aamain.o        mol.f           tlsmvc.o
access.f        mol.o           tlsn77.f
access.o        mol1.f          tlsn77.o
anatra.f        mol1.o          tlsort.f
anatra.o        mol2.f          tlsort.o
build.f         mol2.o          tlssts.f
build.o         mol3.f          tlssts.o
cdbfil.f        mol3.o          tlssup.f
cdbfil.o        mol4.f          tlssup.o
cell.f          mol4.o          tlstxt.f
cell.o          mol5.f          tlstxt.o
chess.f         mol5.o          tools.f
chess.o         mol6.f          tools.o
chesstls.f      mol6.o          tragra.f
chesstls.o      neibrs.f        tragra.o
chiang.f        neibrs.o        usegro.f
chiang.o        neural.f        usegro.o
chr.f           neural.o        vaxmap.f
chr.o           neutls.f        vaxmap.o
clufam.f        neutls.o        walcor.f
clufam.o        newqua.f        walcor.o
colour.f        newqua.o        walgra.f
colour.o        nmr.f           walgra.o
contac.f        nmr.o           walhid.f
contac.o        notes.f         walhid.o
david.txt       notes.o         walign.f
debump.f        oldqua.f        walign.o
debump.o        oldqua.o        walprf.f
depends         ostools.f       walprf.o
dgloop.f        ostools.o       walsdb.f
dgloop.o        params.f        walsdb.o
dgmut.f         params.o        walseq.f
dgmut.o         pcdummy.f       walseq.o
diana.f         pdbcheck.f      walsrt.f
diana.o         pdbcheck.o      walsrt.o
difout.f        pdbout.f        waltls.f
difout.o        pdbout.o        waltls.o
doself.f        pirpsq.f        water.f
doself.o        pirpsq.o        water.o
drug.f          plotit.f        whatif
drug.o          plotit.o        wifgen.f
eaa.f           porno.f         wifgen.o
eaa.o           porno.o         wifsp2.f
elemnt.f        process.o       wifsp2.o
elemnt.o        prompt.f        wifsp3.f
espace.f        prompt.o        wifsp3.o
espace.o        pstnew.f        wifsup.f
essdyn.f        pstnew.o        wifsup.o
essdyn.o        pstplt.f        wiftxt.f
extra.f         pstplt.o        wiftxt.o
extra.o         quaprp.f        wregro.f
f77_cpp         readonly.f      wregro.o
f77_f2c         readonly.o      x.x
f77_oldf2c      refine.f        xray.f
files.val       refine.o        xray.o
flex_control.o  result.val      y.y
gradb.f         rjread.f

DIR/ascdata:
ALLACC.ACC  ALLHYD.HYD  CHI001.CHI  CHI005.CHI  NQAPTR.TXT
ALLCYS.CYS  ALLOME.GAS  CHI002.CHI  HBONDS.HBO  NQASTR.DAT
ALLDSP.DSP  ALLPHI.PHI  CHI003.CHI  MUTDB.IND   TOTALS.SEQ
ALLHST.HST  ALLPSI.PSI  CHI004.CHI  NQANOR.DAT

DIR/bindata:
ALCONT.ACT  ALDRUG.XYZ  ALLNUM.NAM  NQABOX.DAT
ALCONT.WHT  ALHASH.CON  CACA.NEW    PROFIL.SEQ
ALCOOR.XYZ  ALLNEA.DIS  CONSER.HSP

DIR/ccode:
Check.h      DevEmul.c    GraphFunc.c  Port.h
CmdStore.c   DevEmul.h    GraphFunc.h  Win2d.c
CmdStore.h   DevError.c   Graphics.c   Win2d.h
DFunc.h      DevError.h   Graphics.h   X11Graph.c
Dev2d.c      DevMatrix.c  Makefile     X11Graph.h
Dev2d.h      DevMatrix.h  Matrix.c     emul.h
Dev3d.c      DevNoop.c    Matrix.h     sys.h
Dev3d.h      DevNoop.h    Matrix1.c    xdummy.c
Dev3df.c     DevObject.c  Matrix1.h    xemul.c
Dev3df.h     DevObject.h  MiscEmul.c   xemul.h
DevAscii.c   DevPort.c    MiscEmul.h   xport.c
DevAscii.h   DevPort.h    Param.c      xport.h
DevColl.c    Device.c     Param.h
DevColl.h    Device.h     Port.c

DIR/conf:
ChangeLog          STAGE2.SH          maketape
DOUBLE.SH          STAGE3.SH          maketapemips2
DO_INSTALL.SH      distrib            mkfilelist
DO_INSTALL.ULTRIX  kwik

DIR/connolly: (only if you buy this)
PQMS.EXE      pqmsh.c.Z     srfb.c.Z      trba.c.Z
TRB.EXE       pqmsi.c.Z     srfc.c.Z      trbb.c.Z
convert       pqmsm.c.Z     srff.c.Z      trbf.c.Z
convert.f     pqmsn.c.Z     srfh.c.Z      trbh.c.Z
makefile      pqmso.c.Z     srfi.c.Z      trbi.c.Z
makefilesave  pqmsr.c.Z     srfl.c.Z      trbm.c.Z
msp.h.Z       pqmss.c.Z     srfm.c.Z      trbn.c.Z
mspmath.c.Z   pqmsu.c.Z     srfn.c.Z      trbo.c.Z
mspmem.c.Z    pqmsv.c.Z     srfo.c.Z      trbp.c.Z
pqms          res_acc       srfr.c.Z      trbs.c.Z
pqms.h.Z      res_acc.f     srft.c.Z      trbu.c.Z
pqmsa.c.Z     srf           srfu.c.Z      trbv.c.Z
pqmsc.c.Z     srf.h.Z       trb           trby.c.Z
pqmsg.c.Z     srfa.c.Z      trb.h.Z

DIR/dbdata:
ARBPOS.POS     EVACHI.CHI     PICKITEM.HLP   TRAILER.TEX
BLOSUM.MAT     FILE.PDB       QUALITY.LUP    TRAILER.TXT
BONDS.13       HBOFIELD.DAT   RCONFI.FIG     TRAIN.NEU
CCONFI.FIG     HEADER.TEX     REFINE.DAT     VALUE.CHI
CHARGES.PRT    HEADER.TXT     SCRIPT.BLD     XBFACT.DAT
CHEBY.DAT      ICONFI.FIG     SEQCOL.FIL     chappg.sty
COMMANDS.NEW   MESSAGES.TXT   SGRDAT.DAT     epsfig.sty
COMMANDS.PCT   MOUSE.FIG      SPCSYM.DAT     glossary.txt
DAYHOF.MAT     MOUSE_DEF.FIG  TEST.NEU       new.seq
DNA.BRK        MOUSE_TWO.FIG  TODO.CHK       old.seq
DOCHEAD.TEX    MY_MENU.DAT    TOPOLOGY.FIL   supertab.sty
DUMMY.HED      NQUAL.DAT      TOPOLOGY.H
ENGHU1.DAT     PARAMS.FIG     TOPOLOGY.NEW
EVAACC.ACC     PDBFIND.TXT    TOPOLOGY.ROB

DIR/demo:
FILE.PDB   RHINO.PDB

DIR/dgeom: (only if you buy this)
CONECT.CARDS  dgeom         example.cnt

DIR/dssp: (only if you buy this)
DSP.X       README      dssp.c      dssp.p2c    p2c.h
DSSP.EXE    dssp        dssp.ins    dssp.shar   p2clib.c
DSSP.OK     dssp..c     dssp.man    dssp.undec  p2crc
Makefile    dssp.astra  dssp.p      p2c.awk

DIR/flexx: (only if you buy this)
CONFIG.DAT   flexx        static_data
bin          moletopi     whatif
bsp          sca          zerlege

DIR/getline:
Makefile   getline.h  wifconn.c
getline.c  getline.o  wifconn.o

DIR/grid: (only if you buy this)
GRID.EXE       GRIN.EXE       PROBES.PRO     quick.start.Z
GRID.PAS       GRUB.DAT       begin.here.Z   user.txt.Z

DIR/helpfil:
3SSP.INF     DUMMY.INF    LABEL.INF    SEARCH.INF
ACCESS.INF   ESSDYN.INF   MAP.INF      SELECT.INF
ANATRA.INF   EXTRA.INF    MAPEDT.INF   SEQ3D.INF
BUILD.INF    FAMCLU.INF   MASMAP.INF   SETVDW.INF
CHECK.INF    GENERAL.INF  NEURAL.INF   SOUP.INF
CHIANG.INF   GRAEXT.INF   NMR.INF      SUPPOS.INF
CHKMDF.INF   GRAFIC.INF   NOTES.INF    SYMTRY.INF
COLOUR.INF   GRATWO.INF   PIRPSQ.INF   TABLES.INF
CONOLY.INF   GRID.INF     PLOTIT.INF   TEACH.INF
CONTAC.INF   GROMOS.INF   PORNO.INF    WALIGN.INF
DGLOOP.INF   HBONDS.INF   QUALTY.INF   WATER.INF
DOSELF.INF   HSSP.INF     REFINE.INF   XRAY.INF
DRUG.INF     ITEMS.INF    SCAN3D.INF

DIR/pluton: (only if you buy this)
bdftops  gs       gsdj     gslp     pluton
font2c   gsbj     gslj     gsnd

DIR/poth2o:
FKALAVS.DAT  FKGLNVS.DAT  FKLEUVS.DAT  FKSERVS.DAT
FKARGVS.DAT  FKGLUVS.DAT  FKLYSVS.DAT  FKTHRVS.DAT
FKASNVS.DAT  FKGLYVS.DAT  FKMETVS.DAT  FKTRPVS.DAT
FKASPVS.DAT  FKHISVS.DAT  FKPHEVS.DAT  FKTYRVS.DAT
FKCYSVS.DAT  FKILEVS.DAT  FKPROVS.DAT  FKVALVS.DAT

DIR/predata:
ALCOOR.FMT.Z  NQABOX.FMT    WHATIF.FIG
ALLNUM.FMT.Z  PROFIL.FMT.Z  helix
CONSER.FMT.Z  STARTUP.FIL   rest

DIR/qualty:
helix  rest

DIR/ribbons: (only if you buy this)
analysis  data      fithx     misc      ps        src
bin       doc       install   ms        showcase  utils

DIR/sobolev: (only if you buy this)
LIGIN.EXE

DIR/tcl:
Makefile     tclwhatif.c  tclwhatif.o

DIR/teach:
1ABE.BRK.Z       SHOSPC.SCR.Z     TEACH.AA0306.Z
1AT1.BRK.Z       SUPPOS1.BRK.Z    TEACH.AA0307.Z
1CDL.BRK.Z       SUPPOS2.BRK.Z    TEACH.AA0308.Z
1ENT.BRK.Z       SUPPOS3.BRK.Z    TEACH.AA0309.Z
1ERA.BRK.Z       SUPPOS4.BRK.Z    TEACH.AA0310.Z
1INV.BRK.Z       SUPPOS5.BRK.Z    TEACH.AA0401.Z
1PNC.BRK.Z       SUPPOS6.BRK.Z    TEACH.AA0402.Z
1PPK.BRK.Z       SUPPOS7.BRK.Z    TEACH.BB0000.Z
2APR.BRK.Z       TEACH.AA0001.Z   TEACH.BB0101.Z
2MHR.BRK.Z       TEACH.AA0002.Z   TEACH.BB0102.Z
2RSP.BRK.Z       TEACH.AA0003.Z   TEACH.BB0103.Z
4FXN.BRK.Z       TEACH.AA0004.Z   TEACH.BB0104.Z
9HVP.BRK.Z       TEACH.AA0005.Z   TEACH.BB0105.Z
ALPHA.BRK.Z      TEACH.AA0006.Z   TEACH.BB0106.Z
BETA1.BRK.Z      TEACH.AA0007.Z   TEACH.BB0107.Z
BETA2.BRK.Z      TEACH.AA0008.Z   TEACH.BB0108.Z
BRD.BRK.Z        TEACH.AA0009.Z   TEACH.BB0200.Z
COLATM.SCR.Z     TEACH.AA0010.Z   TEACH.BB0201.Z
COLHST.SCR.Z     TEACH.AA0101.Z   TEACH.BB0202.Z
CORRECT.SCR.Z    TEACH.AA0102.Z   TEACH.BB0203.Z
GRAACC.SCR.Z     TEACH.AA0201.Z   TEACH.BB0204.Z
HIVP.BRK.Z       TEACH.AA0202.Z   TEACH.BB0205.Z
HIVPA.BRK.Z      TEACH.AA0203.Z   TEACH.BB0206.Z
HIVPA.SEQ        TEACH.AA0204.Z   TEACH.BB0207.Z
HIVPB.BRK.Z      TEACH.AA0205.Z   TEACH.BB0301.Z
HIVPB.SEQ        TEACH.AA0206.Z   TEACH.BB0302.Z
HLA.BRK.Z        TEACH.AA0207.Z   TEACH.BB0303.Z
HYPOTHASE.BRK.Z  TEACH.AA0301.Z   TIM.BRK.Z
INDEX.Z          TEACH.AA0302.Z   TIMA.BRK.Z
SHHB.BRK.Z       TEACH.AA0303.Z   chap88.rno.Z
SHOALL.SCR.Z     TEACH.AA0304.Z   manual.ps.Z
SHOHBO.SCR.Z     TEACH.AA0305.Z   tex.88

DIR/tutorial:
1CRN.PDB         FOR041.DAT       TAPEOUT.DAT
1crn.made        FOR042.DAT       TEACH.1
2CRN.PDB         FOR043.DAT       TEACH.2
3hla.brk         FOR044.DAT       TEACH.3
A.WPL            FOR045.DAT       TEACH.4
B.WPL            FOR046.DAT       TEACH.5
BRD.BRK          FOR047.DAT       TEACH.6
C.WPL            FOR048.DAT       TEACH.7
COLATM           FOR049.DAT       TEST.NEU
COLHST           FOR050.DAT       TRAIN.NEU
D.WPL            GRAACC           W.WPL
E.WPL            HLA.PDB          WHATIF.FIG
F.WPL            HYPOTHASE.BRK    WHATIF.FIG.Z
FOR021.DAT       Q.WPL            WREH2OGRO10.DAT
FOR022.DAT       R.WPL            WREPREGRO10.DAT
FOR023.DAT       SCRIPT.BLD       align.mls
FOR024.DAT       SCRIPT.BUILD     bad.model
FOR025.DAT       SCRIPT.HOM       errors.pdb
FOR026.DAT       SHHB.PDB         new.seq
FOR027.DAT       SHOALL           old.seq
FOR028.DAT       SHOHBO           pdbout.tex
FOR029.DAT       SHOSPC           pdbout.txt
FOR030.DAT       START.WHATIF     wrong.hbo
FOR040.DAT       TAPEIN.DAT       x.x

DIR/usegro: (this part of GROMOS everybody gets)
1HB.SCP             PUT-MD.EXE          davadrug.old
1HB.SCR             PUTBOX.EXE          davadrug.older
1PP.SCP             PUTGCH.EXE          davadrug.x
1PP.SCR             PUTGM2.EXE          eigen1.f
ACC.SCP             PUTGMT.EXE          eigen1.o
ACC.SCR             PUTGWH.EXE          formatdoc.html
ANG.SCP             PUTION.EXE          formatdoc.txt
ANG.SCR             TRAGEO.EXE          formatdoc_ToC.html
DAVADRUG.EXE        TRS.SCP             get-em.f
DAVADRUG.TOP        TRS.SCR             get-md.f
DIH.SCP             WEDEI2.EXE          getbox.f
DIH.SCR             WEDEIG.EXE          getgch.f
DIS.SCP             WEDMAS.DAT          getgmt.f
DIS.SCR             WEDPRJ.EXE          getgwh.f
FLC.SCP             WEDPRTCCF.COM       getion.f
FLC.SCR             WEDPRTCCF.PAR       promti.f
GET-EM.EXE          WEDPRTCFL.COM       put-em.f
GET-MD.EXE          WEDPRTCFL.PAR       put-md.f
GETBOX.EXE          WEDPRTCMP.COM       putbox.f
GETGCH.EXE          WEDPRTCMP.PAR       putgch.f
GETGM2.EXE          WEDPRTPRJ.COM       putgmt.f
GETGMT.EXE          WEDPRTPRJ.PAR       putgwh.f
GETGWH.EXE          WEDPRTRMS.COM       pution.f
GETION.EXE          WEDPRTRMS.PAR       trageo.f
GYR.SCP             WEDPRTVAL.COM       wedei2.f
GYR.SCR             WEDPRTVAL.PAR       wedei2.o
HBO.SCP             WEDTRA.EXE          wedeig.f
HBO.SCR             a.out               wedeig.o
HST.SCP             bsup.f              wedprj.f
HST.SCR             bsup.o              wedprj.o
IFP37C4.DAT         davadrug            wedtra.f
Makefile            davadrug.cop        wedtra.o
PUT-EM.EXE          davadrug.f          x.x

DIR/wregro: (only if you buy this)
IFP26C1.DAT           RT26C.DAT
IFP37C2.DAT           RT37C.DAT
IFP37C4.DAT           RT37CNEW.DAT
IFP37C4NEW2.DAT       RT37D.DAT
IFP37D2.DAT           RT37D.DAT_ORIGINAL
IFP37D4.DAT           RT37DNEW.DAT
IFP37D4.DAT_ORIGINAL  SPC216.DAT
IFP37D4NEW2.DAT       SSS.RESLIB
IFP37D4_NH.DAT        STRESC.DAT
Makefile              atoms.pfw
PROBOXL.EXE           proboxl.f
PROEMAL.EXE           proemal.f
PROEML.EXE            proeml.f
PROGCHL.EXE           progchl.f
PROGMTL.EXE           progmtl.f
PROGWHL.EXE           progwhl.f
PROIONL.EXE           proionl.f
PROMDL.EXE            promdl.f
PROMDL.EXE_1P         prommtl.f
PROMDL.EXE_MP         prormtl.f
PROMMTL.EXE           prosdl.f
PRORMTL.EXE           proseml.f
PROSDL.EXE            prossdl.f

DIR/writeup:
FAQ                chap33.rno         chap91.rno
READ.ME            chap34.rno         chap95.rno
SUBS.LIST          chap35.rno         chap96.rno
TRANSL.FIL         chap36.rno         chap97.rno
WHATIF.FIG         chap37.rno         chap98.rno
chap01.rno         chap40.rno         chap99.rno
chap02.rno         chap41.rno         fort.4
chap03.rno         chap42.rno         html
chap04.rno         chap43.rno         iscomplete.list
chap05.rno         chap44.rno         iscomplete.script
chap06.rno         chap45.rno         leftover.rno
chap07.rno         chap46.rno         list1
chap08.rno         chap51.rno         list2
chap09.rno         chap52.rno         list3
chap10.rno         chap53.rno         manual.aux
chap11.rno         chap54.rno         manual.dvi
chap12.rno         chap55.rno         manual.idx
chap13.rno         chap56.rno         manual.ilg
chap14.rno         chap57.rno         manual.ind
chap15.rno         chap58.rno         manual.log
chap16.rno         chap71.rno         manual.ps
chap17.rno         chap72.rno         manual.tex
chap18.rno         chap73.rno         manual.toc
chap19.rno         chap74.rno         replace.all
chap20.rno         chap75.rno         tex.1_7
chap21.rno         chap78.rno         tex.3
chap22.rno         chap80.rno         tex.35
chap23.rno         chap81.rno         tex.48
chap24.rno         chap82.rno         tex.8
chap25.rno         chap83.rno         tex.98
chap26.rno         chap84.rno         tex.list
chap30.rno         chap85.rno         tex.one
chap31.rno         chap88.rno         trageo.rno
chap32.rno         chap90.rno         whatif.prices

The directories labelled with an * are not redistributed by us.

FILES that can be removed to save disk space

WHAT IF can run with or without database. With database it takes about 150 Mbytes of disk space. Without databases it takes about 20 Mbytes.

If you want to reduce disk space ocupied by WHAT IF, do the following first:

1) Check that WHAT IF works.

2) Make a good backup.

After that, you can throw away ALL *.o, *.f, *.INC, *.c, *.h files in all directories. You can throw away the entire predata directory.

Make sure that there are no files called ALCONT.* in any directory. These are VERY big, used by only two options, and can easily be reconstructed.

Many people do not need the `quality control boxes` very often. These are stored in subdirectories of the DIR/qualty directory. You can compress all these files. (They are used in verification and modelling).

You can remove the tutorial and the teach directories, that wont cripple WHAT IF, but these directories have their advantages, especially if you are a WHAT IF novice.

If that does not help, you can throw away some of the less frequently used database files: ALLNEA.DIS, CONSER.HSP and PROFIL.SEQ.

If that still does not help, you will have to work without databases. Throw away the directories DIR/ascdata, DIR/bindata, DIR/qualty and DIR/predata. You could additionally decide to delete CHEBY.DAT and PDBFIND.TXT from DIR/dbdata. CHEBY.DAT is only used to draw smooth ribbons. The PDBFIND.TXT file is also accessible over the World Wide Web using SRS.

In case of problems not solved by reading this chapter

If you are doing non-standard things, or try to use machines that we can not officially support, many things can go wrong. In those cases you will have to understand how WHAT IF works. Some hints can be gotten from the FAQ that is given below. You can find the organisation of files and programs that I use in the file DIR.LIST that is on the anonymous FTP server, and in one of the next paragraphs.

In case of installation problems, if the FAQ does not help contact:

Hooft@EMBL-Heidelberg.DE

In case of execution problems or bugs, contact:

Vriend@EMBL-Heidelberg.DE

If you tell them that you saw this line in the writeup they respond faster!


   Good luck

   Rob Hooft, Gert Vriend.