Skip to content

Arpeggio crashing for low occupancy ligands #26

Description

@JavierSanchez-Utges

I have been having issues with some structures and realised the common element between all of them is the presence of low-occupancy ligands. This is not even a multiple altloc problem, I think, because I removed them and kept only the highest ones, however, the problem still remains. Here are some examples:

7adw_bio.cif -s /E/504/ /EA/504/

7tiy_bio.cif -s /B/401/ /BA/401/

7aol_bio.cif -s /D/403/ /DA/403/

7aga_bio.cif -s /B/401/ /BA/401/

7lzz_bio.cif -s /B/401/ /BA/401/ /C/402/ /CA/402/

7lzt_bio.cif -s /C/402/ /CA/402/ /D/403/ /DA/403/

7ap6_bio.cif -s /B/401/ /BA/401/

7aws_bio.cif -s /B/401/ /BA/401/

7mng_bio.cif -s /B/401/ /BA/401/

The _bio.cif is how I name the preferred assemblies for each PDB, see selections are included as well. This issue is related to this older one: harryjubb/arpeggio#7 , which I think was solved by using the clean_pdb.py script. I think this script only works with PDB and not CIF format.

I think they are related as the problem seems to be the same: the mapping between OB atoms and BioPython atoms crashes. The atom that crashes the mapping is the first ligand atom with occupancy < 1.0, and this happens because it is not on the serial_to_bio dictionary nor in the self.s_atoms iterator.

This is the command I ran:

python pdbe-arpeggio 7mng_bio.cif -s /B/401/ /BA/401/ -o ./arpeggio

Here is the traceback for reference:

Traceback (most recent call last):
  File "arpeggio/core/interactions.py", line 2007, in _establish_structure_mappping
    biopython_atom = serial_to_bio[serial]
KeyError: 4925

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "pdbe-arpeggio", line 8, in <module>
    sys.exit(main())
  File "arpeggio/scripts/process_protein_cli.py", line 150, in main
    run_arpeggio(args)
  File "arpeggio/scripts/process_protein_cli.py", line 159, in run_arpeggio
    i_complex = InteractionComplex(
  File "arpeggio/core/interactions.py", line 96, in __init__
    self._establish_structure_mappping()
  File "arpeggio/core/interactions.py", line 2012, in _establish_structure_mappping
    raise OBBioMatchError(serial)
arpeggio.core.exceptions.OBBioMatchError: 4925

Many thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions