schrodinger.application.peptide_workflow.monte module¶
- class schrodinger.application.peptide_workflow.monte.MonteOptions(CACHE_SIZE: int = 10, CLUSTERING_CUTOFF: float = 1.0, SWAP_INTERVAL: int = 1000, LOCAL_MINIMIZATION_INTERVAL: int = 100, NO_IMPROVE_STOP_STEP: int = 300000, NO_IMPROVE_HEAT_INTERVAL: int = 700, DEFAULT_MOVE_AMPLITUDE: float = 0.4, TEMP_KELVIN: float = 298.0, SUPERIMPOSE: bool = False)¶
Bases:
object
Options for monte so that args are not passed directly.
- CACHE_SIZE: int = 10¶
- CLUSTERING_CUTOFF: float = 1.0¶
- SWAP_INTERVAL: int = 1000¶
- LOCAL_MINIMIZATION_INTERVAL: int = 100¶
- NO_IMPROVE_STOP_STEP: int = 300000¶
- NO_IMPROVE_HEAT_INTERVAL: int = 700¶
- DEFAULT_MOVE_AMPLITUDE: float = 0.4¶
- TEMP_KELVIN: float = 298.0¶
- SUPERIMPOSE: bool = False¶
- classmethod fromArgs(args)¶
Creates an instance from arguments.
- Parameters:
args (argparse.Namespace) – job settings
- __init__(CACHE_SIZE: int = 10, CLUSTERING_CUTOFF: float = 1.0, SWAP_INTERVAL: int = 1000, LOCAL_MINIMIZATION_INTERVAL: int = 100, NO_IMPROVE_STOP_STEP: int = 300000, NO_IMPROVE_HEAT_INTERVAL: int = 700, DEFAULT_MOVE_AMPLITUDE: float = 0.4, TEMP_KELVIN: float = 298.0, SUPERIMPOSE: bool = False) None ¶
- schrodinger.application.peptide_workflow.monte.superimpose_bb_RMSD(peptide1, peptide2, peptide_backbone_atom_index_list)¶
Calculate the backbone RMSD after superimposition
- schrodinger.application.peptide_workflow.monte.calculate_bb_RMSD(peptide1, peptide2, asl_expr=None)¶
Calculate the RMSD in place
- schrodinger.application.peptide_workflow.monte.update_peptide_cache(peptide, cache_list, cache_size, clustering_cutoff, superimpose=False)¶
Update the clustered cache_list if a move is accepted :param peptide: incoming peptide :type peptide: Peptide :param cache_list: the clustered cached peptides in the run :type cache_list: [Peptide] :param cache_size: size of the cache list :type cache_size: int :param clustering_cutoff: rmsd cutoff to stop clustering :type clustering_cutoff: float :param superimpose: whether to superimpose the peptide pose when clustering :type superimpose: bool :return: Whether the cache is updated :rtype: bool
- schrodinger.application.peptide_workflow.monte.measure_crankshaft_rmsd(cached_peptide, peptide, superimpose)¶
Calculate the RMSD between cached_peptide and peptide :param cached_peptide: cached peptide :type cached_peptide: Peptide :param peptide: incoming peptide :type peptide: Peptide :return: RMSD between cached_peptide and peptide :rtype: float
- schrodinger.application.peptide_workflow.monte.monte(peptide, mover, minimizer, random_seed, monte_options, maxsteps=500000)¶
Run MC with input mover and minimizer :param peptide: input peptide :type peptide: Peptide :param mover: movement sampler to be used :type mover: PeptideMovements :param minimizer: minimizer to be used :type minimizer: PeptideMinimizer :param random_seed: random seed to create random generator :type random_seed: int :param monte_options: contains constants for monte :type monte_options: monte options class obj :param maxsteps: Maxium step for the simulation :type maxsteps: int
- schrodinger.application.peptide_workflow.monte.simulated_annealing(curr_temperature, curr_step, last_heat_step, temperature, no_improve_heat_interval)¶
Set the appropriate temperature given the current step and temperature
- Parameters:
curr_temperature (float) – Current temperature of the simulation
curr_step (int) – Current step of the simulation
last_heat_step (int) – Last time we reset or heat the temperature
temperature (float) – Baseline simulation temperature
no_improve_heat_interval (int) – interval to increase temperature
- schrodinger.application.peptide_workflow.monte.sort_write_to_output(cache_list, writer)¶
Sort the clustered results and write to the output
- Parameters:
cache_list ([Peptide]) – the clustered cached peptides in the run
writer (StructureWriter) – structure writer
- schrodinger.application.peptide_workflow.monte.metropolis(new_energy, old_energy, temp, random_generator)¶
Metropolis MC
- Parameters:
new_energy (float) – the energy after the move
old_energy (float) – the energy before the move
temp (float) – the current simulation temperature
random_generator (numpy.random.default_rng object) – random number generator object