Copyright (C) 1991, 1992, 1993 by Chris Thewalt
(thewalt@ce.berkeley.edu)
Permission to use, copy, modify, and distribute this software for
any purpose and without fee is hereby granted, provided that the
above copyright notices appear in all copies and that both the
copyright notice and this permission notice appear in supporting
documentation. This software is provided "as is" without express
or implied warranty.
Further acknowledgement (in completely random order) is needed of:
W.Kabsch and C.Sander for writing the DSSP program, and letting me interface to it. DSSP normally does the secondary structure evaluations for WHAT IF. DSSP is the de facto-facto world-wide standard for this work.
H. Berendsen and W. van Gunsteren for writing the molecular dynamics and energy minimization program GROMOS. Although several other MD/EM programs are more user friendly, GROMOS is according to me the best and most flexible one once you know how to work with it. WHAT IF and I learned how to do that, and we are both not sorry for investing this time. It was mainly Daan van Aalten, with help from Bert de Groot, Rob Hooft and Pieter Stouten who managed to make WHAT IF understand how to make GROMOS do what we want it to. Daan van Aalten en Bert de Groot wrote the ESSDYN (essential dynamics) menu, and all the other molecular dynamics trajectory analysis tools.
M. Carson and C. Bugg for writing RIBBONS, the nicest pretty plot graphics program that I know, and for letting me interface WHAT IF to it.
D. Thomas wrote the fancy SPLINE option, the one that draws arrows for strands, allows for flexible manipulation, and good fits to the secondary structure. Every WHAT IF user will one day come to the conclusion that splines are the nicest way of looking at secondary structure characteristics.
R. Schneider and C. Sander wrote HSSP. They allowed me to interface to their files, so WHAT IF now has a reliable mutant predictor, based on sequence homologies, available to it.
P. Goodford allowed me to interface to his program GRID. This provides the possibility to see potentials around molecules. This is a very important tool for those people who are designing drugs.
B. Dijkstra and several others from the X-ray group in Groningen have contributed programs and subroutines to WHAT IF. These have mainly to do with the MDF-handling and regularization of proteins. The individual contributors to this code are listed in the code itself. Several other X-ray specific modules would not have gotten their present form without help from the crystallographers in Groningen. B. Dijkstra, R. Read, and W. Hol are especially acknowledged for helpful discussions.
J. Hauptbruck and T. Metzler from Evans and Sutherland in Munich actively contributed to the PS300 specific part of WHAT IF. Interactive torsion angle manipulation, CPK models and stereo in WHAT IF on PS300 and E and S workstations are mainly their work. Actually they wrote almost half of the function network stuff. The function networks that they wrote for WHAT IF were better/faster than most commercial packages on the E and S machines. Even though WHAT IF is no longer distributed on E & S machines (they don't sell them any longer, and the latest versions of WHAT IF no longer support their machines), their thinking has helped shape the graphics philosophy of WHAT IF.
Daniel Banek is the brains behind all SGI graphics. Without him stereo, anti-aliasing, depth-queueing, atom picking would not be in WHAT IF on Silicon Graphics machines, and on top of that, he improved my code so that it now rotates molecules 10 times faster than it did before. He has also helped me adapt the program to every new release of the operating system (with slightly changed GL semantics).
Michael Scharf wrote an X-windows driver for WHAT IF (SUN and Bruker machine). He did a splendid job. He used an object oriented paradigm without using an object oriented programming language: in fact his code compiled using a Kernigan and Ritchie C compiler. Rob Hooft later fixed a few bugs, converted it to ANSI C, and added depth cueing and perspective views. Those changes got WHAT IF going on several other platforms.
D.Huckriede wrote the R2D2 part of WHAT IF while he was working for me as a student in Groningen in 1988. Today these options are no longer in WHAT IF.
The water position prediction module of WHAT IF is written by F.Knol when he was working for me as a student in Groningen late 1987 and 1988.
R.Read donated some subroutines to test symmetry matrices, and his program MUTATE. This code has been adapted for usage in WHAT IF. Especially MUTATE is of crucial importance for WHAT IF.
Matthias Rose stimulated the creation of the SCNCON and SCNGRN options in the SCAN3D menu. Without his criticism, these options would today still not work properly.
B.v.Eyck and P.Stouten donated the program PROMTI. Without this program it is not possible to quickly add small molecules to GROMOS topology files.
A.Jones donated some communication subroutines, and some of the very VAX specific routines. He claims that he took those routines just from the manuals, but I am sure that it would have taken me weeks to do just that. Also, the ideas behind all DG*** options come from Alwyn and Soren Thirup.
Rob Hooft wrote all symmetry related options in WHAT IF. On top of that, he ported WHAT IF to DEC-alpha workstations, and to IBM-Pc's running under the LINUX operating system. Additionally, Rob removed more bugs from WHAT IF than I put in in the first place. Much of the smart PDB file verification stuff comes from him. He also added LaTeX to WHAT IF's repertoire, which helped in many directions. He also created the automatic installation procedure. Rob cleaned up the internal SOUP administration, made most options about twice as fast, and tought WHAT IF what protons are. He also started revision control making it possible to reconstruct old versions and review code changes. And he constructed a test suite to make the developers version of WHAT IF much more stable.
Actually, since in the last years Rob has been doing more programming for WHAT IF than I, he should be thanking me for helping him.... `'-)
A. Moussavi cleaned up the regularization option and the PDB file input modules. He also started the incorporation of protons in WHAT IF.
V. Sobolev wrote the LIGIN drug docking program that is callable from the WHAT IF menu for DRUG manipulations.
G. Tuparev has at several stages contributed to porting WHAT IF (SGI and NEXTSTEP). He also adapted RIBBONS for usage with WHAT IF.
R. Abagyan contributed the code that is used to fit straight lines through points in space; his algorithm is the basis for some of the fancy graphics (like cylinders through helixes) and for the motifs searching database options.
Milo Scheeren ported WHAT IF to DOS based PCs. I can ensure you that this was an heroic job. Small PCs in 1994 were not designed to run 300000 line FORTRAN programs with 35MB memory requirements. Compilers crashed. Library bugs were exposed. Etc. His suggestions also helped improve other parts of WHAT IF. Emma Scheeren Groot helped in many different ways with the DOS conversion.
Chris Sander deserves a special place in this list. He managed to suggest five years work in every year that we worked together. It is thanks to all his good ideas that I am now twelve years behind schedule with implementing new or improved features.
Many other people have made contributions to WHAT IF. Some of them were users who found bugs, or had good ideas. With other people, mainly colleagues, I had (sometimes long and enthusiastic) discussions about ideas and (im)possibilities.
Many ideas that are implemented in WHAT IF are not from me. As always in science 90 percent is old stuff, and 10 percent is added by me. I have tried to indicate in the text who the major people were from which I got the initial ideas for certain algorithms. The list below covers probably most of them....
Dirk Huckriede stood at the basis of the teaching module.
Jolanta Stouten and Brigitte Alteneberg were the driving forces behind the tutorial.
Over the years people have been testing WHAT IF for me. They were:
Jolanta Stouten, Duncan Cochran, Stephan Schnabel, Serguei Melnichuk and Brigitte Alteneberg.
Other people who contributed code, ideas, criticism, support etc. are: Anna Tramontano, Georg Tuparev, Pieter Stouten, Analisa Pastore, Stephan Schabel, Alfonso Valencia, Christos Ouzounis, Uwe Hobohm, Reinhard Schneider, Michael Nilges, Laerte Oliveira, Mike Singer, Wilma Kuipers, Sergei Melnichouk, Ingrid Warny, Glay Chinea, Enzo de Filippis, Jolanta Stouten, Roy Omond, Peter Rice, Vincent Eijsink, You?...
Most likely I forgot to thank or mention you, but please forgive me, and know that I did not do that deliberately. After all, to me, YOU are the most important person in the whole (WHAT IF) world.