schrodinger.application.peptide_workflow.minimize module

class schrodinger.application.peptide_workflow.minimize.AbstractMinimizer

Bases: object

Minimize class, used to minimize the peptide.st and report the energy

__init__()
initStack()

Intializes the proper context management

setUpPeptide()

This initializes proper environment for the current minimizer, assign FF, etc

minimize()

Runs the actual minimization and write energy to peptide.st

setRamachandranBias(weight=1.0, temperature=298.0)

Enable Ramachandran torsional bias.

Parameters:
  • weight (float) – Weight factor for Ramachandran energy contribution

  • temperature (float) – Temperature for Ramachandran energy calculation (K)

computeRamachandranEnergy(peptide_t)

Compute Ramachandran bias energy for the peptide.

Parameters:

peptide_t (Peptide) – Peptide object

Returns:

Ramachandran energy in kcal/mol

Return type:

float

class schrodinger.application.peptide_workflow.minimize.OPLSMinimizer(clash_tolerance=100, dielectric_constant=1.0)

Bases: AbstractMinimizer

Primary use case: conformational sampling This is the OPLS minimizer for conformational sampling without a receptor

__init__(clash_tolerance=100, dielectric_constant=1.0)
Parameters:

stack (contextlib.ExitStack) – An exit stack

initStack(stack)

Initialize environment using stack. :param stack: An exit stack :type stack: contextlib.ExitStack

setUpPeptide(stack, minimize_st)

Initiate the minimizer and structure assignment :param stack: An exit stack :type stack: contextlib.ExitStack :param minimize_st: structure to initiate the minimizer atomtyping, ff assignment, etc. :type minimize_st: structure.Structure

minimize(peptide_t)

Minimize the peptide_t :param peptide_t: peptide to be minimizaed :type peptide_t: Peptide

class schrodinger.application.peptide_workflow.minimize.SkateMinimizer(grid_file, glide_keywords)

Bases: AbstractMinimizer

Primary use case: rigid receptor docking Minimize with Skate/Glide, minimize the interaction with receptor using Glide scoring function

__init__(grid_file, glide_keywords)
Parameters:
  • grid_file (string) – grid_file

  • glide_keywords (dictionary) – glide keywords to use with glide.Config

initStack(stack)

Intializes the proper context management

setUpPeptide(stack, minimize_st)

Initiate the minimizer and structure assignment :param stack: An exit stack, which is not used. :type stack: contextlib.ExitStack :param minimize_st: structure to initiate the minimizer atomtyping, ff assignment, etc. :type minimize_st: structure.Structure

minimize(peptide_t)

Minimize the peptide_t :param peptide_t: peptide to be minimizaed :type peptide_t: Peptide

minimizeXyz(peptide_t)

Use glide.minimize_xyz to minimize and score the peptide_t This is similar to the Post docking minimization in Glide :param peptide_t: peptide to be minimizaed :type peptide_t: Peptide

minimizeTorsions(peptide_t)

Use TorsionAndPlacementMinimizer to minimize and score the peptide_t :param peptide_t: peptide to be minimizaed :type peptide_t: Peptide

scoreAndUpdatePeptide(peptide_t)

Score the self.peptide_pose and update the st and energy of peptide_t This assumes self.peptide_pose is already minimized :param peptide_t: peptide to be updated :type peptide_t: Peptide

rescaleSkateEmodel(energy)

Rescale emodel for poses that Glide flags as BAD_ENERGY (>8000).

When Glide minimization fails to produce a valid emodel, fall back to grid-based VDW+Coulomb energy to differentiate bad poses. For highly clashing poses (ecoul_vdw > 10), compress to log scale so they remain distinguishable but don’t dominate MC acceptance.

Parameters:

energy – Raw emodel value from Glide scoring.

Returns:

Rescaled energy.

Return type:

float

class schrodinger.application.peptide_workflow.minimize.RotamerSkateMinimizer(grid_file, glide_keywords, random_seed=42)

Bases: SkateMinimizer

SkateMinimizer with rotamer library side chain sampling.

After a move, samples rotamers only for residues that were moved, in random order. Each rotamer is checked for internal clashes before evaluating grid energy. The best non-clashing rotamer is fixed before proceeding to the next residue, then the torsional and xyz minimizers run on the result.

CLASH_THRESHOLD = 100.0
__init__(grid_file, glide_keywords, random_seed=42)
Parameters:
  • grid_file – Glide grid archive path.

  • glide_keywords – Glide keywords for config.

  • random_seed – Seed for randomizing rotamer sampling order.

setUpPeptide(stack, minimize_st)

Set up pose and cache which residues have rotamer library data.

Residues involved in disulfide or thioether bonds are excluded because their constrained ring topology causes AtomsInRingError when applying rotamers.

Parameters:
  • stack – Exit stack for context management.

  • minimize_st – Structure to set up.

GRID_ENERGY_REJECT = 1000.0
minimize(peptide_t)

Minimize peptide with rotamer pre-sampling of moved side chains.

Evaluates grid VDW+Coulomb energy before any work. Poses with grid energy above GRID_ENERGY_REJECT are rejected immediately, avoiding wasted rotamer sampling and minimization on hopeless poses.

Parameters:

peptide_t – Peptide to minimize.

Returns:

True if minimization succeeded.

Return type:

bool

class schrodinger.application.peptide_workflow.minimize.PrimeMinimizer(recept_st, recept_asl=None)

Bases: AbstractMinimizer

Primary use case: docking and induced-fit docking Minimize with PrimeServer, this minimizer is not a grid-based scoring, so it’s slow. With this approach, we can model the receptor flexibility

__init__(recept_st, recept_asl=None)
Parameters:
  • recept_st – receptor structure

  • recept_asl (string) – receptor ASL to define movable protein atoms

initStack(stack)

Initialize environment using stack. :param stack: An exit stack :type stack: contextlib.ExitStack

setUpPeptide(stack, minimize_st)

Initiate the minimizer and structure assignment :param stack: An exit stack :type stack: contextlib.ExitStack :param minimize_st: structure to initiate the minimizer atomtyping, ff assignment, etc. :type minimize_st: structure.Structure

minimize(peptide_t)

Minimize the peptide_t :param peptide_t: peptide to be minimizaed :type peptide_t: Peptide