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