[Chimera-users] Deterministic traversal of a chemical graph

Jaime Rodríguez-Guerra Pedregal Jaime.RodriguezGuerra at uab.cat
Thu Mar 7 04:06:42 PST 2019

Dear Chimera team,

I have two questions regarding the same idea.

I am trying to develop a script to find topologically equivalent residues in a structure (e.g. MOF, cages, and so on). To do this, I am using SplitMolecule.split.split_connected and then comparing the resulting pieces by number of atoms, empirical formula and, ultimately, I would like to compare the chemical graph (i.e. test for graph isomorphism). Is there any built-in function/object for that in Chimera?

Since I didn't want to overcomplicate the algorithm, for now I am trusting that there won't be isomers in the structure and the empirical formula (actually a collections.Counter applied to atom.element.name<http://atom.element.name>) is enough of a test.This is working ok but, in some cases, the resulting pieces have totally different atom names because they come from a unified generic residue that encompasses all the pieces. As a result, I want to rename them in the same way consistently.

My first attempt at this consists of finding the chimera.Root atom of each piece and then using chimera.Molecule.traverseAtoms to iterate over the piece. However, I've found that the Root is not always the same (topologically speaking) atom, so the naming scheme differs from piece to piece. Is there anyway to guarantee topologically equivalent traversals?

I guess that both questions would lead to the same result, because it seems that I will need a chemical graph anyway.

Thank you in advance,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://plato.cgl.ucsf.edu/pipermail/chimera-users/attachments/20190307/8ae3b23b/attachment.html>

More information about the Chimera-users mailing list