forum@abinit.org
Subject: The ABINIT Users Mailing List ( CLOSED )
List archive
- From: Vincent Chevrier <vincent.chevrier@dahn.phys.dal.ca>
- To: forum@abinit.org
- Subject: Re: [abinit-forum] Etotal versus etotal
- Date: Fri, 4 Sep 2009 09:31:12 -0300 (ADT)
- Importance: Normal
Hi Marc,
1- Etotal vs EtotalDC:
I think the problem is closed:
Etotal-EtotalDC tphysel toldfe or tolvrs
-8.8E-04 0 1d-5
5.8E-06 0 1d-9
-1.5E-08 0 1d-15
4.4E-04 0.002131 1d-5
-1.0E-08 0.002131 1d-9
2.2E-10 0.002131 1d-15
the convergence increases as expected (although to different orders
depending on tphysel).
2 - Etotal/EtotalDC vs etotal:
Thanks for clarifying one more time! I don't remember this:
Etotal is e_intern - tphysel*entropy (implemented in prtene.F90)
etotal is e_intern - tsmear*entropy (implemented in etotfor.F90)
being stated anywhere in the description of the variables on the Abinit
website. As a non-developer user I would not have guessed it. It might be
worthwhile to mention it or unify the behavior since etotal and EtotalDC
are presented as equivalent in the tutorials.
Thanks
Vincent
> Hi Vincent,
>
> Apparently, there are two separated problems when using tphysel:
>
> 1- Etotal vs EtotalDC:
>
> Now you use a sufficiently small tolerance on density residual.
> Are now Etotal and Etotal DC equal when tphysel is used ?
> (I cannot read it with your pdf file...)
> I mean 10 digits or more... Are they closer than the results obtained
> with toldfe=1.d-9.
> If yes, the problem is closed.
> If not this is a bug.... and the origin of it is mysterious...
>
>
> 2- Etotal/EtotalDC vs etotal:
>
> When tphysel<>0:
> As I wrote yesterday, I can easily explain the difference.
> Etotal is e_intern - tphysel*entropy (implemented in prtene.F90)
> etotal is e_intern - tsmear*entropy (implemented in etotfor.F90)
>
> The first question is: which is the correct one ?
> Looking at your graph, it seems that Etotal is better (it converges wr
> to tsmear).
> Let Matthieu answer this question...
>
> The second question is: why is it implemented like this ?
> Again, let Matthieu answer this question...
> Perhaps it is sufficient to simply modify etotfor.F90 routine and put in
> it the same formula as in prtene.F90.
>
>
>
> Marc
>
>
>
> Vincent Chevrier a écrit :
>> Hi,
>>
>> I'm really sorry but I swapped the tphysel values in the previous
>> postings. It SHOULD have read:
>> toldfe=1e-9, tphysel=0
>> >>>>>>>>> Etotal= -2.24784859172166E+02
>> >>>> Etotal (DC)= -2.24784864956616E+02
>> etotal -2.2478486496E+02
>>
>> toldfe=1e-9, tphysel=0.002131
>> >>>>>>>>> Etotal= -2.24785888288957E+02
>> >>>> Etotal (DC)= -2.24785888278458E+02
>> etotal -2.2478510947E+02
>>
>> And so Etotal != etotal when tphysel != 0.
>>
>> As Matthieu suggested I varied tsmear and as Marc suggested used a
>> tolvrs=1e-15. See the attached plot. It therefore appears that the value
>> of etotal in the .out file is missing some contribution when using
>> tphysel. (I'm only plotting tsmear=[0.005:0.015] but the same trend
>> continues up to 0.05 and I didn't test beyond that).
>>
>> One should therefore use Etotal or EtotalDC when using tphysel and NOT
>> etotal? Is this a bug?
>>
>> Thanks
>> Vincent
>>
>>
>>> 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
>>>
>>>
>
- [abinit-forum] Etotal versus etotal, Vincent Chevrier, 09/02/2009
- Re: [abinit-forum] Etotal versus etotal, Bernard Amadon, 09/03/2009
- Re: [abinit-forum] Etotal versus etotal, Vincent Chevrier, 09/03/2009
- Re: [abinit-forum] Etotal versus etotal, TORRENT Marc, 09/03/2009
- Re: [abinit-forum] Etotal versus etotal, matthieu verstraete, 09/03/2009
- Re: [abinit-forum] Etotal versus etotal, Vincent Chevrier, 09/03/2009
- Re: [abinit-forum] Etotal versus etotal, TORRENT Marc, 09/04/2009
- Re: [abinit-forum] Etotal versus etotal, Vincent Chevrier, 09/04/2009
- [abinit-forum] problem with optic, pablo picasso, 09/04/2009
- Re: [abinit-forum] Etotal versus etotal, matthieu verstraete, 09/04/2009
- Re: [abinit-forum] Etotal versus etotal, matthieu verstraete, 09/04/2009
- Re: [abinit-forum] Etotal versus etotal, TORRENT Marc, 09/04/2009
- Re: [abinit-forum] Etotal versus etotal, Vincent Chevrier, 09/04/2009
- RE : [abinit-forum] Etotal versus etotal, Marc.TORRENT, 09/06/2009
- Re: [abinit-forum] Etotal versus etotal, matthieu verstraete, 09/06/2009
- Re: [abinit-forum] Etotal versus etotal, TORRENT Marc, 09/04/2009
- Re: [abinit-forum] Etotal versus etotal, Vincent Chevrier, 09/03/2009
- Re: [abinit-forum] Etotal versus etotal, matthieu verstraete, 09/03/2009
- [abinit-forum] problem with optic, Jason Beaudin, 09/08/2009
- Re: [abinit-forum] Etotal versus etotal, TORRENT Marc, 09/03/2009
- Re: [abinit-forum] Etotal versus etotal, Vincent Chevrier, 09/03/2009
- Re: [abinit-forum] Etotal versus etotal, Bernard Amadon, 09/03/2009
Archive powered by MHonArc 2.6.16.