ChemBioHTP / EnzyHTP

EnzyHTP is a python library that automates the complete life-cycle of enzyme modeling
https://enzyhtp-doc.readthedocs.io
Other
11 stars 1 forks source link

Atom naming consistency #117

Open shaoqx opened 1 year ago

shaoqx commented 1 year ago

Another thing I noticed is the atom names of the new residue generated by PyMol are not the classical PDB style naming. I compared and found it is mainly the hydrogen namings are different. Fixing this is a good lv. 3 task! I suggest we can choose from the 2 plans below:

  1. Assume H naming is the only difference: detect the inconsistency between atom namings after the mutation. (you can use the standard atom naming information from chemical.residue) and change all the naming of H back (it's just simply where to place the digit) and abort when it is more than just H
  2. Difference in naming in general: still detect the inconsistency between atom namings after the mutation. (this should be a general method of Structure or Atom) Wrote some 1 time code and collect a naming map between our standard atom naming and pymol's atom naming. (this can be achieved by make pymol generate each residue and record their atom naming.) And store it in chemical.
shaoqx commented 1 year ago

Atom names are used in many places in EnzyHTP as the key to some value. We decided to use the one in chemical.residue as the standard one for EnzyHTP and convert any that does not conform. See the idea in https://github.com/ChemBioHTP/EnzyHTP/blob/627bde52666d995680f5fd9f4580fc1e1e4179cf/enzy_htp/chemical/metal.py#L155

shaoqx commented 1 year ago

Here is an example of PyMol atom names for TRP comparing to native ones (sorted by A-Z) Left: PyMol Right: PDB/Amber image

shaoqx commented 1 year ago

Test tleap behavior on it