problems with AIREBO

Dear Carla,

Minimization procedure does not yield always the same result as there are many possible local minima.

Yes, it’s a known fact. Simulations started from identical systems will diverge due to round-off errors.

Your timestep is too high. Try using fix dt/reset.

Michal

The most curious (and physically impossible!) observation is that changing the frequency of restart dumps >affects the simulation itself. We also observe differences when the number of cpus is varied. A third >problem is the frequent observation of dangerous neighbour list builds. Our suspicion is that some kind of >memory management problem is occurring, and that perhaps all three behaviours are linked.

None of these issues have anything to do with AIREBO, they are generic.

Restarts affect the dynamics for the following reason. A restart forces

a reneighbor on the timestep that the restart file is written (which otherwise

might not occur until a later step). This is so that the atoms are inside the

simulation box in the restart file. A reneighbor re-orders atoms (may

migrate them to different procs). Which means 2 simulations will slowly

diverge due to round-off differences if they re-neighbor (or perform restarts)

on different timesteps.

Ditto for # of CPUs. There will be round-off differences between 2 simulations

running on different #s of CPUS. Thus they will slowly diverge over time.

It’s the nature of MD.

You can eliminate dangerous re-neighborings by setting
neigh_modify every 1 check yes delay 0

“Dangerous” means you may have waited too long to re-neighbor,

resulting in missed pairwise interactions (between 2 atoms that

moved close enough together). Doesn’t mean it did happen,

just that it theoretically could have.

Steve

>The most curious (and physically impossible!) observation is that
changing the frequency of restart dumps >affects the simulation itself. We
also observe differences when the number of cpus is varied. A third
>problem is the frequent observation of dangerous neighbour list builds.
Our suspicion is that some kind of >memory management problem is occurring,
and that perhaps all three behaviours are linked.

None of these issues have anything to do with AIREBO, they are generic.

Restarts affect the dynamics for the following reason. A restart forces
a reneighbor on the timestep that the restart file is written (which
otherwise
might not occur until a later step). This is so that the atoms are inside
the
simulation box in the restart file. A reneighbor re-orders atoms (may
migrate them to different procs). Which means 2 simulations will slowly
diverge due to round-off differences if they re-neighbor (or perform
restarts)
on different timesteps.

Ditto for # of CPUs. There will be round-off differences between 2
simulations
running on different #s of CPUS. Thus they will slowly diverge over time.
It's the nature of MD.

​i am thinking that we should perhaps make these two "floating point
demystified"​ blog posts a required reading for LAMMPS users.

http://blog.reverberate.org/2014/09/what-every-computer-programmer-should.html

http://blog.reverberate.org/2016/02/06/floating-point-demystified-part2.html

that should help prevent the recurring "issues" because of unexpectedly
diverging trajectories.​

​<evil grin>,
     axel.​