Uppsala Software Factory Tutorial - Biomolecular Morphing

Biomolecular Morphing of Ribose-Binding Protein using LSQMAN and O

This page describes how to visualise structural differences between molecules (e.g., related by NCS, or in different crystal forms, mutants, complexes, etc.), using LSQMAN (version 7.0 or newer) and O (or any other molecular graphics program).


If you use molecular morphs generated with LSQMAN in your work (web-site, publications, etc.), please CITE the LSQMAN reference ! Also, if your morphs are publicly available on the web, please E-mail me the URL and a brief description so I can add them to the gallery.

Biomolecular Morphing Gallery

Here are some example morphs:

  1. A 16 MB QuickTime movie showing the conformational changes in the 20S proteasome upon binding the 11S regulator can be viewed here. The morph was created with LSQMAN by Frank Whitby (in the lab of Chris Hill). For details, see: Whitby, F.G., Masters, E.I., Kramer, L., Knowlton, J.R., Yao, Y., Wang, C.C., Hill, C.P. Structural Basis for the Activation of Proteasome by 11S Regulators. Nature, 408:115-120 (2000).

  2. Another morph and a step-by-step guide to explain how it was made can be found here.

  3. Protein folding (link). Morph made by Roman Laskowski to introduce the concept in a talk for non-scientists.

  4. HSA (link). Stephen Curry has updated his morphs showing the conformational changes in human serum albumin upon fatty-acid binding (see also: Bhattacharya, Grüne & Curry, J. Mol. Biol., 303, 721-732 (2000)).

  5. Lysozyme (link). Simulation of the transition between two experimental conformations of bacteriophage lambda lysozyme (Evrard, Fastrez & Declercq, 1998, J. Mol. Biol. 276, 151-164).

  6. Retinoic acid (100 kB). Internal coordinate morph from trans to cis retinoic acid (residue 200 in 1CBS and residue 420 in 3LBD, respectively). The individual images were created in O and rendered with plt_pov and POVRAY.
    © G J Kleywegt, 1999

  7. RBP (300 kB). Yet another morph of ribose-binding protein (1URP, 2DRI), but in this animated GIF we simultaneously morph, rotate around the Y axis, and zoom in ! The morph was done with LSQMAN and O, and the O plot file was then processed with Mark Harris' MolRay (uses POVRAY for ray-tracing) to get the movie.
    © G J Kleywegt, 1999

  8. 8FAB (200 kB). PDB entry 8FAB morphed from chain A to chain C. The individual images were created in O and rendered with plt_pov and POVRAY.
    © G J Kleywegt, 1999

  9. RBP (434 kB). This animated GIF shows the transition from the open to the closed (ligand-bound) form of ribose-binding protein. It was created using PDB entries 1URP and 2DRI. Only the CA-trace is shown, and the CA-CA bonds have been colour-coded according to the magnitude of the change in "torsion" around them. The individual images were created in O.
    © G J Kleywegt, 1998

  10. CBH I (421 kB). This animated GIF shows the transition of the tyrosine loop in cellobiohydrolase I. It includes the CA-trace and all side chains. It was created using PDB entries 1CEL and 7CEL.
    © G J Kleywegt, 1998

  11. L2C (148 kB). This animated GIF shows the "transition" from lysozyme (8LYZ) to CRABP type II (1CBS). Individual frames created with RasMol. Nonsense, but funny ! ( Smaller version (57 kB).)
    © G J Kleywegt, 1998

  12. HIC-Up (64 kB). Animated logo for the HIC-Up site. It was generated as a Cartesian morph from hetero compound RE9 (in PDB entry 1CBQ) to REA (1CBS). The two hetero compounds have the same number of heavy atoms, with the same names. Created with O.
    © G J Kleywegt, 1998

  13. SBNet (34 kB). Animated logo for the SBNet site. It was generated as a Cartesian morph from an ideal seven-residue alpha-helix to a seven-residue beta-strand. Created with O.
    © G J Kleywegt, 1998

  14. RBP (101 kB). A different view of the closure of RBP, this time showing the protein as a cartoon. The images were created with MSI's WebLab ViewerLite on a Mac, copied to the clipboard, converted to GIF format with Clip2Gif, and animated with GIFBuilder.
    © G J Kleywegt, 1998

  15. HIC-Up (25 kB). A different version of the HIC-Up morph, namely of the soft molecular surface. These images were created with MSI's WebLab ViewerLite etc. like the previous one.
    © G J Kleywegt, 1998

1 - Designing your morph

Before you start, you want to spend a few minutes thinking about what you want to visualise.

First of all, what is "morphing" ? It is the name of a graphics technique in which one image is gradually changed into another. This is done by generating intermediate images that are "interpolations" between the start and end image. If the whole series of images is shown in rapid succession, it looks like a fluid movie. You may have seen morphs on the web, e.g. a picture of one American president that slowly changes into a picture of another president. (Another example.) (A morph from Alwyn Jones to Elvis Presley and back.)

"Classical" morphing is typically done on images that consist of pixels. However, if you want to visualise a large-scale conformational change in a protein molecule, morphing from a picture of one conformation to that of the other will rarely produce the desired result. For "biomolecular morphing", the major requirement is that the transition is smooth and feels natural. In other words, we want to see/visualise changes in torsions around chemical bonds or around pseudo-bonds (such as CA-CA bonds in a CA-trace of a protein molecule). To do this requires a little bit more work than the straightforward use of some general pixel-based morphing program.

The program LSQMAN contains an option to do biomolecular morphing, i.e. to do "structural interpolation" between two conformational states of a molecule, and in such a way that the result looks chemically reasonable (which is not the same as "physically realistic" !!!).

What do you need for biomolecular morphing ?

How do you want to morph ? In LSQMAN, there are essentially three different ways to do the morphing:

Of these methods, Cartesian morphing is the simplest (and most similar to traditional morphing): for every atom to be morphed, the start and end coordinates are retrieved, and the intermediate models are generated simply by interpolating the coordinates (i.e., every atom moves in a straight line from its starting position to its final position).

Advantages of morphing in Cartesian coordinate space:


Morphing in internal coordinate space is strongly preferred (but not always possible; see below). Here, a CA-trace is represented not by its Cartesian coordinates, but by:

  1. the distance to the previous CA atom
  2. the angle to the CA atom before that
  3. the torsion with respect to the CA atom before that
Then, to morph, LSQMAN compares these internal coordinates in the start and end structure, and interpolates to effect the changes smoothly. For each intermediate model, the internal coordinates are converted back to Cartesian coordinates (this means that the first atom will always end up at the origin (0,0,0) !).

Morphing a protein's CA-trace plus all side chains proceeds similar to central-atom morphing, but care is taken that the internal coordinates of the side-chain atoms involve "natural" torsions (CA-CB; CB-CG, etc.).

Advantages of morphing in internal coordinate space:

Disadvantages: All in all, the perception of natural motion makes internal coordinate morphing superior for most purposes, except when one or more very large changes occur.

If you want, LSQMAN can try to avoid large changes in the central atom torsion angles, but this sometimes in turn leads to broken bonds and distorted molecules. It's a trade-off.

What do you want to morph ? Now you know about the ins and outs of morphing in internal and Cartesian coordinate space, you can decide which parts of your molecule you want to morph:

2 - Generating the intermediate models

First, prepare one or two PDB files with the molecules you want to use as the start and end point of the morph. For example, if you want to morph ribose-binding protein from the open to the closed (ribose-bound) conformation, you could use MOLEMAN2 on PDB entry 2DRI to prepare a PDB file which only contains the main-chain atoms plus all intact residues that have at least one atom within 8 A from any ribose atom (NOTE: you only need to do this for one of the two molecules, since only atoms that both have in common will be used in the morphing process !):

 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MOLEMAN2 > re /nfs/pdb/full/2dri.pdb
 MOLEMAN2 > sel none
 MOLEMAN2 > sel or residue rip
 MOLEMAN2 > select distance 0.0 8.0
 MOLEMAN2 > sel by_residue
 MOLEMAN2 > sel or class main
 MOLEMAN2 > sel and type prot
 MOLEMAN2 > wr 2dri.pdb pdb selected
 MOLEMAN2 > quit
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

Now you are ready to generate the models and to superimpose them with LSQMAN (see the LSQMAN manual for details on the commands and parameters for this program).

By the way: did you notice how fast the morphing is ? In a few seconds all the intermediate models have been generated.

3 - Admiring the results

If you are an O user, you are in luck. LSQMAN has produced two O macros for you. Start a new O session, then execute the first macro (which will be called, e.g., morphy_read.omac). When it is done, you should have all models drawn for you. Find a good viewpoint, and then do not execute the second macro. Well, do it anyway and you will see what I mean. When O executes a macro, it will not update the display until the macro is finished - i.e., you see nothing much happening. Now try this: select the commands in the O macro and paste them into your O command window. "Oooooohhhhh ! Cool ! Great ! Wow ! Gerard, please can I send you money ? I want to have your baby !"

What do the colours mean ? By default, the B-factor of each atom holds the distance it travels (Cartesian) or the magnitude of the torsion change around one of its bonds (the largest one). The objects are then colour-ramped from low B-factor (blue; little or no motion) to high (red; loads of motion).

If you want to make an animated GIF file, here is how one can do it (using O on an SGI):

  1. start a new O session
  2. execute the XXX_read.omac macro
  3. do any embellishments you wish to make to all objects (e.g., sketch_stick your CA-trace; change the colours of your models)
  4. start up snapshot (on SGIs) and take pictures of each of the models in turn
  5. convert the RGB files from snapshot into GIF files (e.g., with xv)
  6. build an animated GIF, e.g. with the Macintosh program GIFBuilder
  7. publish the animated GIF on your web site (don't forget to cite LSQMAN; a link to this page would also be nice)
  8. send an E-mail to Gerard with the URL of your image(s), and a brief description, for inclusion in the Gallery (see above)
NOTE: the image capture and conversion steps can also be carried out with the GNU program GIMP.

NOTE: a simpler and faster method is to use RasMol, from which you can save your images in GIF format directly (the lysozyme to CRABP2 morph in the Gallery was generated in this fashion). Colour your molecule by B-factor if you want to show where the major changes occur.

NOTE: MSI's WebLab ViewerLite (free) also works nicely (see the gallery). One problem with both RasMol and WebLab is that you can't define the view to be the same for all images (I'm too lazy to read the manual ;-). So you may have to experiment with rotating your first molecule (e.g., with MOLEMAN2) until you get a reasonable view.

NOTE: a particularly simple and powerful method is to generate one big O plot file containing all the structures that make up the morph and to feed this file into Mark Harris' MolRay, for example using his easy-to-use web-interface. MolRay recognises the various models and allows you to finetune the movie in many ways.

HINT: since LSQMAN produces coordinates for all intermediate steps, you can use any and all programs that can visualise different aspects of molecular structure for your morph ! For example, you could use MolScript and render the images, or Grasp, or display a cavity as it gets filled by an approaching ligand, etc.

Important note: the results of morphing may look so smooth, appealing, and natural that one almost cannot help but "believe" in them. This is dangerous ! Morphing does not claim to generate a physically realistic path from one conformation to another ! However, it can be useful as a visualisation and analysis aid (not to mention teaching and communication of results). Seeing a protein change conformation in "real time" is much more informative than looking at the superimposed images of the before and after states (which just give you a terrible headache ;-). Also, the colour-coding focusses your attention on the "hot spots" of the transition, and may help you better understand the changes that take place.

4 - Related links

USF Latest update at 23 November, 2007.