Hi all, Are you sure it is correct to say that E_KS is the system's "potential" energy? What about the kinetic energy use to calculate the Kohn-Sham levels?
Cheers NH On Fri, Feb 18, 2011 at 1:45 PM, aguado <[email protected]>wrote: > > Dear H.H. Guo, > > Yes, E_KS is the potential energy for your simulation. Maybe there is a > problem with terminology. In ab initio molecular dynamics, E_KS is sometimes > said to be the total energy of the electronic system. It includes all energy > contributions except the kinetic energy of the ionic system, that is, E_KS > is the total energy that you would obtain in a zero-temperature calculation. > The forces on atoms are calculated from E_KS through Hellman-Feynman > theorem. So in particular, E_KS already accounts for the ion-ion > interactions. > > The total energy in a Verlet (microcanonical) MD simulation is equal to the > sum of E_KS (potential energy of the system) plus the kinetic energy of the > ions, so it also includes the ion-ion interactions. > > In the MDE file, if you subtract E_KS from the total energy in a Verlet > run, you will get the kinetic energy, which can be exactly obtained from the > temperature. For example, if you consider a molecule which does not > translate but free to rotate, then Ekin= (3N-3)*kB*T/2. Of course, please > allow for some rounding error as the T is only given with a finite precision > in the MDE file (but is exactly calculated within the code). So no errors > here. Please check again. > > If you are using thermostats or barostats, then the total energy in the MDE > file includes kinetic and potential contributions from the additional > degrees of freedom associated to them. But E_KS continues to be the > potential energy, you still can deduce the kinetic energy from the > temperature, and so you can recover the physical total energy. > > Hope this helps. > > > Andres Aguado > > On Fri, 18 Feb 2011, guohuaihong wrote: > > >> Thanks, Andres. It is really helpful! I get *.MDE file now after setting >> "WriteMDhistory" as true, so simple and so useful! >> >> However, I am still puzzled by the data structure in MDE file. The iomd.f >> in SIESTA package, which takes care of this output, shows that >> ------------------------ iomd.f ---------------------------------------- >> write(iuene,"(6a)") '#Step', 'T(K)', 'E_KS', 'E_tot', 'Vol', 'P(kBar)' >> write(iuene,'(i6,1x,f9.2,2(1x,f13.5),1x,f11.3,1x,f11.3)') >> . istep, temp, eks*eV, getot*eV, volume, Psol >> ------------------------------------------------------------------------ >> >> with >> --------------------------- iomd.f ------------------------------------ >> c real*8 temp : Temperature of ions >> c real*8 eks : Kohn-Sham energy >> c real*8 getot : Total energy >> c integer istep : Present time step >> c real*8 volume : cell volume in Ang**3 >> c real*8 Psol : total pressure (static plus kinetik) in kBar >> --------------------------------------------------------------------- >> >> For the "Total energy getot", the "write_md_record.F" code tells that, >> ------------------------ write_md_record.F ----------------------------- >> getot = Etot_output + Ekinion + kn + kpr + vn + vpr >> ------------------------------------------------------------------------ >> >> The "dynamics.f' shows that >> -------------------------- dynamics.f -------------------------------- >> C real*8 kn : Kinetic energy of Nose variable >> C real*8 kpr : Kinetic energy of Parrinello-Rahman variable >> C real*8 vn : Potential energyy of Nose variable >> C real*8 vpr : Potential energyy of P-R variables >> ---------------------------------------------------------------------- >> >> From above, we can see that the 1st four >>> columes(istep,temp,eks*eV,getot*eV) in MDE file are, >>> >> MD steps, ionic temperature(ionic kinetic energy), electronic KS energy, >> and Total energy, >> respectively. >> >> But (Total energy - KS energy)/ionic temperature is not a constant, as you >> suggested! >> >> So here my consequent questions are: >> (1) Is E_KS is the potential energy of the system, as you said? >> (2) Why doesn't Total energy include ion-ion interaction? >> >> Looking forward to having your or other's reply, thanks! >> >> Best regards! >> >> H.H.Guo >> >> >> >> -----原始邮件----- >>> 发件人: aguado <[email protected]> >>> 发送时间: 2011年2月18日 星期五 >>> 收件人: siesta-l <[email protected]> >>> 抄送: >>> 主题: Re: [SIESTA-L] Potential energy saving in MD run >>> >>> >>> Dear guohuaihong, >>> >>> I'm not sure that I understand what you are precisely meaning, but the >>> potential energy at each step of an MD run is given in the file *.MDE, >>> under the column E_KS. This means that E_KS is the potential energy of >>> the >>> system, understood as the total energy (given in the E_tot column) minus >>> the kinetic energy (which is given in the form of a temperature in column >>> T). >>> >>> I hope this answers your question. I don't know either what kind of >>> system >>> are you simulating, but in case it is a finite system like a molecule or >>> cluster, keep in mind that the temperature definition depends on the >>> statistical ensemble. The T given in the *.MDE file is just one possible >>> definition, extracted from equipartition as applied to the kinetic >>> energy. >>> >>> Best wishes, >>> >>> Andres Aguado >>> >>> On Fri, 18 Feb 2011, guohuaihong wrote: >>> >>> >>>> Dear SIESTA users: >>>> >>>> >>>> I intend to get system potential energy (including electronic, ionic and >>>> pseudopotential) for each MD step >>>> >>>> as doing Nose molecular dynamics (MD) simulation in SIESTA. >>>> >>>> >>>> >>>> I have a few questions to ask: >>>> >>>> 1. How to obtain system potential? As we know, in each MD step, code >>>> only gives out >>>> E_KS and Free Energy >>>> >>>> of electrons. The total energy or the total potential won't be given >>>> until the last MD >>>> step. >>>> >>>> >>>> >>>> 2. The clue may lie in the following setting. >>>> >>>> SaveNeutralAtomPotential True >>>> >>>> SaveTotalPotential True >>>> >>>> However, according to the SIESTA-3.0-b manual, "SaveTotalPotential" >>>> is "to write the >>>> valence total effective >>>> >>>> local potential (local pseudopotential + Hartree + Vxc), at the >>>> mesh...". Does it >>>> include both electronic and >>>> >>>> ionic contributions? >>>> >>>> >>>> >>>> 3. If "SaveTotalPotential" only refers to the electronic part, I guess >>>> we have to use >>>> "SaveNeutralAtomPotential" >>>> >>>> to calculate ionic part. Is it correct? "SaveNeutralAtomPotential" is a >>>> new command in >>>> 3.0-b version compared >>>> >>>> with stable version 2.0.2 and defines "the sum of the hartree potential >>>> of a pseudo >>>> atomic valence charge plus >>>> >>>> the local pseudopotential". Then, both have local pseudopotential part, >>>> how can we avoid >>>> the double-counting? >>>> >>>> >>>> >>>> 4. How to save those potential in one file (such as *.VT or VH) in >>>> sequence like *.ANI >>>> during the MD runs. >>>> >>>> >>>> Any suggestion will be appriciated! Thank you very much! >>>> >>>> Best wishes, >>>> >>>> >>>> HH GUO >>>> >>>> >>>> >>>> >> >> >> -- >> Magnetism and Magnetic Materials Division >> Shenyang Materials Science National Laboratory >> Institute of Metal Research >> Chinese Academy of Sciences >> 72 Wenhua Road,Shenyang 110016, China >> >> >> +86-15140243901 (mobile) >> work: [email protected] >> >> >> >> >> >> >>
