I've checked in an updated version of fix GCMC (and attached) that includes the following changes:
More general version of fix GCMC that now works with any pair style and can be used with kspace styles. Fix GCMC now has a "full_energy" option that is used for systems with complicated potential energy calculations, including the following: long-range electrostatics (kspace), many body pair styles, hybrid pair styles, eam pair styles, triclinic systems, and potential energy contributions from other fixes. Errors associated with use of fix gcmc together with fix shake have been remedied. Also, a new "charge" option has been implemented to allow insertion of atoms with a user-specified point charge. See updated fix gcmc documentation for further details.
Thanks for pointing out the issues with using fix gcmc together with fix shake. Please let me know if you uncover further issues with fix GCMC.
Also, please note that your input script uses fix gcmc with kspace style PPPM. The previous version of fix GCMC did not include long-range interactions (see documentation), but the new version does. If you continue to use the old version, I'd recommend turning off kspace in your input script (use a cutoff potential).
fix_gcmc.cpp (59.1 KB)
fix_gcmc.h (6.25 KB)
fix_gcmc.html (14.6 KB)