[QE-users] how to obtain random initial velocities with CP
Giuseppe Mattioli
giuseppe.mattioli at ism.cnr.it
Tue Oct 23 11:48:59 CEST 2018
Dear Riccardo
Thank you for the detailed information.
Best
Giuseppe
Quoting Riccardo Bertossa <rbertoss at sissa.it>:
> Hi,
>
> I had too the issue with starting random velocities.
> I think I've fixed it in the merge request
> https://gitlab.com/QEF/q-e/merge_requests/189, can you please give
> it a try?
>
>
> Regarding the reading of the velocities from the input:
> the documentation was wrong, because the units of the velocities
> were not correctly stated, it was corrected few months ago. I think
> that it works also without CG.
> But please note that after manually setting the velocities you
> should do a step of CG, that in fact does two steps in this case
> (one with the starting ions position and one with the position
> updated with the new velocities), to set the initial wavefunction
> velocity to a reasonable value with respect to the ions velocities.
> In my experience, if you don't do this, the kinetic energy that the
> wfc gain at the end is bigger than the kinetic energy that you get
> with the electron velocities calculated in the "correct" way.
>
> Note also that in the new version, I added an option "change_step"
> also for the electron_velocities when you change step. This was a
> little modification to allow a smoother change
> (before the electron velocities was not updated if the timestep
> changed, increasing the kinetic energy of the electrons that were no
> more moving, in some sense, following the ions).
>
> electron_velocities CHARACTER
>
> 'zero' : restart setting electronic velocities to zero
> 'default' : restart using electronic velocities of the
> previous run
> 'change_step' : restart simulation using electronic velocities of the
> previous run, with rescaling due to the timestep change.
> specify the old step via tolp as in
> tolp = 'old_time_step_value' in au.
> Note that you may want to specify
> ion_velocities = 'change_step'
> Note also that the change of dt is correctly
> implemented in the autopilot module
> (so, it is not necessary to use a restart file, and you can change
> easily dt on the fly and try more values of it)
>
>
> Best regards
>
>
>
> Riccardo Bertossa
>
>
>> Quoting GIUSEPPE MATTIOLI
>> Hi Paolo and Eduardo
>> I would like to add some consideration, because I have a similar
>> problem. I'm going to simulate the subtraction of one electron from a
>> thermalized system. To do this, in previous cp.x versions (up to
>> 4.3.2, AFAIK), it was possible to: 1) run a cp.x dynamics
>> (electrons+ions) with tot_charge=0.0; 2) minimize the electrons with
>> tot_charge=+1.0 using the last geometry saved in the previous run; 3a)
>> restart a new cp.x dynamics (electrons+ions) by using wavefunctions
>> optimized in step 2) and the last velocities saved in step 1)
>> (ion_velocities='from_input'), and run a few steps with a short dt to
>> assess the equilibration of the dynamics; 3b) restart again
>> (ion_velocities='change_step') by using the same dt as in 1).
>>
>> However, it is apparently not possible in recent versions, as the cp.x
>> manual states that
>>
>> 'from_input' : restart the simulation with atomic
>> velocities read
>> from standard input - see card
>> 'ATOMIC_VELOCITIES'
>> BEWARE: works only if
>> restart_mode='from_scratch',
>> tested only with electrons_dynamics='cg'
>>
>> As long as you know what you are doing, the simulation of oxidation or
>> reduction processes in thermalized systems was a desirable feature of
>> cp.x...
>> Best
>> Giuseppe
>>
>>
>> Quoting Paolo Giannozzi <p.giannozzi at gmail.com
>> <https://lists.quantum-espresso.org/mailman/listinfo/users>>:
>>
>>> /Hi Eduardo />//>/apparently ions_velocities="random" does not set
>>> random initial velocities, />/but velocity rescaling. Not sure
>>> why. In any event: I am not sure that />/starting the CP dynamics
>>> from ground-state positions and electrons and />/nonzero initial
>>> velocities is a good idea. />//>/Paolo />//>/On Sun, Oct 14, 2018
>>> at 8:21 PM Eduardo Menendez <eariel99 at gmail.com
>>> <https://lists.quantum-espresso.org/mailman/listinfo/users>>
>>> wrote: />//>>/Hi, />>/I am unable to start a MD with CP with
>>> random velocities setting an />>/initial temperature, using QE
>>> 6.3. Reading the input description I />>/understood that I could
>>> start it using ion_velocities = />>/'random', tempw= starting T.
>>> However, I always start with 0 temperature. />>//>>/This is my
>>> output />>/&CONTROL />>/calculation = 'cp' , />>/restart_mode =
>>> 'restart' , />>/pseudo_dir = './' , />>/outdir='./tmp',
>>> />>/wfcdir='./tmp', />>/prefix='mapi', />>/nstep = 500, />>/dt =
>>> 4.13413733424, />>/ndr = 51, />>/ndw = 51, />>/iprint =50,
>>> />>/isave = 50, />>// />>/&SYSTEM />>/ibrav=0,
>>> />>/celldm(1)=1.889726132885 , />>/nat=768, />>/ntyp=5,
>>> />>/ecutwfc=35.0 ! 50, />>/ecutrho=200.0 , ! 180, />>/input_dft =
>>> 'pbesol', />>/nr1b=21, nr2b=21, nr3b=21, ! nr1b=(2*r_cut)/(Lx)*nr1
>>> />>/nbnd = 1700, />>// />>/&ELECTRONS />>/conv_thr = 1.0e-5, />>/!
>>> options for CP />>/emass = 400.d0, ! default, Mosconi et al,PCCP
>>> 16,16137 (2014), />>/doi: 10.1039/C4CP00569D />>/emass_cutoff =
>>> 2.5d0, ! default />>/electron_dynamics = 'verlet' , />>//>>//
>>> />>/&IONS />>/ion_dynamics = 'verlet' , ! 'verlet' , />>/!
>>> ion_temperature = 'not_controlled', />>/ion_velocities = 'random',
>>> />>/tempw = 600.0 , />>// />>/&CELL />>/cell_dynamics = 'none'
>>> />>// />>/In the output I read />>/Ionic position will be re-read
>>> from restart file />>/All atoms are allowed to move />>/Ionic
>>> temperature control via canonical velocities rescaling :
>>> />>/temperature required = 600.00000K, tolerance = 100.00000K
>>> />>/...... />>/nfi ekinc temph tempp etot />>/enthal econs econt
>>> vnhh />>/xnhh0 vnhp xnhp0 />>/5 0.000002129555068 0.0 0.00
>>> -12738.991035174058 />>/-12738.991035174058 -12738.991033373713
>>> -12738.991031244159 0.0000 />>/0.0000 0.0000 0.0000 />>/6
>>> 0.000005713182507 0.0 0.00 -12738.991057915813
>>> />>/-12738.991057915813 -12738.991042309621 -12738.991036596439
>>> 0.0000 />>/0.0000 0.0000 0.0000 />>//>>/nfi begins at 5 because
>>> there were 4 previous steepest descent dynamics />>/(ould I reset
>>> the nfi counter? ), which got the wfc from a PWSCF
>>> />>/self-consistent run. />>//>>/Thanks, />>//>>/Eduardo Menendez
>>> Proupin />>/University of Chile />>/www.gnm.cl/emenendez
>>> />>/_______________________________________________ />>/users
>>> mailing list />>/users at lists.quantum-espresso.org
>>> <https://lists.quantum-espresso.org/mailman/listinfo/users>
>>> />>/https://lists.quantum-espresso.org/mailman/listinfo/users
>>> />//>//>//>/-- />/Paolo Giannozzi, Dip. Scienze Matematiche
>>> Informatiche e Fisiche, />/Univ. Udine, via delle Scienze 208,
>>> 33100 Udine, Italy />/Phone +39-0432-558216, fax +39-0432-558222 /
>>
>>
>> GIUSEPPE MATTIOLI
>> CNR - ISTITUTO DI STRUTTURA DELLA MATERIA
>> Via Salaria Km 29,300 - C.P. 10
>> I-00015 - Monterotondo Scalo (RM)
>> Mob (*preferred*) +39 373 7305625
>> Tel + 39 06 90672342 - Fax +39 06 90672316
>> E-mail: <giuseppe.mattioli at ism.cnr.it
>> <https://lists.quantum-espresso.org/mailman/listinfo/users>>
GIUSEPPE MATTIOLI
CNR - ISTITUTO DI STRUTTURA DELLA MATERIA
Via Salaria Km 29,300 - C.P. 10
I-00015 - Monterotondo Scalo (RM)
Mob (*preferred*) +39 373 7305625
Tel + 39 06 90672342 - Fax +39 06 90672316
E-mail: <giuseppe.mattioli at ism.cnr.it>
More information about the users
mailing list