Electrostatics / pdb2pqr

PDB2PQR - determining titration states, adding missing atoms, and assigning charges/radii to biomolecules.
http://www.poissonboltzmann.org/
Other
124 stars 34 forks source link

pdb2pqr - ValueError: invalid literal for int() with base 10: '' #220

Closed poojari1 closed 2 years ago

poojari1 commented 3 years ago

Hi All,

I am trying to process one of the pdb file with pdb2pqr webserver which i got from running MD simulations. There are 3 chains in the pdb file, all are labelled differently and each chain is separated by TER line. I get the below error message. Please can I know how to fix this:

######################################## Traceback (most recent call last): File "/usr/local/bin/pdb2pqr30", line 11, in sys.exit(main()) File "/usr/local/lib/python3.6/dist-packages/pdb2pqr/main.py", line 796, in main main_driver(args) File "/usr/local/lib/python3.6/dist-packages/pdb2pqr/main.py", line 735, in main_driver pdblist, is_cif = io.get_molecule(args.input_path) File "/usr/local/lib/python3.6/dist-packages/pdb2pqr/io.py", line 460, in get_molecule pdblist, errlist = pdb.read_pdb(input_file) File "/usr/local/lib/python3.6/dist-packages/pdb2pqr/pdb.py", line 2579, in read_pdb obj = klass(line) File "/usr/local/lib/python3.6/dist-packages/pdb2pqr/pdb.py", line 2045, in init self.remark_num = int(line[7:10].strip()) ValueError: invalid literal for int() with base 10: '' ########################################

Kind Regards, Chetan

intendo commented 3 years ago

@poojari1 can you give us the job id and attach the PDB files so we can help troubleshoot?

poojari1 commented 3 years ago

Hi,

Thanks for your reply.

My protein also had glycans attached which are removed from input pdb file.

My job id is: skne28q0vy

Attached is the pdb file. test.zip

Kind Regards, Chetan

poojari1 commented 3 years ago

Dear Darren,

Update on the above error. After removing the header lines of the PDB file (REMARK, TITLE, CRYST1), the file was processed by the webserver. Here is the job id: ID: tngsdz29un

However, when i process the same PDB file (with header lines removed) locally with PDB2PQR v3.2.0 i get this error message:

command: pdb2pqr30 --with-ph=7.0 --drop-water --apbs-input protein_apbs.in --ff=CHARMM --ffout=CHARMM test.pdb protein_apbs.pqr --assign-only --keep-chain

########################################################### INFO:PDB2PQR v3.2.0: biomolecular structure conversion software. INFO:Please cite: Jurrus E, et al. Improvements to the APBS biomolecular solvation software suite. Protein Sci 27 112-128 (2018). INFO:Please cite: Dolinsky TJ, et al. PDB2PQR: expanding and upgrading automated preparation of biomolecular structures for molecular simulations. Nucleic Acids Res 35 W522-W525 (2007). INFO:Checking and transforming input arguments. INFO:Loading topology files. INFO:Loading molecule: test.pdb INFO:Dropping water from structure. INFO:Setting up molecule. INFO:Created biomolecule object with 1338 residues and 19983 atoms. INFO:Setting termini states for biomolecule chains. INFO:Loading forcefield. INFO:Loading hydrogen topology definitions. INFO:Applying force field to biomolecule states. CRITICAL:Residue CYS 1 charge is non-integer: 0.34 CRITICAL:Giving up. ###########################################################

Kind Regards, Chetan

jbardhan commented 2 years ago

Hi Chetan,

Thank you for your patience! I'm taking a look at this now. I appreciate why this is confusing, because I see the PDB is the output of some MD simulation and it looks like you've applied CHARMM's ACE patch to CYS 1. As a result I'd expect it to have a proper integer charge.

Do you have a PSF file to go along with the PDB, or similar?

I'll keep looking at it in the mean time -- just wanted to double check.

Thanks very much, Jay

jbardhan commented 2 years ago

Hi,

I have reproduced these two separate issues:

1) the error in parsing the PDB header. It appears that the two REMARK lines are what trigger the error. When I delete them and them only, the code passes this point.

2) the error in actually creating the PQR. If I remove the "--assign-only" flag, the script runs to completion. This is confusing given that the PDB file comes from a simulation and should not need atoms added. When I look at the CHARMM force fields I have, it certainly looks like CYS 1 should have an integral charge.

I'm continuing to look into this.

Best regards, Jay

sobolevnrm commented 2 years ago

This works in the current version of PDB2PQR without the --assign-only option. The failure of the code with the option is expected because PDB2PQR performs several modifications to the file (appear to be mainly renaming atoms) that are necessary to correctly assign charges and yield a structure with an integer net charge.