Using transition_sampling¶
Upon installing transition_sampling, a command line entry point aimless_driver is created.
aimless_driver inputs.yml [--log-level=INFO] [--log-file=aimless.log]
inputs.ymldescribes all necessary inputs for the full pipeline, shown below.
log-leveldefaulted to
INFO, but can take valuesDEBUG, INFO, WARNING, ERROR, CRITICALin order of decreasing granularity.log-filedefaulted to
aimless.log, but can be set to the path log messages should be directed to.
inputs.yml Format¶
We’ve chosen the YAML format to describe the inputs to aimless_driver. It’s split into three main sections, one for
each present in Transition Sampling Workflow. Checkout the example input file on github.
md_inputs (Optional)¶
These are the required inputs for running aimless shooting and generating new shooting points with MD. If this section is excluded, MD will not be run and we will continue to the next present part.
engine_inputsenginestr (Required)Define what MD engine will be used. Currently only
cp2kandgromacsengine_dirstr (Required)Directory where temporary files created by engine (e.g. md.out) will be placed. If running over multiple nodes, all nodes must be able to access this (i.e.
/tmp/*may not work). Files here will not be deleted, so they can be inspected afterwards if anything went wrong.Note
This should be the full path.
md_cmdstr (Required)Command to launch one simulation with, excluding any specific input or output files
plumed_filestr (Required)Path to the PLUMED file containing COMMITTOR basins
delta_tfloat (Required)The \(\Delta t\) as defined in aimless shooting, in femtoseconds.
Other required engine specific inputs: see MD Engines
aimless_inputs
starts_dirstr (Required)Path to directory containing
.xyzfiles (in Å) of initial starting guessesoutput_namestr (Required)Prefix to the output names. Two files will be created,
<output_name>.xyzand<output_name>.csv. Note that this string should not include an extension.tempfloat (Required)Temperature to generate initial velocities at in Kelvin
n_parallelint (Required)Number of aimless shootings to run in parallel. Total number of simulations running at any given point is given by
n_parallel * 2n_pointsint (Required)Number of accepted shooting points to be generated by a single aimless shooting before considered “done”
n_state_triesint (Required)Number of times to reselect a known accepting state on failure to accept
n_vel_triesint (Required)Number of times to resample velocities after getting a rejected shooting point before retrying known accepting states
acceptor(Optional - can be defined, excluded, or null. In the latter two cases, usesdefault)Used to define what cases of committing should be considered accepted.
typestr (defaultormultibasin)
If
default, accept if the forward and reverse trajectories commit to any different basinsIf
multibasin, accept if the forward and reverse trajectories commit to a product basin and a reactant basin, which must be defined as lists below.reactantslist[int] (Required iftype = multibasin)The basins to be considered as “reactants”
productslist[int] (Required iftype = multibasin)The basins to be considered as “products”
colvar_inputs (Optional)¶
These are the required inputs to calculate new CVs from the results of aimless shooting. If this section is excluded, new CVs will not be calculated and we will continue to the next present part.
plumed_cmdstr (Required)Command to launch PLUMED with, the PLUMED binary
plumed_filestr (Required)Path to the
plumed.datthat contains CV definitionsoutput_namestr (Required)Path to file that PLUMED should dump CVs to in its COLVAR format
csv_inputstr (Optional)If you’ve excluded
md_inputsand don’t want to run it, you need to explicitly set the file name of the.csvfile produced by a previous run. Ifmd_inputsis defined and this field is missing ornull, the file name will be inferred from themd_inputssection.xyz_inputstr (Optional)If you’ve excluded
md_inputsand don’t want to run it, you need to explicitly set the file name of the.xyzfile produced by a previous run. Ifmd_inputsis defined and this field is missing ornull, the file name will be inferred from themd_inputssection.
likelihood_inputs (Optional)¶
These are the required inputs to perform likelihood maximization on the results of aimless shooting and calculated CVs If this section is excluded, likelihood maximization will not be performed and the program will exit after completing any preceding sections.
max_cvs: int (Optional)Set the maximum length of the set of CVs to be considered. If null or missing, all may be considered if the improvement for length i to i+1 is enough as given by Peters.
output_namestr (Required)Path to the file to put results of maximization in.
csv_inputstr (Optional)If you’ve excluded
md_inputsand don’t want to run it, you need to explicitly set the file name of the.csvfile produced by a previous run. Ifmd_inputsis defined and this field is missing ornull, the file name will be inferred from themd_inputssection.colvar_inputstr (Optional)If you’ve excluded
colvar_inputsand don’t want to run it, you need to explicitly set the file name of theCOLVARfile produced by a previous run. Ifcolvar_inputsis defined and this field is missing ornull, the file name will be inferred from thecolvar_inputssection.n_iterint (Optional)Global optimization is performed by basinhopping. This is the number of local optimization to perform per global optimizations. If missing, defaults to
100.use_jacbool (Optional)Set to
trueif you want to use use the analytical calculation for the jacobian during optimization, which generally is faster. Set tofalseto use a finite difference approximation. Defaults totrueif excluded.