espressomd-users
[Top][All Lists]

## Re: [ESPResSo] Fwd: setmd skin

 From: Mikheil Azatov Subject: Re: [ESPResSo] Fwd: setmd skin Date: Fri, 25 Jun 2010 12:05:51 -0400

Thanks everyone especially Axel for explaining, it helped out a lot.

I still have one question about your answer Axel though. You wrote the half step "drag force" as F= -gamma*mass*v/2. I don't understand why you have a mass in the friction force. The Langevin equation that I saw in many books looks like m*a=F - gamma*v+Fb. Fb beeing a random force. So the friction force is gamma*v with gamma being a 3*pi*eta*d for a spherical particle, where eta is viscosity and d is a diameter.

So does it actually have mass in the friction term for the force ?  if yes i don't understand what gamma is, because simply dividing gamma I use by mass won't help in case where i have particles with different masses in the system.

Thanks,
Mike

On Fri, Jun 25, 2010 at 8:06 AM, Axel Arnold wrote:
On Thursday 24 June 2010 22:14:29 Mikheil Azatov wrote:
> setmd time_step 0.0129; setmd skin 0.5
> set temp 1; set gamma 156
> thermostat langevin \$temp \$gamma

Just to illustrate what Burkhard was talking about:

For the discretized velocity-Verlet Langevin equation, the half-step "drag
force" is F= -gamma*mass*v/2, the change of velocity therefore dv = F/mass*dt
= -gamma*dt*v/2. Therefore, your simulation can only be stable if gamma*dt/2
is smaller than 1.

In your case with gamma=156, for dt=0.0128, it is 1.0062, for dt=0.0129,
0.9984, so it should be stable for and only for the latter time step, as you
observe. If you play around, you will see that even being 10^-6 above the
critical time step of  2./156 is enough to destabilize the system. As Burkhard
said, the transition is pretty sharp...

For practical applications, I would suggest to stay at least an order of
magnitude below this limit, since otherwise you are quite far from a proper
discretization of the Langevin equation, in which you assume that the velocity
change per time step is small.

Axel

--
JP Dr. Axel Arnold Tel: +49 711 685 67609