#109 get_implicit_mass on 0Z1

v1.7.0.0
closed-fixed
nobody
None
5
2014-02-12
2011-09-16
cowsandmilk
No

getting implicit mass fails on 1ela fails due to the 0Z1 ligand. From effort to debug, pymol believes the order of some bonds is 4, which results in a carbon atom with a valence of 9.

> curl --compressed http://www.rcsb.org/pdb/files/1ela.pdb | egrep '(0Z1|CONECT)' > 0Z1.pdb
> pymol -qkc implicit_mass.pml
PyMOL>load 0Z1.pdb, quiet=1
PyMOL>util.compute_mass("0Z1",implicit=True)
Traceback (most recent call last):
File "/usr/lib64/python2.7/site-packages/pymol/parser.py", line 464, in parse
exec(layer.com2+"\n",self.pymol_names,self.pymol_names)
File "<string>", line 1, in <module>
File "/usr/lib64/python2.7/site-packages/pymol/util.py", line 221, in compute_mass
result += m.get_implicit_mass()
File "/usr/lib64/python2.7/site-packages/chempy/models.py", line 95, in get_implicit_mass
implicit[c] = a.get_implicit_valence()[valence[c]]
KeyError: 9

Discussion

  • cowsandmilk
    cowsandmilk
    2011-09-16

    pml script

     
    Attachments
  • Jason Vertrees
    Jason Vertrees
    2011-09-16

    Thanks for submitting this. PyMOL is reporting aromatic bond orders as 4, which is confusing the algorithm. Please consider converting it to a kekule structure and calculating from there. You're welcome to propose an alternative solution.

     
  • Thomas Holder
    Thomas Holder
    2014-02-12

    • status: open --> closed-fixed
    • Group: --> v1.7.0.0