Is there a way for lammps to compute and output the contributions from between specific atom types into the kspace and lj tail correction ? For now I go through compute pair, compute group/group, or compute pe/atom, but none seem to be able to realize this.
well, the tail correction between 2 types is just
a number, computed from an analytic formula.
So you can compute that by hand. See any
stat mech book, like Allen and Tildesly.
If you want energy/forces between subsets of
atoms, then LAMMPS cannot do that on
the fly, since it is summing all of that together.
But you can check out the new rerun command
which allows you to read in dump snapshots and
compute things on them. If you defined a pair
style with only some terms enabled (e.g. the
others with LJ epsilon = 0) then you would
get a partial contribution.
The compute group/group command does allow
total energy/force between 2 groups of atoms (e.g.
two types), including Kspace.
I’m using the new fix rigid/npt to equilibrate TIP4P-2005 water, but have observed strong dependence of water density on the parameter Pdamp. With unit set as “real”, Pdamp > 200 leads to expansion of the box and there is no shrinking back. From Pdamp = 200 to 10, the simulated density changes from 0.9855 to 0.9966, getting closer and closer to the literature value 0.9979. The strange thing is: I have to set time step to be as small as 0.4 fs in order to stabilize the system at Pdamp = 10 ~ 200. I’m not sure if there are still mistakes in my simulations or “fix rigid/npt” is supposed to have very small Pdamp and time step. Has anyone met with similar problems ?
Regarding the timestep issue, apparently you do need to use smaller
timesteps than you would use if you were using "fix shake" (where
people typically use 1 or 2fs timesteps). 0.4fs does not seem
completely unreasonable to me. See:
I am not sure how tip4p-2005 differs from the Jorgensen1983 version of
tip4p, but have a look here:
When you start the simulations, are you starting from a conformation
which has been equilibrated? I'm guessing no, but that's okay. I
assume you are running NPT to try and to equilibrate the system before
starting an NVT run. In my experience, I have had all kinds of
problems with exploding boxes when I begin the simulation in a
conformation which is not yet well equilibrated. I sometimes have to
run the simulation for a while with a very small timestep (like
0.05fs). I run several short simulations, using successively larger
timesteps, and temperatures (and/or using different Pdamp parameters)
until the system is reasonably well equilibrated. During
equilibration, I would imagine it is a good idea to use smaller
timesteps than you normally would.
I don't know if it's reasonable to use damping parameters below 200fs
(perhaps somebody else has an opinion). But your situation does not
sound that terrible compared to what I have run into.
Let us know if you find a way to get tip4p-2005 water working.
My first Q would be why use fix rigid/npt for a TIP4P model,
instead of the pair_style tip4p. My 2nd point is that for a well-equilibrated
system Pdamp should not really affect the equilibrated pressure
value. If you start far from equilibrium, then it will effect how quickly
you get to equilibrium. Are you equilibrating to your target P, which means
that whatever density you are getting is yielding your target P?