GOMC-WSU / GOMC

GOMC - GPU Optimized Monte Carlo is a parallel molecular simulation code designed for high-performance simulation of large systems
https://gomc-wsu.org
MIT License
77 stars 35 forks source link

Procedure - New features addition to GOMC code #324

Open mleao882 opened 3 years ago

mleao882 commented 3 years ago

I would like to know with there is a way for me to add two new features to GOMC code in order to properly simulate the system I am working with. These features would be: 1) Improper energy calculation (harmonic type); and 2) New mixing rules other than Lorentz-Berthelot (arithmetic sigma) and Geometric Sigma; for instance the addition of a scale factor to cross-epsilon calculation. Thank you.

jpotoff commented 3 years ago

You can currently alter the intermolecular interactions from standard combing rules using NBFIX. This is how Charmm does it, and we've borrowed that method for GOMC. It requires modifying the force field parameter file, and there should be a MARTINI example in the repo that demonstrates how to do this. Adding support for improper dihedrals is definitely on our to-do list; maybe @msoroush can provide some info about what needs to be done to add that feature.

msoroush commented 3 years ago

@mleao882 Regarding special mixing rules, GOMC supports:

  1. Standard L.B. (arithmetic mean for sigma and geometric mean for epsilon) by default
  2. geometric mean for both sigma and epsilon by turning on the keyword VDWGeometricSigma in config file.

You can also modify VdW parameters for individual atom type using NBFIX.

To support Improper energy term, as @jpotoff mentioned, we are considering to add it in the future releases, but it requires special cares and modification of CD-CBMC and CBMC algorithm for regrowth, swap, intra-swap, and MEMC moves.

LSchwiebert commented 3 years ago

If you would like to develop new code for the GOMC project, I recommend that you create a branch with a suitable name and use "git pull origin development" to make sure that your changes are being developed on the code from the latest development branch. The development branch is currently stable and has patches/features that aren't yet merged into the master branch.

GregorySchwing commented 3 years ago

Slack _ GOMC - Developer Guide.pdf