[MMTK] Solvation example

Michiel Jan Laurens de Hoon mdehoon at ims.u-tokyo.ac.jp
Tue Oct 14 19:51:14 CEST 2003

Dear MMTKers,

I am hoping to use MMTK to calculate protein interactions, and following 
an earlier explanation from Konrad, I am now looking at solvation 
effects first. A couple of questions came up when I tried to run the 
example script solvation.py:

1) The solvation is done by scaling up the universe, adding water 
molecules at random, and slowly scaling it back to its original size. Is 
there a reason for this, other than that it is easier to avoid 
overlapping water molecules when placing them randomly? I may just be 
missing some basic molecular modeling background here. Does anybody know 
any good textbooks on these kind of things?

2) If I try to view the universe after running solvation.py, I get the 
error message "Universe version numbers do not agree" (complete 
traceback is printed below). For some reason, if I remove the lines
universe.thermostat = NoseThermostat(temperature)
universe.barostat = AndersenBarostat(pressure, 0.1*Units.ps)
and remove the line with BarostatReset in the call to the integrator, I 
can view the universe. But I have no idea why the thermostat and 
barostat would affect the ability to view the universe.

3) If I then view the universe, I noticed that the protein usually ends 
up off to one side or in a corner (so one side of the protein does not 
have water but the vacuum around it). This is also the case if I 
increase the size of the box so I have lots of water (269 molecules). I 
was hoping to find the protein somewhere in the bulk of the water. Is 
something going wrong here? What is the function of solvation if the 
protein doesn't see most of the water?

Many thanks in advance,

Michiel, U Tokyo.

Traceback of universe.view():

30 water molecules will be added
Solvent molecules have been added, now shrinking universe...
Universe has been compressed, now equilibrating...
Traceback (most recent call last):
   File "solvation.py", line 97, in ?
line 359, in view configuration)
"/home/samma/mdehoon/lib/python2.2/site-packages/MMTK/Universe.py", line
745, in contiguousObjectConfiguration
     return conf + offset
py", line 330, in __add__
     value = ParticleVector.__add__(self, other)
py", line 95, in __add__
     return self._arithmetic(other, Numeric.add)
py", line 82, in _arithmetic
     return_class, a2 = self._checkCompatibility(other, allow_scalar)
py", line 54, in _checkCompatibility
     raise ValueError, "Universe version numbers do not agree"
ValueError: Universe version numbers do not agree

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