espressomd-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ESPResSo] DPD and velocity verlet integration


From: Axel Arnold
Subject: Re: [ESPResSo] DPD and velocity verlet integration
Date: Tue, 28 Jul 2009 10:57:14 +0200
User-agent: KMail/1.9.4

On Saturday 25 July 2009 23:03, Jacob Kirkensgaard wrote:
> Hello
>
> I am implementing some DPD polymer simulations and would like to use
> the modified velocity-Verlet (VV) algorith used by Groot and Warren in
> Groot and Warren, J. Chem. Phys. 107 (11) 1997. I attach a snapshot of
> the equations:
> As is stated the usual VV is recovered for lambda = 0.5. The  
> documentation is close to non-existing on this matter so here are the  
> questions:
> 
> 1: Does the implemented version of the VV include the 0.5*Delta t^2  
> term in the first step? This is shown in the above paper to be crucial  
> to temperature control in DPD. There is mentioning of some scaling of  
> the forces in the code (integrate.c) but I am unsure if it means  
> exactly this...

In Espresso, the forces are rescaled by 0.5*Delta t^2, and the velocities by 
Delta t. Therefore, for example your first equation reduces to:

r(t+Delta t) = r(t) + v(t) + f(t)
 
> 2: I suspect the lambda thing is NOT implemented in Espressos version  
> of the VV - does anyone know?

No, it isn't, but on the other hand, should be easy to implement. The second 
equation in the Espresso rescaling reads:

tilde v(t + Delta t) = v(t) + 2 lambda f(t)

Since Espresso so far does only lambda=1/2, there is no prefactor in front of 
f(t), but that wouldn't be difficult to introduce. The places to look into 
are propagate_vel_pos and propagate_vel. There are two routines, since the 
combining of step one and two of the Verlet scheme safes some time, but 
cannot be done for some algorithms.

Cheers,
Axel

-- 
Dr. Axel Arnold 
Fraunhofer SCAI
Schloss Birlinghoven, 53754 Sankt Augustin, Germany
Tel: +49 2241 14 2575



reply via email to

[Prev in Thread] Current Thread [Next in Thread]