|Subject:||Re: [ESPResSo-users] is it possible to turn off inertia ?|
|Date:||Mon, 6 Feb 2017 01:37:26 -0500|
|User-agent:||Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0|
Dear Ulf,Thank you for your detailed response. You are of course correct regarding the relaxation time. I was a bit sloppy in my language/thinking. I meant to make a different argument, which I'll explain below.
The reason I thought that getting rid of inertia might speed up things is that it would allow for a larger time step because it doesn't have to resolve transients like Verlet integration does. Consider, for example, a particle starting at some speed v0, subject only to drag, which will of course eventually stop (steady state). For Verlet integration to be stable, it needs to resolve this transient; quantitatively, if the friction force is gamma * m* v (depending on the version of Espresso, the factor of m may or may not be there), we have gamma * v = delta v / delta t, which implies a stability condition gamma * delta t << 1 (~ 0.1 ).
I don't care about these transients, as they are extremely short-lived in truly overdamped systems. So, if my reasoning is correct, the pitfall of Verlet integration is that it forces you to resolve these really short timescales, leading to long run times when dealing with heavily damped systems. In contrast, if you remove inertia and just get the velocity from the force it seems like you should be able to make the time step larger. Whereas with Verlet integration your step size would be, delta t ~ 0.1*tau_transient, now you can potentially have delta t ~ tau_transient or larger.
That's the argument I had in mind. I've implemented my own code for one of the simpler problems I'm working on (that doesn't take that long to run with Espresso) and it's doesn't seem like I get a significant speedup. Perhaps because there are still stability conditions (such as delta x has to be small so that forces don't change significantly) which limit how much I can increase the time step. So, overall, I suspect you are right that I should not expect a significant speedup.
|[Prev in Thread]||Current Thread||[Next in Thread]|