Mod:Hunt Research Group/control basics
control file basics
title io output my_output_file ensemble nst hoover 0.1 1.0 integration velocity verlet temperature 300.0 pressure 0.001 timestep 0.005 steps 2000 equilibration 500 #restart noscale rcut 10.0 rpad 0.1 ewald precision 1.0e-06 ewald evaluate 4 vdw mixing Lorentz rvdw 8.0 vdw shift print 100 stats 100 rdf 10 binsize 0.05 print rdf traj 501 100 0 dump 1000 job time 3600 close time 100 finish
- block 1
ensemble nst hoover 0.1 1.0 integration velocity verlet temperature 300.0 pressure 0.001
set the ensemble and any coupling constants
- do not use berendsen, can use hoover if far from equilibration but not ideal, best is langevin
- two numbers are the thermostat and barostate relaxation times in ps
- berendsen is a simple scaling of the temperature dependent on the difference to the target temperature
- it is good for getting quickly to the target temperature
- nose-hoover includes an artificial variable s with mass which can have a velocity and thus serves to absorb and release kinetic energy (temperature), the coupling is via the mass of s
decide on the integrator VV=velocity verlet and LF=leapfrog
- which is better!
temperature, in Kelvin pressure, in k-atmospheres so 0.001=1atm
- block 2 equilibration and run duration
- pre-equilibration
timestep 0.005 pico-seconds steps 2000 equilibration 500 scale 10 cap 10000 kBT/Å
- ready to run
timestep 0.005 pico-seconds steps 2000 equilibration 500 restart noscale
timestep is in pico-seconds so 1fs is 0.001 ps so the above is a 5fs timestep steps, how many steps to do 5fs*100=1ps, 5fs*100,000=1ns equilibration, is how many timesteps to equilibrate default x=0 scale, scale temperature (velocities) every n steps in equilibration, used only to get the system into a good starting point, then a second equilibration should be carried out cap, is an option to cap forces during the equilibration procedure, f is a max and defaults to 10000 kBT/Å restart, restarts from the endpoint of a previous run with no scaling of the temperature (velocities) reading the REVOLD file
- block 3 system electrostatics
rcut 10.0 Å rpad 0.1 Å ewald precision 1.0E-06 ewald evaluate 4
rcut, sets the long range interactions cutoff
- maximum half box size, advantages to making this smaller as simulation runs faster
- a minimum value 3-4 lj radius, but ideally this should be larger ... one should also set this to the same value as that for which the potential was developed!
rpad, dlpoly works on nearest neighbour lists, but when two particles have moved more than rpad the nearest neighbour list is rebuilt, rule of thumb rpad=1-5%*rcut, rcut=10 then 1%=0.01, 5%=0.05 in dlpolyclassic this is the delr command, but delr x =rpad 4x, so if delr=0.5 then rpad=0.5/4=0.125 ewald evaluate, evaluates the k-space contributions to the ewald sum every n timesteps ewald precision, calculate electrostatic forces using ewald sum, automatic parameter optimisation, default is 10*-20
- block 4 system vdw
vdw mixing Lorentz rvdw cutoff 8.0 Å vdw shift
vdw mixing, apply the defined mixing rules for the vdw cross terms when they are not already specified rvdw cutoff, set short range interaction cutoff to x Å vdw shift, shift the vdw interactions (PES) so that they scale smoothly to zero at the cut-off r_cut
- block 5 saving and printing data
print 100 stats 100 rdf 10 binsize 0.05 Å print rdf traj 501 100 0 dump 1000
print, print every x steps stats, accumulate statistics every x steps
- storage requirements are an issue, files can get very large, so set these 100-200 to start with
rdf / print rdf / binsize, collect and print the rdf, with bin size of xÅ traj, writes a HISTORY file, first number is when to start collecting, second number is the intervals to collect, third number is the data level 0=coords only, 1= coords and velocity, 2 =coords, velocity and forces
- here we start recording after equilibration
- this stores the trajectory and will influence the rdf evaluated by outside software
- for water use 10 but water is dynamic has low viscosity and moves very quickly
- for ionic liquids which are viscous use a much larger number say 100 or larger.
dump, sets the restart data dump interval to every x steps default is 1000
- block 6 set max time
job time 3600 close time 100 finish
close time, is the time a job has to finalise I/O before the job is killed job time, is the max time for the job, time in seconds 3600s=60min=1hr