schrodinger.application.glide.runner_utils module

This module has lower-level helper functions used by the runner module. Functions here often deal with Ligand or Pose objects, instead of dealing with Structures like most of the public APIs of the runner module.

schrodinger.application.glide.runner_utils.filter_by_core_RMSD(poses, lig_cons_data)

Filter the poses by core RMSD with the original core tolerance.

Parameters:
  • poses (generator of glide.Pose) – iterable of poses

  • lig_cons_data (LigandConstraintData) – ligand constraint data

Returns:

generator of poses

Return type:

(Pose)

schrodinger.application.glide.runner_utils.select_poses_for_pdm(refined_pose_ensemble: RefinedPoseEnsemble, config: Config, lig_cons_data: LigandConstraintData) [<class 'glide.Pose'>]

Take the best RefinedPoses from the ensemble, excluding near-duplicates and poses not satisfying applicable constraints.

Returns:

a list of Pose objects, with the size of the list capped by the job configuration.

schrodinger.application.glide.runner_utils.get_runner_io(stack, config, grid, logger)

Creates readers and writers, enters their context, and then returns the callables in the format expected by run_docking_workflow.

Parameters:
  • stack (contextlib.ExitStack) – An exit stack.

  • config (Config) – The job config.

  • grid (GridArchive) – The grid.

  • logger (logging.Logger) – A logger.

Returns:

The reader, list of pose writers, and list of skipped st writers.

Return type:

tuple[Iterable, list[Callable], list[Callable]]