order of events in a timestep


Is there a list somewhere that shows the order of actions in a given timestep? For example, if in the same timestep I have the following commands operating:

fix nve

fix langevin

fix bond/break




is all the output going to happen before the fixes, or after, or does it depend on the type of output and the type of fixes?

Also, does the run every command work with equal-style variables? I tried and I got an error.

variable restartFreq equal stride(9999,29999,10000)
reset_timestep 0
timestep 0.005
run 29999 every v_restartFreq "write_restart degraded_*.restart"

ERROR: Illegal run command (run.cpp:95)

I'm breaking bonds every 10000 steps (which also seems to not work with equal-style variables?) and I'm trying to save the system before every bond-breaking step. (The above was from a test run; the actual runs are much longer, which is why I want to save them at the end of every equilibrating stage.)

I would appreciate any ideas. Thank you!


I'm not sure if I understood your questions but...

This pdf below contains some information about the LAMMPS timestep
loop and about the ordering of the fixes. If you are talking about the
order of action of the fixes the rule is: if two fixes are supposed to
act in the same point in the timestep loop then the first fix that
appears in your script is called before, the only exception is if you
substitute your fix by other fix of the same type and ID. This
information is written in some place in the documentation.


If you have the variable

variable freq equal 10000

you should use it as

run ${freq}

and not

run v_freq.

Rodrigo Freitas

You cannot use a variable in the form v_foo in the
run every command. Some commands allow that
but unless the doc page says a command specifically
supports it, it does not.