-
Notifications
You must be signed in to change notification settings - Fork 0
Moves :: IsoVol
The IsoVol is a Monte Carlo move designed for the Isobaric ensemble. This move uniformly scales the box vectors to change the volume.
Note: This move should not be carelessly used with Swap moves. There is no uPT ensemble without a set of special conditions met. An example of this is an ensemble such as the Gibb's Ensemble which couples two boxes to overcome the uPT problem by coupling the total volume and number of particles between two boxes. Consult your favorite statistical mechanics resource for more information as to why this can be a bad idea if done incorrectly.
Create Block Format:
IsoVol (Relative Move Probability)
modify (moveID) Style (Log/Linear)
This parameter defines if the attempted change in volume is performed linearly or on a log scale. By default the log scale is used since it is a more efficient algorithm for many systems.
modify (moveID) MaxDV (Maximum Volume Change)
Sets the initial maximum volume change. If TuneMax is set to false this number will remain unchanged throughout the simulation. If TuneMax is set to true this number will by dynamically set.
The choice of style will change how this value is used. If the style is 'log' then this will correspond to the range (exp(-max), exp(max)) while if it is linear it will correspond to (-max, max).
modify (moveID) tunemax (True/False)
If set to true the program will attempt to automatically change the maximum volume change based on the acceptance rate. It will try this until either the dynamiclimit is reached or the target acceptance rate is met.
modify (moveID) Dynamiclimit (Maximum Volume Change)
Sets the maximum volume change limit that TuneMax will attempt. It is recommended that this value be set to be smaller than the neighborlist cutoff so that neighborlist updates inbetween neighorlist rebuilds will not be needed.
modify (moveID) Dynamiclimit (Target Acceptance Rate)
Sets the target acceptance rate that the TuneMax feature will attempt to reach. For example if set to 50% the code will scale the Maximum Volume Change until a 50% acceptance rate is reached.
modify (moveID) UpdateFreq (# of Cycles between updates)
If TuneMax is set to True, the Max Volume Change will be tuned every N number of cycles as defined by this variable. Tuning too frequently can cause erratic results while doing it infrequently will may the TuneMax feature insignificant.