[chimera-dev] Molecular Editing: metal ion chelation

Jean-Didier Maréchal jeandidier.marechal at uab.es
Fri Nov 23 09:30:11 PST 2007


Hi Eric,

Thanks for that. I have been able to get a bit further. 

To follow with my problem, I have one question more though. Basically, I
would like to know how chimera "Recognizes" metal chelation and
coordination bounds. 

What I see is that when you open a pdb with a metal ion, the program
places correctly "semi bounds" corresponding to coordination
interactions. Unfortunately, I work with a series of protein structures
where metals do not adopt a typical geometries (ex: 1lwx). First, I
would like to be able to improve the number of acceptable metal
geometries, but my questions are: how does chimera recognize the right
geometry of the metal ions? Is it implemented in a python module? It is
a C++ code? 

All the best,
JD




On Wed, 2007-11-14 at 12:11 -0800, Eric Pettersen wrote:
> On Nov 14, 2007, at 12:20 AM, Jean Didier Pie Marechal wrote:
> > I am trying to get deeper into chimera and to develop a "simple"
> > algorithm for drug optimization. Something flying in my mind for a
> > while...
> > 
> > First though, I need to understand how to manipulate atom
> > coordinates, bond angle and the general building. I went to the
> > index of the chimera modules. My first objective is to generate a
> > molecule from scratch and I thought that the molEdit module would
> > provide me with the right tools to do so. 
> > 
> > However, when trying to call this module by a chimera.molEdit.XXXX
> > type of command, it seems that molEdit is not a correct object.
> > 
> Are you getting ImportError?  The chimera module only imports the
> submodules it needs at startup in order to try to reduce the startup
> time, and molEdit is one of the modules it does not import.  So if you
> have code like this:
> 
> 
> import chimera
> chimera.molEdit.blah()
> 
> 
> you will get an ImportError.  You either need to do this:
> 
> 
> import chimera.molEdit
> chimera.molEdit.blah()
> 
> 
> or this:
> 
> 
> from chimera.molEdit import blah
> blah()
> > Could you give me some pointers on the correct way to generate small
> > ligand or how to add groups to a given one?
> > 
> molEdit certainly has the very basic functions for working on a
> molecule:
> 
> 
> 
> addAtom:  add an atom to a molecule at a specific Point, optionally
> bonded to a specified atom
> addDihedralAtom:  as above except positioned at a specific dihedral,
> angle, and bond length from 3 given Atoms/Points
> addBond:  bond two atoms
> 
> 
> However, the BuildStructure module also has some pertinent functions.
> In it's __init__.py:
> 
> 
> placeHelium:  start a Molecule from scratch by placing a helium atom
> at the given Point
> changeAtom:  change the element, number of bonds, and bond geometry of
> a given Atom.  Hydrogens will be added as necessary to fill out the
> bonds.  If the 'autoClose' keyword is true, then bonds will be made to
> existing Atoms if appropriate (e.g. closing a ring).
> setBondLength:  pretty self-explanatory
> 
> 
> It's too bad we're in a code freeze right now (due to the pending
> production release) because I've added some helpful functionality to
> BuildStructure:
> 
> 
> placeFragment:  start a Molecule with any of the rings systems seen
> here: http://en.wikipedia.org/wiki/Simple_aromatic_ring
> changeAtom:  as above, but also returns a list of the Atoms that were
> changed/created
> 
> 
> In the near future I anticipate adding the ability to generate
> structures from PubChem IDs or SMARTS strings to BuildStructure.
> Anyway, I can send you a current version of BuildStructure if you
> would like to use that.  Otherwise, it should be available in the
> first daily build we make after the production release.
> 
> 
> --Eric
> 
>                         Eric Pettersen
> 
>                         UCSF Computer Graphics Lab
> 
>                         http://www.cgl.ucsf.edu
> 
> 
> 
> 




More information about the Chimera-dev mailing list