Changing the ensemble when reading a restart file

Dear LAMMPS users,

Is there a way to change the thermodynamic ensemble used when reading from a restart file of a run that used a different ensemble?

For example, I generated binary restart files from runs in the canonical ensemble, but I would like to restart them in the microcanonical ensemble. Whenever I try to do this by re-specifying the ensemble with fix nve in the input script that reads the restart file, it’s like the command is “skipped over” and it just runs it in the NVT ensemble again.

I would greatly appreciate your insights,

First off - and very important, please do not confuse using commands like “fix nve” or “fix nvt” with running in NVE or NVT ensemble. This is not correct. You will be simulating one of the (well defined) statistical mechanical ensembles only if additional conditions are fulfilled. Using “fix nve” only means that you are doing plain time integration, while “fix nvt” corresponds to time integration plus (by default) coupling of the (global) temperature to Nose-Hoove chains.

Second, LAMMPS does not recreate any fixes when reading a restart file with read_restart, so changing the time integration fix is trivial. As explained in the documentation for the read_restart command — LAMMPS documentation, certain fixes will store their internal state within the restart file and can retrieve it, but for that the fix must be re-specified with the same style and same fix-ID.

Thus, please provide a set of example input files, e.g. based on one of the examples in the LAMMPS examples folders, and corresponding log files, that demonstrate your problem and also explain how you arrive at your conclusion.

1 Like