schrodinger.application.bioluminate.pose_filtering.residue_filter module

class schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueData(res_id: str, sasa: float | None)

Bases: object

Data class to store information about a particular residue in a protein. Used to compile results of calculations performed across different filtering steps.

res_id: str
sasa: float | None
__init__(res_id: str, sasa: float | None) None
class schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueFilter(*args, **kwargs)

Bases: Protocol

Protocol for classes that can filter a list of residue IDs pertaining to a structure.

filter_res_datas(st: schrodinger.structure._structure.Structure, res_datas: List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueData]) List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueData]
__init__(*args, **kwargs)
class schrodinger.application.bioluminate.pose_filtering.residue_filter.BaseResidueFilter

Bases: schrodinger.models.json.JsonableClassMixin

toJsonImplementation()

Abstract method that must be defined by all derived classes. Converts an instance of the derived class into a jsonifiable object.

Returns

A dict made up of JSON native datatypes or Jsonable objects. See the link below for a table of such types. https://docs.python.org/2/library/json.html#encoders-and-decoders

classmethod fromJsonImplementation(json_dict)

Abstract method that must be defined by all derived classes. Takes in a dictionary and constructs an instance of the derived class.

Parameters

json_dict (dict) – A dictionary loaded from a JSON string or file.

Returns

An instance of the derived class.

Return type

cls

class schrodinger.application.bioluminate.pose_filtering.residue_filter.InterfaceResidueFilter(query_asl_1: str, query_asl_2: str, distance_cutoff: float)

Bases: schrodinger.application.bioluminate.pose_filtering.residue_filter.BaseResidueFilter

Class to filter residues by distance.

Variables
  • query_asl_1 – ASL for the first set of the interface

  • query_asl_2 – ASL for the second set of the interface

  • distance_cutoff – The maximum acceptable distance for two residues in an interaction

query_asl_1: str
query_asl_2: str
distance_cutoff: float
filter_res_datas(st: schrodinger.structure._structure.Structure, res_datas: List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueData]) List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueData]

Return the residue datas from res_datas that are found in protein interactions between ASL sets 1 and 2 with a maximum distance of distance_cutoff.

Note: Assumes res_datas is not empty.

Parameters
  • st – The structure to evaluate

  • res_datas – The residue datas of the residues to evaluate with in the structure

__init__(query_asl_1: str, query_asl_2: str, distance_cutoff: float) None
class schrodinger.application.bioluminate.pose_filtering.residue_filter.SasaResidueFilter(operator_name: str, percent_sasa_cutoff: float)

Bases: schrodinger.application.bioluminate.pose_filtering.residue_filter.BaseResidueFilter

Class to filter residues by %SASA.

Variables
  • operator_name – The numeric operator to use. e.g. “>” or “<”

  • percent_sasa_cutoff – The %SASA cutoff value

operator_name: str
percent_sasa_cutoff: float
filter_res_datas(st: schrodinger.structure._structure.Structure, res_datas: List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueData]) List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueData]

Return the residues from res_datas that are found to have an acceptable percent SASA. False otherwise.

Note: Assumes res_datas is not empty.

__init__(operator_name: str, percent_sasa_cutoff: float) None
class schrodinger.application.bioluminate.pose_filtering.residue_filter.FilterCriteria(res_ids: List[str], min_passing_residues: int, filters: List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueFilter])

Bases: object

Variables
  • res_ids – Residue IDs to use for filtering

  • min_passing_residues – The minimum number of residues that must pass all filters

  • filters – All filters that should be run

res_ids: List[str]
min_passing_residues: int
filters: List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueFilter]
__init__(res_ids: List[str], min_passing_residues: int, filters: List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueFilter]) None
schrodinger.application.bioluminate.pose_filtering.residue_filter.run_filters(poses: List[schrodinger.structure._structure.Structure], filter_criteria: schrodinger.application.bioluminate.pose_filtering.residue_filter.FilterCriteria) Tuple[List[schrodinger.structure._structure.Structure], List[str]]

Return tuple that contains the poses that pass all filtering criteria defined in filter_criteria and the list of passing residue ids.

Parameters
  • poses – The poses to filter

  • filter_criteria – The criteria to use for filtering

Returns

tuple that contains list of passing poses and corresponding residue ids.

schrodinger.application.bioluminate.pose_filtering.residue_filter.get_res_data_from_res_id(res_id: str, res_datas: List[schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueData]) schrodinger.application.bioluminate.pose_filtering.residue_filter.ResidueData

Return the res_data instance from the input list with res id equal to res_id.

Parameters
  • res_id – The res_id to match with

  • res_datas – list of residue datas to look through

Raises

ValueError – if the res ID isn’t found in the list of res datas.