schrodinger.application.desmond.sid_plots.pl_interactions module

Module with utilities for analyzing protein-ligand interactions from ark format.

schrodinger.application.desmond.sid_plots.pl_interactions.parse_halogen_interactions(data: list[list[list[int, str, str] | list[int, str, str, str]]], parsed_data: numpy.ndarray, protein_res_labels: list[str]) None

Parse halogen bond interactions from data and store it in parsed_data.

Parameters
  • data – Halogen bond interactions for each frame of the simulation.

  • parsed_data – 3D numpy array to store the parsed data.

  • protein_res_labels – List of protein residue labels in the full SID dataset.

schrodinger.application.desmond.sid_plots.pl_interactions.get_halogen_bond_statistics(fstart: int, fend: int, hal_bonds: list[list[tuple]] | None, hal_prot_dict: dict[str, int] | None, ligand_atom_dict: dict, pose_st: schrodinger.structure._structure.Structure) list[list]

Get statistics on Halogen bonds during the simulation.

Parameters
  • fstart – Starting frame index

  • fend – Ending frame index

  • hal_bonds – List of all halogen bonds present in each frame of the simulation.

  • hal_prot_dict – Dictionary mapping protein atom labels to their corresponding indices in the protein structure e.g. {‘B:VAL_41:O’: 469, …}.

  • ligand_atom_dict – Dictionary mapping labels for ligands participating in halogen bonds to its corresponding atom index in the ligand structure e.g. {‘L-FRAG_0:C3810’: 3810, …}

  • pose_st – The pose structure

schrodinger.application.desmond.sid_plots.pl_interactions.filter_degen_res_atoms(bonds: tuple[tuple])

This function takes a list of bonds and looks at the Protein Residue tag (ie: ‘A:LYS_33:1HZ’), and determines if there are atoms there are equivalent bond donors/acceptors in that residue. If so, then the atom name is replced by a more a more generic name.

We need this for LID, in the scenarious when equivelent residue donors/acceptors interact with the same ligand atom. Multple equivelent interactions are created in LID.

schrodinger.application.desmond.sid_plots.pl_interactions.parse_res_name_with_atoms(res_tag: str) tuple[str, str, int, str]