Hi,
I wrote a updater plugin to zero out the angular momentum and angular acceleration of a collection of confined point particles that are being integrated using Langevin dynamics and I am wondering if I may be missing something subtle. The plugin seems to work reasonably well, but, depending on when the update is executed, zeroing out the angular acceleration may or may not make any difference. I guess my concrete question is then: when are updaters executed? As I understand it, accelerations are computed from scratch during second integration step, so I would lose any corrections that I compute to them if the updaters were run between the first and second steps: which may fine for updaters that act only on particle velocities. However, if the updater executes after accelerations are computed in step two, then I should be able to maintain a strictly irrotational system for all time.
Also, presumably the effective temperature will now be reduced to T*(1-2/ndof), but that's easy to fix. Is there anything potentially subtle that I should worry about?
BTW, it seems to me like ZeroMomentumUpdater should be augmented to zero out forces as well. Newtonian integrators obviously satisfy this, but the bd forces in the langevin integrator will push the center of mass around with a displacement proportional to deltaT^2.
Best,
Rodrigo