I wrote this entry, originally, on July 4, 2004.
In a recent paper, computer science professor Yuan-Fang Wang of UC Santa Barbara, describes a tool based on 3-D Java for fast protein visualization.
The 3-D structure of proteins determines their biochemical operation.
For example, a great deal of effort was used to map the 3-D structure of Hemoglobin, the main ingredient of our red blood cells, in order to discover and explain how it fixes oxygen.
Computer visualization is only one aspect of structural analysis. In fact, it is one of the last steps in the the geometric analysis of a protein. (The ultimate goal being the actual biochemical function and relationships.)
Another important (and more fundamental) aspect is the actual determination of the geometric structure given a protein's amino acid sequence.
Such determination involves an optimization problem which searches for geometric positioning of protein backbone such that the lowest potential energy state is attained.
This procedure follows from the basic physical principle that all structures prefer the geometry that leads to the lowest potential energy.
The potential engergy can be determined by adding all potential energies due to interactions among the amino acid molecules that have been strung together in a protein.
There is a whole separate art in writing the potential energy equation as a function of molecular positioning and solving it for its lowest value in the hyperdimensional space of the molecular distances. The optimization problem can be solved in a number of ways. Since this is a large-dimension problem, it is important to use some heuristics to start the problem with the protein geometry in a realistic initial state. Following this initial state, the computation searches for neighboring states that have lower potential energy. This sequence is repeated until lowest potential energy "neighborhood" in the hyper-dimensional space of molecular distance vectors is found.