schrodinger.application.glide.ligand_designer module

This module provides the APIs behind the Ligand Designer panel and workflow. It combines binding site Phase hypothesis generation with R-group enumeration and Glide grid generation and docking. The docking uses a Glide HTTP server for speed.

schrodinger.application.glide.ligand_designer.num_glide_workers()

Determines number of workers from environment variable. If number of workers is not an integer or <= 0 we use default value of 2.

Returns

number of workers

Return type

int

exception schrodinger.application.glide.ligand_designer.GridgenRunningException(message='Grid generation is still running')

Bases: RuntimeError

__init__(message='Grid generation is still running')
class schrodinger.application.glide.ligand_designer.BuildServerTask(*args, _param_type=<object object>, **kwargs)

Bases: schrodinger.tasks.tasks.BlockingFunctionTask

Task to set up and start a glide server. The server performs core-constrained Glide docking.

The server state and intermediate files are in a scratch directory. A unique subdirectory is created for each ligand-receptor complex; if another object is created for the same complex, it will share the same directory. This allows the reuse of existing grid files, for example. However, only one object at a time can be performing an enumeration because the underlying Glide server process is single-threaded.

Variables

gridJobStarted – Signal when grid job has launched. Emitted with task

gridJobStarted

A pyqtSignal emitted by instances of the class.

gg_task

This class can be used to declare a public attribute on a CompoundParam. Declared public attributes can be used without error.

Example usage:

class Coord(CompoundParam):
    x: int
    y: int
    note = NonParamAttribute()

coord = Coord()
coord.note = "hello" # No error
class Input(*args, _param_type=<object object>, **kwargs)

Bases: schrodinger.models.parameters.CompoundParam

ligand_st: schrodinger.structure._structure.Structure

A parameter of the class.

receptor_st: schrodinger.structure._structure.Structure

A parameter of the class.

docking_keywords: dict

A parameter of the class.

start_gridgen: bool

A parameter of the class.

docking_keywordsChanged

A pyqtSignal emitted by instances of the class.

docking_keywordsReplaced

A pyqtSignal emitted by instances of the class.

ligand_stChanged

A pyqtSignal emitted by instances of the class.

ligand_stReplaced

A pyqtSignal emitted by instances of the class.

receptor_stChanged

A pyqtSignal emitted by instances of the class.

receptor_stReplaced

A pyqtSignal emitted by instances of the class.

start_gridgenChanged

A pyqtSignal emitted by instances of the class.

start_gridgenReplaced

A pyqtSignal emitted by instances of the class.

class Output(*args, _param_type=<object object>, **kwargs)

Bases: schrodinger.models.parameters.CompoundParam

server: schrodinger.application.glide.http_client.NonBlockingGlideServerManager

A parameter of the class.

serverChanged

A pyqtSignal emitted by instances of the class.

serverReplaced

A pyqtSignal emitted by instances of the class.

initConcrete(tmpdir=None, *args, **kwargs)
Parameters

tmpdir – Base temporary directory for server directories

mainFunction()
calling_contextChanged

A pyqtSignal emitted by instances of the class.

calling_contextReplaced

A pyqtSignal emitted by instances of the class.

failure_infoChanged

A pyqtSignal emitted by instances of the class.

failure_infoReplaced

A pyqtSignal emitted by instances of the class.

input: parameters.CompoundParam

A parameter of the class.

inputChanged

A pyqtSignal emitted by instances of the class.

inputReplaced

A pyqtSignal emitted by instances of the class.

max_progressChanged

A pyqtSignal emitted by instances of the class.

max_progressReplaced

A pyqtSignal emitted by instances of the class.

nameChanged

A pyqtSignal emitted by instances of the class.

nameReplaced

A pyqtSignal emitted by instances of the class.

output: parameters.CompoundParam

A parameter of the class.

outputChanged

A pyqtSignal emitted by instances of the class.

outputReplaced

A pyqtSignal emitted by instances of the class.

progressChanged

A pyqtSignal emitted by instances of the class.

progressReplaced

A pyqtSignal emitted by instances of the class.

progress_stringChanged

A pyqtSignal emitted by instances of the class.

progress_stringReplaced

A pyqtSignal emitted by instances of the class.

statusChanged

A pyqtSignal emitted by instances of the class.

statusReplaced

A pyqtSignal emitted by instances of the class.

class schrodinger.application.glide.ligand_designer.GridgenTask(*args, _param_type=<object object>, **kwargs)

Bases: schrodinger.tasks.jobtasks.CmdJobTask

Task to run glide grid generation.

Variables
  • RUNNING_MESSAGE – Message for RUNNING status

  • FAILED_MESSAGE – Message for FAILED status

RUNNING_MESSAGE = 'Generating grid(s)...'
FAILED_MESSAGE = 'Grid generation failed'
infile

This class can be used to declare a public attribute on a CompoundParam. Declared public attributes can be used without error.

Example usage:

class Coord(CompoundParam):
    x: int
    y: int
    note = NonParamAttribute()

coord = Coord()
coord.note = "hello" # No error
class Input(*args, _param_type=<object object>, **kwargs)

Bases: schrodinger.models.parameters.CompoundParam

ligand_st: schrodinger.structure._structure.Structure

A parameter of the class.

receptor_st: schrodinger.structure._structure.Structure

A parameter of the class.

ligand_stChanged

A pyqtSignal emitted by instances of the class.

ligand_stReplaced

A pyqtSignal emitted by instances of the class.

receptor_stChanged

A pyqtSignal emitted by instances of the class.

receptor_stReplaced

A pyqtSignal emitted by instances of the class.

class Output(*args, _param_type=<object object>, **kwargs)

Bases: schrodinger.tasks.jobtasks._CmdJobTaskOutput

gridfile: str

A parameter of the class.

gridfileChanged

A pyqtSignal emitted by instances of the class.

gridfileReplaced

A pyqtSignal emitted by instances of the class.

incorporation_fileChanged

A pyqtSignal emitted by instances of the class.

incorporation_fileReplaced

A pyqtSignal emitted by instances of the class.

log_fileChanged

A pyqtSignal emitted by instances of the class.

log_fileReplaced

A pyqtSignal emitted by instances of the class.

output_filesChanged

A pyqtSignal emitted by instances of the class.

output_filesReplaced

A pyqtSignal emitted by instances of the class.

initConcrete()

Override to customize initialization of concrete params.

makeCmd()

@overrides: tasks.AbstractCmdTask

Child classes must override.

checkGridfile() bool

Return whether the specified taskdir contains a gridfile compatible with the input ligand.

checkReflig() bool

Whether the ref ligand file is equivalent to the input ligand

updateReflig()

Overwrite the ref ligand if it isn’t equivalent to the input ligand

calling_contextChanged

A pyqtSignal emitted by instances of the class.

calling_contextReplaced

A pyqtSignal emitted by instances of the class.

failure_infoChanged

A pyqtSignal emitted by instances of the class.

failure_infoReplaced

A pyqtSignal emitted by instances of the class.

input: parameters.CompoundParam

A parameter of the class.

inputChanged

A pyqtSignal emitted by instances of the class.

inputReplaced

A pyqtSignal emitted by instances of the class.

job_configChanged

A pyqtSignal emitted by instances of the class.

job_configReplaced

A pyqtSignal emitted by instances of the class.

max_progressChanged

A pyqtSignal emitted by instances of the class.

max_progressReplaced

A pyqtSignal emitted by instances of the class.

nameChanged

A pyqtSignal emitted by instances of the class.

nameReplaced

A pyqtSignal emitted by instances of the class.

output: parameters.CompoundParam

A parameter of the class.

outputChanged

A pyqtSignal emitted by instances of the class.

outputReplaced

A pyqtSignal emitted by instances of the class.

progressChanged

A pyqtSignal emitted by instances of the class.

progressReplaced

A pyqtSignal emitted by instances of the class.

progress_stringChanged

A pyqtSignal emitted by instances of the class.

progress_stringReplaced

A pyqtSignal emitted by instances of the class.

statusChanged

A pyqtSignal emitted by instances of the class.

statusReplaced

A pyqtSignal emitted by instances of the class.

schrodinger.application.glide.ligand_designer.read_json_file(filename)

Read a JSON file. If there are issues reading it (doesn’t exist, syntax errors…) quietly return an empty dict.

Return type

object

schrodinger.application.glide.ligand_designer.md5sum(input_str)

MD5 hex digest of a string.

Return type

str

schrodinger.application.glide.ligand_designer.get_structure_digest(st, length=8)

Return an abbreviated MD5 hex digest given a Structure, considering only element, formal charge, and XYZ coordinates.

Parameters
Returns

hex digest

Return type

str