You are here

Problem importing AlphaFold PDB

5 posts / 0 new
Last post
Problem importing AlphaFold PDB
#1

I have tried to import a PDB that came from an AlphaFold Docking run. I have repaired it using the PRAS server to add the OXT lines (file attached) but it still won't import. Here is the script for import followed by the first lines of the results with the error messge "discarding 4 atoms at position 1 in...".

 

>>> SRF_BBox = Pose()
>>> pose_from_pdb("SRF_BBox-AF-1_PRAS.pdb")
core.import_pose.import_pose: File 'SRF_BBox-AF-1_PRAS.pdb' automatically determined to b              e of type PDB
core.io.pose_from_sfr.PoseFromSFRBuilder: [ WARNING ] discarding 4 atoms at position 1 in               file SRF_BBox-AF-1_PRAS.pdb. Best match rsd_type:  GLY:NtermProteinFull
core.io.pose_from_sfr.PoseFromSFRBuilder: [ WARNING ] discarding 4 atoms at position 2 in               file SRF_BBox-AF-1_PRAS.pdb. Best match rsd_type:  LYS
core.io.pose_from_sfr.PoseFromSFRBuilder: [ WARNING ] discarding 4 atoms at position 3 in               file SRF_BBox-AF-1_PRAS.pdb. Best match rsd_type:  LYS
core.io.pose_from_sfr.PoseFromSFRBuilder: [ WARNING ] discarding 3 atoms at position 5 in               file SRF_BBox-AF-1_PRAS.pdb. Best match rsd_type:  ARG
core.io.pose_from_sfr.PoseFromSFRBuilder: [ WARNING ] discarding 1 atoms at position 6 in               file SRF_BBox-AF-1_PRAS.pdb. Best match rsd_type:  GLY
 

One additional pice of information. The file was downloaded from the PRAS server on a Windows machine then copied to the linux pyRosetta server using MobaXTerm drag and drop. 

Any suggestions regarding the error or ways to fix the PDB file for import would be appreciated.

Thanks,

Rick Neubig

 

AttachmentSize
SRF_BBox-AF-1_PRAS.pdb256.87 KB
Category: 
Post Situation: 
Mon, 2023-01-09 09:48
Rick Neubig

Chances are those are all hydrogen atoms. If you're not getting a "missing heavyatom: X on residue Y" warning message, then as far as Rosetta is concerned it successfully read all of the heavyatoms from the PDB, and it's not missing anything.

One reason hydrogens can sometimes be discarded is that there are a number of different conventions for naming hydrogens, and Rosetta typically uses one of the older ones. (Which was the current one when first programmed.) There's some facilities for reading in the other hydrogen naming conventions and doing the conversion, but depending on the details it might not be working for your case.

But it typically doesn't matter if the hydrogens don't import properly. Rosetta will automatically place missing hydrogens in the correct location acording to ideal geometry. Unless there's some deep reasons you want precise hydrogen placement, the autogenerated hydrogen positions are probably fine.

Note that Rosetta can also place missing heavyatoms, too, in a limited capacity. (If too many backbone atoms are missing it has a hard time figuring out where the residue should go, so it just skips things.) So you don't need to place the OXT externally -- if it's missing Rosetta will automatically add it back in, if it thinks it needs it.

So on the whole I wouildn't worry about those warning messages, unless you're seeing other warning messages about protein import.

Mon, 2023-01-09 10:39
rmoretti

Thanks for the quick answer. It doesn't seem to get the heavy atoms in either (unless I'm missing something). The object SRF_BBox is created but it has no structure in it when I try to print().

"core.io.pose_from_sfr.PoseFromSFRBuilder: [ WARNING ] discarding 2 atoms at position 194 in file SRF_BBox-AF-1_PRAS.pdb. Best match rsd_type:  GLN
core.io.pose_from_sfr.PoseFromSFRBuilder: [ WARNING ] discarding 1 atoms at position 195 in file SRF_BBox-AF-1_PRAS.pdb. Best match rsd_type:  ASP:CtermProteinFull
<pyrosetta.rosetta.core.pose.Pose object at 0x2abf1476df30>
>>> SRF_BBox
<pyrosetta.rosetta.core.pose.Pose object at 0x2abf146e59f0>
>>> print(SRF_BBox)
Total residues: 0
Sequence:
Fold tree:
FOLD_TREE
>>>"
 

Mon, 2023-01-09 12:09
Rick Neubig

Ah, looks like you might not be assigning the read-in pose to the variable.

Try this instead:

>>> SRF_BBox = pose_from_pdb("SRF_BBox-AF-1_PRAS.pdb")
>>> print(SRF_BBox)

Mon, 2023-01-09 13:09
rmoretti

Thanks. Silly mistake. Appreciate the help.

Rick

Tue, 2023-01-10 04:11
Rick Neubig