UTmilestoning / ScMiles2.0

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ScMiles

Requirement:

A milestoning simulation with ScMiles requires the following:

  1. Python3 (Anaconda3 recommended), NAMD 2.13, and a computer/cluster with job scheduler (PBS or Slurm).

  2. anchors.txt: A text file with fixed-width values listing the coordinates in the space of collective variable of the anchors of a Voronoi tessellation. Each line represents the coordinates for one anchor. See example.

  3. A .psf file for the structure.

  4. pdb files for each anchor.

  5. input.txt: A configuration file where the parameters and setups are defined.

  6. sample.namd and free.namd: Two NAMD simulation configuration files: one for sampling at each milestone and the other one for starting new free trajectories from each milestone.

  7. submit: A bash script template that contains the path for NAMD and defines how many nodes requested for each simulation.

How to use:

** A detailed tutorial can be found in tutorial.docx**

a) Create a folder and decompress ScMiles.zip to this folder. After decompression, there should be two subfolders: ScMiles and my_project_input.

b) Copy .psf and/or other parameter files to my_project_input

c) Copy the anchor pdb files to my_project_input/pdb/ and rename them with 1.pdb 2.pdb …etc.

d) Create my_project_input/anchors.txt with a list of anchor positions, each line for one anchor.

e) Create my_project_input/input.txt.

f) Create my_project_input/colvar.txt. In this file, there should be two sections. The first one indicates how to define the collective variable in Colvar, and the second one defines the distance measurement to each anchor. In the distance measurement section, use “anchor” to replace the value of anchor. Only include the Colvar module.

g) (Optional) Create my_project_input/custom.colvar if needed. Only include the Colvar module.

h) Prepare NAMD configuration files and save to my_project_input. Rename the one for sampling with sample.namd, and the one for free trajectories with free.namd. Make sure all the parameters have absolute path, i.e. do NOT use ./ or ../.

i) Prepare a bash file for job submission with a name of submit and save to my_project_input. Change job name to “name”, and NAMD input file to “namd”.

j) Start the script by calling the main routine: python3 ScMiles/main.py &

• As an example, input files for solvated alanine dipeptide can be found in my_project_input/example

input.txt setups

outputname: output name in NAMD.

method: Milestoning method. 0 for classic milestoning; 1 for exact milestoning

Max_iteration: Max iteration number for exact milestoning

milestoneSearch: Method for milestones initializing. 0 for Traverse; 1 for Seek. If Traverse is selected, all possible combinations between each pair of anchors will be defined as milestones. Traverse only recommended for one-dimensional case.

initial_traj: for Seek function only. Indicates the number of free trajectories conducted from each anchor.

initial_time: for Seek function only. Indicates each the run time for each trajectory. Note that this is the upper time limit each trajectory can have. Once a milestone is reached, the trajectory will be terminated.

total_trajs: total number of initial snapshots from populating at each milestone.

start_traj: the first snapshot will be used as the initial conformation for free trajectory

traj_per_launch: the number of free trajectories each time to start

interval: the interval between two snapshots. For example, if interval is set to 10, free trajectories will use snapshots 1, 11, 21, 31…etc as initial conformations.

customColvars: “on" or “off” to indicate if any customized colvar exists.

custom_colvar: the number of custom colvars in custom.colvar. Use 0 if no custom colvar.

colvarsTrajFrequency: the frequency of each colvar are saved.

colvarsRestartFrequency: the frequency of each colvar are written to file.

anchorsNum: total number of anchors

anchorsPath: path of anchor.txt

reactant: milestone(s) associated to the reactant state. May use single integer to represent the cell number, and all the adjacent milestones will be marked as the reactant state, or use two comma-separated integers to represent a single milestone.

product: similar to reactant. milestone(s) associated to the product state.

pbc: milestones that associate to periodic boundary.

tolerance: tolerance in MFPT convergence check. 0.01 = 1%

jobsubmission: command for job submission on HPC. (sbatch or qsub)

jobcheck: command for job check on HPC. (squeue or qstat)

username: username on HPC

seed: random seed. Note that this is not the actual random seed used in NAMD. The seed used in NAMD will be a random number pulled based on the seed set in input.

About


Languages

Language:Python 52.7%Language:Rich Text Format 47.2%Language:Shell 0.1%