Skip to Content.
Sympa Menu

forum - Re: [abinit-forum] Etotal versus etotal

forum@abinit.org

Subject: The ABINIT Users Mailing List ( CLOSED )

List archive

Re: [abinit-forum] Etotal versus etotal


Chronological Thread 
  • From: matthieu verstraete <matthieu.jean.verstraete@gmail.com>
  • To: forum@abinit.org
  • Subject: Re: [abinit-forum] Etotal versus etotal
  • Date: Thu, 3 Sep 2009 15:23:24 +0200
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=GR19k1hVn+1W6PPeG+KPHuiBcTxPXbv4e40gjDxcgMXaGtRDNmQFdpjwNy7WDrrbIW PEh3Cx2OB/Qncwxqzxn/PK0MNmBUayWN/yYFTQZDuB10NZuvdEZachbweDt/wJeB4Gmr rYVSRpAUohAl7a/epRmj2wrUNCxrqxx4+4weo=

Guilty, as charged. The concept behind tphysel is in PRB 65 035111:

The result of a combination of a physical (Femi Dirac tphysel)
temperature and an artificial (tsmear, e.g. Marzari cold-smearing)
smearing is an effective smearing scheme, where the temperature for
the entropic term is tphysel and the smearing function is a
mathematical convolution (determines the occupation numbers, which
gives the value of the entropy) which depends both on tsmear and
tphysel. This is why in the tphysel case you specify both but it is
tphysel which should appear in front of the entropy, not tsmear.

Note that for physical temperature calculations you always have the
reference of setting tsmear=T and occopt 3, and then converging wrt
k-points. This avoids the additional cross-convergence of tsmear and
nkpt, but obviously is heavier (that's the whole point of
tphysel+tsmear, to improve k-point convergence).

> toldfe=1e-9, tphysel=0
> >>>>>>>>> Etotal= -2.24785888288957E+02
> >>>> Etotal (DC)= -2.24785888278458E+02
> etotal -2.2478510947E+02
this is wierd: the Etotal-s are already free energies, with the
entropic term subtracted. So etotal should be equal to them. Perhaps
it is recalculated somewhere else before the final output? And that
point would have a small bug. Could you test this difference as a
function of tsmear for instance, to see if there is a trend?


> toldfe=1e-9, tphysel=0.002131
> >>>>>>>>> Etotal= -2.24784859172166E+02
> >>>> Etotal (DC)= -2.24784864956616E+02
> etotal -2.2478486496E+02
Here etotal looks identical to Etotal(DC), as it should be, but the
difference with Etotal is about 1.e-6, instead of 1.e-8 as above... I
see no particular reason that the DC estimate should be worse in this
case wrt the direct calculation of the energy. Has anyone seen this in
norm-conserving calculations? Again, here, could you test if there is
a trend wrt tphysel? Perhaps with a very reduced cutoff if the runs
take time (and if the discrepancy is still there, of course).

cheers,

Matthieu

On Thu, Sep 3, 2009 at 2:12 PM, TORRENT Marc<marc.torrent@cea.fr> wrote:
> Dear Vincent,
>
> Some explanations (but not all).
>
> etotal is used to converge the scf cycle and contains an entropy energy
> computed with tsmear.
> It is obtained by direct scheme if iscf<10, by double-counting scheme if
> iscf>=10:
>
> iscf=7 :  etotal=e_intern      - tsmear*entropy
> iscf=17:  etotal=eDC_intern - tsmear*entropy
>
> Etotal (EtotalDC) is just printed at the end of the SCF cycle and recomputed
> at that level.
> It uses tphysel if not zero, else tsmear:
>
> If tphysel<>0:
> Etotal=e_intern      - tphysel*entropy
> EtotalDC=eDC_intern - tphysel*entropy
>
> If tphysel=0:
> Etotal=e_intern      - tsmear*entropy
> EtotalDC=eDC_intern - tsmear*entropy
>
> So, it explains the differences between etotal and Etotal.
> Why is it implemented like this: I don't know.
> The developer who introduced tphysel should be able to explain that.
>
>
> Concerning the difference between Etotal and EtotalDC when tphysel<>0... it
> sounds strange.
> But I cannot explore further if I'm not sure of the convergence of your SCF
> cycle.
> toldfe is not the right criterium.
> you should use tolvrs and put it to a very low value (i.e 1.d-15 or lower).
>
> Regards,
>
> Marc
>
>
>
> Etotal and Etotal
>
> Vincent Chevrier a écrit :
>
> Dear Bernard,
> thank you for your reply. I've rerun with toldfe=1e-9. But etotal does not
> always agree with Etotal(DC). See below, in all cases tsmear=0.01 and the
> runs only differ in the parameters stated.
>
> toldfe=1e-5, tphysel=0
> >>>>>>>>> Etotal= -2.24785447837035E+02
> >>>> Etotal (DC)= -2.24785888234037E+02
> etotal -2.2478510911E+02
>
> toldfe=1e-5, tphysel=0.002131
> >>>>>>>>> Etotal= -2.24785745210972E+02
> >>>> Etotal (DC)= -2.24784864246079E+02
> etotal -2.2478486425E+02
>

> when tphysel=0.002131 then etotal = Etotal(DC), but when tphysel=0 then
> etotal != Etotal(DC). Why is this, or more specifically what is:
>
> 1 - the cause of the difference between Etotal(DC) and etotal
> 2 - the effect of tphysel on the difference between Etotal(DC) and etotal
>
> Thanks
> Vincent
>
>
>
> Dear Vincent,
>
> With iscf=17 (the default value of iscf), ETOT
> is equal to the so-called "double counting" expression of the energy
>
>
> written "Etotal (DC)" in the .out file (you could check it in your .out
> file).
>
>
> Moreover, Etotal and Etotal (DC) (both written in the .out file) are
>
>
> expected to agree if
>
>
> your calculation is well converged.
> In your case, your convergence criterion
> is weak (toldfe 1.d-05) so Etotal and Etotal (DC)
> are not equal. You could
> increase you convergence criterion to check this.
>
> Best regards
> Bernard
>
>
> Vincent Chevrier a écrit :
>
>
> Hi,
> I am wondering what the difference is between Etotal and etotal for PAW
>
>
> calcs. I can't remember ever seeing a difference stated on the ABINIT
> website. I'm especially interested in knowing how tphysel affects this
> difference.
>
>
> I completed two runs with the same structure the only difference being
>
>
> tphysel=0 and tphysel=0.00213.
>
>
> >From the .out file:
> For tphysel=0:
> Kinetic energy = 1.72081044902126E+01
> Hartree energy = 1.17823500013938E+01
> XC energy = -3.59810665254476E+01
> Ewald energy = -1.07436906857906E+02
> PspCore energy = 8.93535605840166E+00
> Loc. psp. energy= -4.47984809673791E+01
> Spherical terms = -7.44950150296981E+01
> >>>>> Internal E= -2.24785658830422E+02
> -kT*entropy = 2.10993387856660E-04
> >>>>>>>>> Etotal= -2.24785447837035E+02
> and
> etotal -2.2478510911E+02
> For tphysel=0.002131
> Kinetic energy = 1.72075689848333E+01
> Hartree energy = 1.17845516746048E+01
> XC energy = -3.59818457081452E+01
> Ewald energy = -1.07436906857906E+02
> PspCore energy = 8.93535605840166E+00
> Loc. psp. energy= -4.48011025224259E+01
> Spherical terms = -7.44958705044103E+01
> >>>>> Internal E= -2.24788248875047E+02
> -kT*entropy = 2.50366407550064E-03
> >>>>>>>>> Etotal= -2.24785745210972E+02
> and
> etotal -2.2478486425E+02
> below is the input file. Can anybody help me understand:
> 1 - the cause of the difference between Etotal and etotal
> 2 - the effect of tphysel on the difference between Etotal and etotal
>
>
> Thanks
>
>
> Vincent
> Input file:
> ndtset 2
> tphysel1 0.002131
> tphysel2 0.0
> occopt 4
> tsmear 0.01
> pawecutdg 15
> ecut 15
> kptopt 1
> nshiftk 1
> shiftk 0.5 0.5 0.5
> kptrlatt 6 0 0
> 0 3 0
> 0 0 10
> nstep 50
> toldfe 1.0d-5
> ntypat 2
> znucl 3 14
> natom 34
> typat 1 1 1 1 2 1 1 1
> 2 1 1 1 2 1 1 1
> 2 1 1 1 1 2 1 1
> 1 2 1 1 1 2 1 1
> 1 2
> acell 1.5065427965E+01 2.8615352526E+01 8.4083802112E+00 Bohr
>
>
> rprim 1.0 0.0 0.0
>
>
> 0.0 1.0 0.0
> 0.0 0.0 1.0
> xred 7.4996953092E-13 5.0000000000E-01 0.0000000000E+00
> 9.6480532055E-02 1.9420479791E-01 0.0000000000E+00
>
>
> 2.7080350417E-01 3.4610078252E-01 0.0000000000E+00
> 1.5292044305E-01 2.5787557735E-02 0.0000000000E+00
> 4.1748605305E-01 1.6031572532E-01 0.0000000000E+00
> 2.5955975937E-01 9.5181187368E-02 5.0000000000E-01
> 4.0978302750E-01 2.5635768786E-01 5.0000000000E-01
> 9.6925526499E-02 3.9393640703E-01 5.0000000000E-01
> 4.2837868374E-01 4.3177429281E-01 5.0000000000E-01
> 9.0351946795E-01 8.0579520209E-01 0.0000000000E+00
> 7.2919649583E-01 6.5389921748E-01 0.0000000000E+00
> 8.4707955695E-01 9.7421244227E-01 0.0000000000E+00
> 5.8251394695E-01 8.3968427468E-01 0.0000000000E+00
> 7.4044024063E-01 9.0481881263E-01 5.0000000000E-01
> 5.9021697250E-01 7.4364231214E-01 5.0000000000E-01
> 9.0307447350E-01 6.0606359297E-01 5.0000000000E-01
> 5.7162131627E-01 5.6822570719E-01 5.0000000000E-01
> 5.0000000000E-01 0.0000000000E+00 0.0000000000E+00
> 4.0351946795E-01 6.9420479791E-01 0.0000000000E+00
> 2.2919649583E-01 8.4610078252E-01 0.0000000000E+00
> 3.4707955695E-01 5.2578755773E-01 0.0000000000E+00
> 8.2513946947E-02 6.6031572532E-01 0.0000000000E+00
> 2.4044024063E-01 5.9518118737E-01 5.0000000000E-01
> 9.0216972503E-02 7.5635768786E-01 5.0000000000E-01
> 4.0307447350E-01 8.9393640703E-01 5.0000000000E-01
> 7.1621316266E-02 9.3177429281E-01 5.0000000000E-01
> 5.9648053206E-01 3.0579520209E-01 0.0000000000E+00
> 7.7080350417E-01 1.5389921748E-01 0.0000000000E+00
> 6.5292044305E-01 4.7421244227E-01 0.0000000000E+00
> 9.1748605305E-01 3.3968427468E-01 0.0000000000E+00
> 7.5955975937E-01 4.0481881263E-01 5.0000000000E-01
> 9.0978302750E-01 2.4364231214E-01 5.0000000000E-01
> 5.9692552650E-01 1.0606359297E-01 5.0000000000E-01
> 9.2837868374E-01 6.8225707188E-02 5.0000000000E-01
>
>
>
>
>
>
>



--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dr. Matthieu Verstraete

Universite de Liège
Institut de Physique, Bat. B5
Allée du 6 aout, 17
B- 4000 Sart Tilman, Liège
Belgium

Phone : +32 4 366 37 50
Fax : +32 4 366 36 29

Mail : matthieu.jean.verstraete@gmail.com




Archive powered by MHonArc 2.6.16.

Top of Page