[MMTK] Newby: Protein complex formation

Michiel Jan Laurens de Hoon mdehoon at ims.u-tokyo.ac.jp
Wed Aug 20 18:33:43 EDT 2003

Dear MMTKers,

I am hoping to use MMTK to look at protein complex formation. To get 
started, I loaded 1BON.pdb, which contains a sinI/sinR protein complex 
of Bacillus subtilis, and ran MMTK's energy minimizer. I expected that 
the minimizer would find a protein configuration that is close to what 
is already in the PDB file. That seems to work, the protein 
configurations change somewhat while the energy reduces from about 
277000 to -20000.

Then, I used translateBy on each protein separately to put them a small 
distance away from each other. Now I was hoping that the energy 
minimizer would find something close to the initial protein complex. 
That doesn't seem to work, the energy changes but the proteins do not 
move towards each other.

So my questions are:
1) Is it at all possible what I am trying to do here? Or am I being too 
optimistic here?
2) In MMTK, do the proteins see each other, or are only forces internal 
to the proteins included? I am using the Amber force field. If they 
don't feel each other's force, what am I missing, and how can I include 
protein-protein interaction?
3) Are the proteins treated as if they were in vacuum, or are they 
assumed to be submerged in water?

Below is the Python script that I was using.

Thank you for your attention.

--Michiel, U Tokyo.

> from MMTK import *
> from MMTK.ForceFields import Amber94ForceField
> from MMTK.Minimization import SteepestDescentMinimizer
> from MMTK.Proteins import Protein
> from MMTK.Visualization import view
> complex = Protein('1B0N.pdb')
> sinR = copy(complex[0])
> sinI = copy(complex[1])
> difference = sinR.position() - sinI.position()
> print "initial distance:", difference
> sinR.translateBy(0.1*difference)
> sinI.translateBy(-0.1*difference)
> universe = InfiniteUniverse(Amber94ForceField())
> universe.addObject(sinR)
> universe.addObject(sinI)
> view(universe)
> minimizer = SteepestDescentMinimizer(universe, convergence=0)
> for i in range(10):
>   minimizer(steps=2)
>   print "Energy =", universe.energy(), "distance =", sinI.position()-sinR.position()
> view(universe)

Michiel de Hoon
Assistant Professor
University of Tokyo, Institute of Medical Science
Human Genome Center
4-6-1 Shirokane-dai, Minato-ku
Tokyo 108-8639

More information about the mmtk mailing list