Original Proposal of the Data Server for the IUMSC
The following is the proposal which was the basis for the IUMSC Web server. It was transmitted to John N. Huffman at Purdue University in January of 1995.
Suggested Project for cs490w:
A Specialized Data Server/Molecular Viewer for Crystallographic Data
Graphics programs used to view molecular structures generally consist of many separate but
inter-related components. The "raw data" used consists of crystallographic coordinates for all
atoms present in the unit cell as well as the symmetry information and dimensions for the unit cell.
The typical procedure to draw a molecular structure would be to convert the crystallographic
coordinates (which are non-Cartesian) to a set of Cartesian coordinates. The distances between
each of these atoms would then be calculated and the distance used to determine if a chemical
"bond" should be drawn between any given pair of atoms. The atoms would then be rotated using
a rotation matrix to yield a view that is satisfactory, followed by the actual drawing of the
molecule. The latter process can be quite complex depending on the type of drawing required.
There are perhaps six generally recognized molecular drawing packages in use today, the main
- ORTEP--Oak Ridge Thermal Ellipsoid Program written by Caroll Johnson.
- SPACEFIL--Program written by GN Smith for space-filling representation drawing.
- PLUTO--another well-known space-filling drawing program.
I would like to propose the construction of a Web-based database to store our crystallographic
data along with a viewer that will allow the user to view a stick-representation or space filled
representation of the molecule and rotate it to obtain the view he/she desires. In order to keep
the viewer software as simple as possible, the data would already be available as Cartesian
coordinates and bonding information would also be present. A suggested data format would be:
- NA NB ;number of atoms, bonds>
- Name1 x1 y1 z1 color1 ;atom names and cartesian coordinate
- Name2 x2 y2 z2 color2
- etc.........(NA lines)
- A1 B1 ;sequence numbers for bond1
- A2 B2 ;sequence numbers for bond2
- etc.........(NB lines)
The viewer program would allow the user to rotate the coordinates as the mouse is "clicked" on
rotation boxes to signify rotatation around the x, y, or z axes. The sticks in the drawing would
be color coded. A bond between oxygen and carbon for example would be a sphere that is red
connected to a sphere that is black. A separate set of boxes would allow the user to request
what type of image they can download and view. These will be the more common image files.
Assuming these are doable, I propose the following:
John: This whole idea seemed simple when we first thought of it! I do think it will be well
received if we can get it to work. My assumption is that it will go on a Silicon Graphics box of
some kind--I can get you access to iumsc1 for development if the project is approved.
- Write the viewer(!) We (IUMSC) will be responsible for creating the data files (Cartesian coordinates and connectivity information).
- Write an interface for the data to work with the viewer.
- Help IUMSC figure out how to make the above work properly with the server.
January 16, 1995