schrodinger.application.desmond.remd module

Utilities for REMD.

Copyright Schrodinger, LLC. All rights reserved.

schrodinger.application.desmond.remd.is_water(site, constraint)
schrodinger.application.desmond.remd.get_nonduplicated_atom(ct)
schrodinger.application.desmond.remd.get_num_wateratom(model, selected_atom)
schrodinger.application.desmond.remd.get_num_nonwateratom(model, selected_atom)
schrodinger.application.desmond.remd.get_num_constraint(model: schrodinger.application.desmond.cms.Cms, selected_atom: List[List[int]]) int

Return number of constrained atoms in the cms. :param selected_atom: list of ‘hot’ atoms indices from each component CT

schrodinger.application.desmond.remd.get_degrees_of_freedom(model, selected_atom)
schrodinger.application.desmond.remd.get_rest_params(model, asl)

Returns parameters that are required for temperature ladder prediction

Returns

the tuple with the following values: degrees of freedom, number of selected waters, number of selected non-waters, number of constraints.

Return type

tuple(int, int, int, int)

schrodinger.application.desmond.remd.predict_temperature_ladder(temperature, exchange_probability, model, asl, should_fix=True, floaty=False)
Parameters
  • temperature (tuple(float, float)) – a tuple (t0, t1) temperature range in Kelvin

  • should_fix (bool) –

    ???

  • floaty (bool) –

    ???

Returns

returns a tuple with two lists. First list is a temperature profile, second list is probability profile.

Return type

tuple(list of floats, list of floats)

schrodinger.application.desmond.remd.get_prob_from_temp_ladder(temp_ladder: List[float], model: schrodinger.application.desmond.cms.Cms, asl: str) List[float]

Return the probability given the temperature ladder temp_ladder and the corresponding cms model and asl asl for the hot atoms.

schrodinger.application.desmond.remd.predict_with_temp_and_exch(temp, exchange_probability, model, asl)

Given temperature range and exchange_probability, predicts the number of replica and returns the temperature ladder.

schrodinger.application.desmond.remd.predict_with_nreplica_and_exch(n_replica, exchange_probability, base_temp, model, asl)

Given the base temperature, number of replicas, and exchange_probability, predicts the top temperature and returns the temperature ladder. :type n_replica: int :type exchange_probability: float :type base_temp: float :type model: schrodinger.application.desmond.cms.Cms :type asl: str

Returns

a list of temperatures in Kelvin (length n_replica) and exchange a list of corresponding exchange probabilities (length n_replica-1)

Return type

(list of floats, list of floats)

schrodinger.application.desmond.remd.predict_with_temp_and_nreplica(temperature, n_replica, model, asl)

Given the temperature range and number of replicas, predicts the exchange probability and returns the temperature ladder. :param temperature: a tuple of (min, max) temperatures, in Kelvin :type temperature: tuple(float, float) :type exchange_probability: float :type base_temp: float :type model: schrodinger.application.desmond.cms.Cms :type asl: str

Returns

a list of temperatures (length n_replica) and exchange a list of corresponding exchange probabilities (length n_replica-1)

Return type

(list of floats, list of floats)

schrodinger.application.desmond.remd.split_ct(ct, selected_atom)
schrodinger.application.desmond.remd.set_freezing_atommass(model, mass_scale)
schrodinger.application.desmond.remd.freeze_atom(model, asl, frozen_atom_mass_threshold=1000000000.0)
schrodinger.application.desmond.remd.write_ff_solute_tempering(model, out_fname, asl, scaling_factor, should_scale_torsion=True)

write cms.Cms to a file with scaled force field terms

Parameters
  • model (cms.Cms) – input cms.Cms

  • out_fname (str) – output file name

  • asl (str) – ASL expression to define rest atoms

  • scaling_factor (float) – T_ref/T_hot

  • should_scale_torsion (Boolean) – whether to scale dihedral terms

schrodinger.application.desmond.remd.rescale_ff_solute_tempering(model, asl, scaling_factor, should_scale_torsion=True)

return cms.Cms with scaled force field terms

Parameters
  • model (cms.Cms) – input cms.Cms

  • asl (str) – ASL expression to define rest atoms

  • scaling_factor (float) – T_ref/T_hot

  • should_scale_torsion (Boolean) – whether to scale dihedral terms

Return type

cms.Cms

Returns

rescaled cms.Cms

schrodinger.application.desmond.remd.rescale_ff(ct, rest_atoms, scaling_factor, should_scale_torsion=True)

scales force field terms for rest atoms

Parameters
  • ct (ffiostructure.FFIOStructure) – input/output structure handle

  • rest_atoms (list of int) – sequence of atom indices in rest region

  • scaling_factor (float) – T_ref/T_hot

  • should_scale_torsion (Boolean) – whether to scale dihedral terms