[lammps-users] GCMC Clarification

Hello Lammps users,

The manual describes GCMC as attempting an “average” number of X insertions/deletions specified by the user but what does that mean exactly? Is it not attempting to do insertions/deletions X times every N steps?

It would make sense that a different number of insertions/deletions are attempted every N steps but I’m not sure what’s actually going on behind the scenes to achieve an average of X GCMC moves.

Micah Welsch
University of Kansas

From the documentation:

Every N timesteps the fix attempts both GCMC exchanges (insertions or deletions) and MC moves of gas atoms or molecules. On those timesteps, the average number of attempted GCMC exchanges is X, while the average number of attempted MC moves is M. For GCMC exchanges of either molecular or atomic gasses, these exchanges can be either deletions or insertions, with equal probability.

This translates to the following:
When you define the fix gcmc command, you provide the numbers for exchanges and for moves. What fix gcmc does is to take the sum of those two numbers and do that many “cycles” every N steps. For each “cycle”, however, it is not defined up front whether an exchange or a displacement is attempted. Instead a random number is taken and that decides which kind of step will be done next. Because of that, you may not end up with exactly the requested number of exchanges or moves, but over multiple steps you should get the corresponding averages.