[MMTK] object or module for molecule-centered grid

Konrad Hinsen konrad.hinsen at cea.fr
Fri Mar 24 12:08:22 CET 2006


On Mar 23, 2006, at 21:23, Andrew D. Fant wrote:

> Are there any special routines to allow a set of points from that  
> lattice to be
> accessed as a single entity?  For example to treat the set of grid  
> points that
> are within the VdW radius of the nearest atom (plus or minus some  
> reasonable
> epsilon) as a "surface" that can be used for further computation.

No. If you want points on a surface, use  
MolecularSurfaces.surfaceAtoms(). However, those points are not on a  
lattice. If you want surface points on a lattice, you will have to  
write your own routines. Note that this is not particularly  
difficult. You could start from the non-lattice surface points and  
project them onto the nearest grid point. That only takes a few  
division and modulo operations.

> 1) Is it me, or is the eigenvectors routine either painfully slow  
> or broken?  I
> ran the code and nothing happened, so I waited, then I killed the  
> process and
> tried again.  After 5 minutes, I killed that process and  
> instrumented the code a
> little more closely.  The centering and orientation process took a  
> few seconds
> for insulin, which I could deal with, but when it came to the:
>
> 	diagonal, directions = LinearAlgebra.eigenvectors(inertia.array)
>
> line, the system, goes into a period intense activity with the CPU  
> meter pegged,
> but nothing happens for at least 10 minutes (I entered the commands  
> one-by-one
> from the command line to verify this is where it hangs, and it  
> is).  Is my
> install well and truly borked, or am I impatient?

The inertia tensor being a 3x3 matrix, the eigenvector calculation  
should take a few milliseconds only. If it hangs, there is an  
installation problem.

Actually, I have heard of such a problem on recent Linux systems that  
have GCC 4. Apparently GCC 4 does not compile some of the LAPACK code  
in Numeric correctly. As a workaround, you can reinstall Numeric with  
an additional compiler option:

	CFLAGS='-ffloat-store' python setup.py build

instead of the simple

	python setup.py build

However, this is reported to somewhat slow down all LAPACK routines.  
Perhaps there is a better fix by now.

> 2)  Could someone show or help me see how to convert this example  
> to work with a
>  non-protein molecule (such as the heme example in the database)?   
> Most of what
> I want to do with MMTK is small-molecule oriented, and the protein  
> class isn't
> quite what I want, but I need more than just a collection of atoms  
> and bonds.

Just replace

	protein = Protein('insulin')

by

	molecule = Molecule('heme')

and replace "protein" by "molecule" everywhere in the script. Then  
make up some reasonable graphics for that molecule, e.g.

	graphics = molecule.graphicsObjects(graphics_module = module,
                                                  			model='wireframe',
                                                  			color = 'blue')



> One last question for today (gee, I didn't set out to be prolific),
>
> Does anyone have any working examples for the experimental MMTK- 
> Pymol bindings
> in 2.5?

There are three PyMOL plugins at

	http://dirac.cnrs-orleans.fr/MMTK/download.html

I have some more scripts, but they are quite specific to one of my  
projects, and they require specific data files and additional Python  
modules.

Konrad.
--
---------------------------------------------------------------------
Konrad Hinsen
Laboratoire Léon Brillouin, CEA Saclay,
91191 Gif-sur-Yvette Cedex, France
Tel.: +33-1 69 08 79 25
Fax: +33-1 69 08 82 61
E-Mail: konrad.hinsen at cea.fr
---------------------------------------------------------------------





More information about the mmtk mailing list