[Pw_forum] question on slow rescaling of velocities
degironc
degironc at sissa.it
Mon Feb 5 22:51:29 CET 2007
Temperature rescaling is performed in PW/dynamics_module.f90.
Look for delta_t and you'll find that
! ... delta_t, nraise are used to change the temperature as follows:
!
! ... delta_t = 1 : every 'nraise' step the actual
! ... temperature is rescaled to the
! ... initial value.
! ... delta_t /= 1 and delta_t > 0 : at each step the actual
temperature
! ... is multiplied by delta_t;
this is
! ... done rescaling all the
velocities.
! ... delta_t < 0 : every 'nraise' step the
temperature
! ... reduced by -delta_t.
!
Searching further for delta_t you'll find the actual code dealing with
temperature rescaling
(which is rather straightforward).
Thus for delta_t < 0 every nraise steps the kinetic energy is rescaled
so as to
reduce the (istantaneous) temperature by delta_t .
Temperature rescaling is a way to extract energy from your system by
reducing
the kinetic energy, however kinetic and potential energy are roughly in
equilibrium
(energy equipartition between all quadratic degrees of freedom if you
are close to
equilibrium) thus the amount of energy you should extract is roughly
twice the change
in kinetic energy (temperature) that you want at the end.
An alternative could be (I think, never actually tried) to restart the
calculation setting the
input temperature to the desired temperaure and define delta_t=1 and
nraise to something like
50-100. In this way every nraise steps the temperature (calculated as
the average kinetic energy
in the last nraise steps) will be rescaled to the input temperature.
Within a few rescaling cycles
it should stabilize at the desired temperature.
stefano
Eduardo Ariel Menendez P wrote:
>Hi,
>I am changing the temperature of a sample from 3000 to 1360 K. I thought
>that with the setting below the temperature would rescale in 200 steps,
>but it goes much more slowly.
>
> &IONS
> ion_dynamics = 'verlet' ,
> upscale = 10.D0 ,
> ion_temperature = 'rescaling' ,
> tempw = 3000.D0 ,
> tolp = 1.D-3 ,
> nraise = 1,
> delta_t = -8.2D0,
>
>1) IS there somthing wrong in this setting?
>2) Is the net temperature rescaling equal to delta_t*nstep/nraise, or this
>is only an estimate?
>3) It seems that I must either scale longer time or increase delta_t. Is
>there any other option?
>
>Thanks
>Eduardo
>_______________________________________________
>Pw_forum mailing list
>Pw_forum at pwscf.org
>http://www.democritos.it/mailman/listinfo/pw_forum
>
>
More information about the users
mailing list