xmd Code
Brought to you by:
jrifkin
2012-06-23
- Add variable 'repot' to particle structure to save reference total
potential energy; will be used by MC commands.
- Added REFSTEP MC temp command to copy REFERENCE state to CURRENT
state if MC condition on potential energy is satisfied.
(x) Make 'select rand n' option
SELECT rand n
Select n random particles.
Uses new function shuffle() in sortsub.c.
(x) Make new commands to use in MC simulation
SWAP {types|coords} tag1 tag2
Swap either types or coords for atoms between groups tag1 and tag2
- Tested succesfully using ~/examples/verify.sh
(x) Remove CHECK_HEAP from code, it dates back to the Borland C++ days.
(_) Work out way to swap atoms between two tag groups that minimizes
the amount of searhing through the array. Maybe make an integer
work array as part of initial allocation, and use it for holding
tag indices?
(_) Make full test simulation
(_) Do separate commit dedicated to convering all source files to
indent 3 or 8 with spaces.
MOCK UP OF CODE
select ....
tag Ni
select ....
tag Al
MC START
repeat 100
# Saves current potential energy, positions
MC SWAP COORD Ni Al
# Sets mcenergy, nmc, nrej, nacc
MC TEST temp
end
# Print mcenergy, nmc, nrej, nacc
MC REPORT
MC RESET
NOTE: MC data not saved in state.
MC START - Calculate potential
MC SWAP - Swap particles
MC TEST - Test move
MC REPORT - Report values
MC RESET - Initialize values
2013-01-17
MERGE monte-carlo branch
- svn merge -r39:54 ../branches/monte-carlo/src src
- manually replace call to shuffle(sortindex,navailable) with randchoice(sortindex, navailable, navailable)
TODO
(x) Run unit tests
(x) Add new montecarlo test
(/) Run special montecarlo run (ilya)
(x) Document new mc swap features
(x) Correct documentation of Andersen command
(x) Print warning of PRESSURE STRESS ON when running PRESSURE ANDERSEN