htmd.adaptive.adaptiverun module#
- class htmd.adaptive.adaptiverun.AdaptiveMD#
Bases:
AdaptiveBase
Adaptive class which uses a Markov state model for respawning
AdaptiveMD uses Markov state models to choose respawning poses for the next epochs. In more detail, it projects all currently retrieved simulations according to the specified projection, clusters those and then builds a Markov model using the discretized trajectories. From the Markov model it then chooses conformations from the various states based on the chosen criteria which will be used for starting new simulations.
- Parameters:
app (
SimQueue
object, default=None) – A SimQueue class object used to retrieve and submit simulationsproject (str, default='adaptive') – The name of the project
nmin (int, default=0) – Minimum number of running simulations
nmax (int, default=1) – Maximum number of running simulations
nepochs (int, default=1000) – Stop adaptive once we have reached this number of epochs
nframes (int, default=0) – Stop adaptive once we have simulated this number of aggregate simulation frames.
inputpath (str, default='input') – The directory used to store input folders
generatorspath (str, default='generators') – The directory containing the generators
dryrun (boolean, default=False) – A dry run means that the adaptive will retrieve and generate a new epoch but not submit the simulations
updateperiod (float, default=0) – When set to a value other than 0, the adaptive will run synchronously every updateperiod seconds
coorname (str, default='input.coor') – Name of the file containing the starting coordinates for the new simulations
lock (bool, default=False) – Lock the folder while adaptive is ongoing
datapath (str, default='data') – The directory in which the completed simulations are stored
filter (bool, default=True) – Enable or disable filtering of trajectories.
filtersel (str, default='not water') – Atom selection string for filtering. See more here
filteredpath (str, default='filtered') – The directory in which the filtered simulations will be stored
projection (
Projection
object, default=None) – A Projection class object or a list of objects which will be used to project the simulation data before constructing a Markov modeltruncation (str, default=None) – Method for truncating the prob distribution (None, ‘cumsum’, ‘statecut’
statetype (('micro', 'cluster', 'macro'), str, default='micro') – What states (cluster, micro, macro) to use for calculations.
macronum (int, default=8) – The number of macrostates to produce
skip (int, default=1) – Allows skipping of simulation frames to reduce data. i.e. skip=3 will only keep every third frame
lag (int, default=1) – The lagtime used to create the Markov model. The units are in frames.
clustmethod (
ClusterMixin
class, default=<class ‘htmd.clustering.kcenters.KCenter’>) – Clustering algorithm used to cluster the contacts or distancesmethod (str, default='1/Mc') – Criteria used for choosing from which state to respawn from
ticalag (int, default=20) – Lagtime to use for TICA in frames. When using skip remember to change this accordinly.
ticadim (int, default=3) – Number of TICA dimensions to use. When set to 0 it disables TICA
contactsym (str, default=None) – Contact symmetry
save (bool, default=False) – Save the model generated
Example
>>> adapt = AdaptiveMD() >>> adapt.nmin = 2 >>> adapt.nmax = 3 >>> adapt.nepochs = 2 >>> adapt.ticadim = 3 >>> adapt.projection = [MetricDistance('name CA', 'resname MOL', periodic='selections'), MetricDihedral()] >>> adapt.generatorspath = htmd.home()+'/data/dhfr' >>> adapt.app = LocalGPUQueue() >>> adapt.run()