Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PDB2FF ligand test #11

Open
KleinesMesser opened this issue Mar 2, 2021 · 2 comments
Open

PDB2FF ligand test #11

KleinesMesser opened this issue Mar 2, 2021 · 2 comments

Comments

@KleinesMesser
Copy link
Collaborator

KleinesMesser commented Mar 2, 2021

  1. If there are no ligands in the PDB file, a leap error will occur (1GBG as an example):

*** Error: tl_getline(): not interactive, use stdio.

  1. Error occurs using PDB2FF (3WIW):

Traceback (most recent call last):
File "0_MutaGen_main.py", line 34, in
main()
File "0_MutaGen_main.py", line 14, in main
PDB1.PDB2FF('ff_prep_temp/')
File "/gpfs23/scratch/jiany37/HTP_trial/03022021_enzyme_workflow-develop_qz/Class_PDB.py", line 845, in PDB2FF
ligands_pathNchrg = self.stru.build_ligands(lig_dir, ifcharge=1)
File "/gpfs23/scratch/jiany37/HTP_trial/03022021_enzyme_workflow-develop_qz/Class_Structure.py", line 512, in build_ligands
net_charge = lig.get_net_charge(method=c_method, ph=ph)
File "/gpfs23/scratch/jiany37/HTP_trial/03022021_enzyme_workflow-develop_qz/Class_Structure.py", line 1855, in get_net_charge
mol = next(pybel.readfile('pdb', temp_pdb3_path))
File "/home/jiany37/Software_installed/openbabel-3-1-1_installed/lib/python3.8/site-packages/openbabel/pybel.py", line 161, in readfile
raise IOError("No such file: '%s'" % filename)
OSError: No such file: './cache/ligand_temp3.pdb'

  1. 3WIW ligand EPE. The error occurs before ff can be generated. But pdb2pqr adds one H atom to each N and O(=S) atoms, which is obviously not reasonable.

  2. Another issue with PDB2PQR: it cannot process selenocysteine correctly and the output PDB will skip this residue. Example: 3F3K

  3. Ions that get_protonation do not support: Mn(II), Co(III), Fe(III) (5HIO)

  4. Transition metal ions Co only has +2 in leap tip3p ff. In the future, we need to figure out a way to determine the charge for these ions because the coordinate parts in PDB files do not have this information. Most common example: Fe.

@shaoqx
Copy link
Collaborator

shaoqx commented Mar 3, 2021

  1. OMG, after several rounds of testing and searching. I found that it was me running tleap before closing leap.in in python. You can search these lines:
os.system('tleap -s -f '+leap_path+' > '+leap_path[:-2]+'out')

return self.prmtop_path, self.inpcrd_path

and descend a block by shift+tab. Update: fixed in 8ddfada.
2. The old way of reading residues in chain does not allow the presence of non-data lines (like END without a TER before it.) 4506455 changed this part and now it allows any meaningless lines mixed with data line.
3. It seems Openbabel's result is not good enough sometimes for simple ligand like this, not sure if it is the S confusing it. We need to find a better protonation method for ligand or find better use of Openbabel.

  • We can try Dimorphite, it gives a better result in this case. I will support it after finish the QMMM part.
  1. I think we just skip them and obtain this part of the yield in the future.
  2. Cool, updated in 67b450f
  3. I think MCPB.py could be a good way. I left space for that in PDB2FF. Easy to do will current modules, just need to figure out some general steps to follow. Will support in the future.

@KleinesMesser
Copy link
Collaborator Author

I googled the tl_getline(): error and it seems that it is not related to the python code itself. Instead, it is related to something with the leap.in file.

Something like this:
http://archive.ambermd.org/201306/0231.html
http://archive.ambermd.org/201306/0245.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants