schrodinger.application.desmond.kinetics.cleanup module

Unbinding Kinetics Cleanup workflow. Cluster unbinding RAMD paths and return the centroid of the most populated cluster.

class schrodinger.application.desmond.kinetics.cleanup.CleanUp(chkpt_file: str, asl_receptor: str, asl_ligand: str, use_weights: bool, max_iter: int)

Bases: object

Class for cleaning up unbinding kinetics subjobs. We will collect all the path.mae files generated by each subjobs. We then will cluster all unbinding paths to identify the most populated cluster and use its centroid for subsequent infrequent metadynamics stage.

__init__(chkpt_file: str, asl_receptor: str, asl_ligand: str, use_weights: bool, max_iter: int)
Parameters
  • chkpt_file – filename of multisim checkpoint file from the master stage

  • use_weights – During clustering unbinding paths, when two waypoints from the adjacent paths are far away from the protein, their score will be zero if this value is True.

  • max_iter – Maximum number of iterations, to be passed to AffinityPropagation function

run()

Run the cleanup workflow.

read_archive_data()

Extract path.mae files from ramd_reactive_path stage and input cms from the task stage of RAMD workflow.

calculate_which_wps_bound(paths: List[List[structure.Structure]]) List[List[int]]

Calculate which waypoints are considered bound for all paths. When self.use_weights is True, WPs will be included in path distance calculations when at least one member of a WP pair is bound.

cluster_paths(paths_to_cluster: List[List[structure.Structure]])

After loading unbinding paths, can should cluster them, to extract the centroid of the largest cluster.

write_unbinding_paths()
schrodinger.application.desmond.kinetics.cleanup.parse_cmd(cmdline: List[str]) argparse.Namespace
schrodinger.application.desmond.kinetics.cleanup.main(cmdline=None)