[Pw_forum] Technique for converging Ecut and K-points?

Ben Palmer benpalmer1983 at gmail.com
Wed Feb 27 14:28:09 CET 2013


Dear Stefano,

I will modify my wrapper script to include more k-point options, and 
I've increased the number of k-points to begin with from 2x2x2 to 
6x6x6.  I will post my results shortly.  Thank you again for your help.

All the best,

Ben


> Dear Ben,
>
>      2x2x2 k-points with a 0.02 Ry width looks to me quite a daring small
> k-points set ... I would start with a somewhat denser 6x6x6 or 8x8x8 one...
>
>      the first check of convergence with respect to ecutwfc/ecutrho is
> fine BUT your interpretation is not.
>      what you conclude from there is that ecutwf=35  and ecutrho=140  are
> enough to converge the energy
>      in particular ecutrho=140 is enough !
>
>      The second stage is therefore to fix ecutrho=140 and check whether
> it is possible to REDUCE ecutwfc.
>
>       As for the convergence w.r.t. to k-points i would make a more
> systematic study...
>       reordering the data that you present...  and examining results for
> decreasing values of the smearing width
>
> width = 0.03
> 9956.6765:   K-point: 6,  Degauss: 0.03, energy: -154.05968822, time:
> 0m46.50s
> 9956.6735:   K-point: 8,  Degauss: 0.03, energy: -154.06335682, time:
> 1m20.19s     ?
> there is not enough information to decide what grid would be enough here...
> definitely you should test for 12, 16 (23 if needed) etc
>
> width = 0.02
> 9956.6754:   K-point: 6,  Degauss: 0.02, energy: -154.05986685, time:
> 0m46.42s
> 9956.6720:   K-point: 8,  Degauss: 0.02, energy: -154.06351667, time: 1m
> 8.18s
> 9956.6473:   K-point: 12, Degauss: 0.02, energy: -154.06227228, time:
> 3m59.45s  *
> 9956.6243:   K-point: 16, Degauss: 0.02, energy: -154.0622109, time:
> 6m41.03s
> a nicely complete series of calculations
> 12x12x12 is converged within a fraction of mry  ...
>
> width = 0.015
> 9956.6191:   K-point: 16, Degauss: 0.015, energy: -154.06218801, time:
> 6m40.66s     *
> 9956.6122:   K-point: 24, Degauss: 0.015, energy: -154.06234325, time:
> 27m28.22s
> 16x16x16 is converged withinn a fraction of mry... maybe 12 (or less) is
> enough but you didn't check
>
> width = 0.01
> 9956.6358:   K-point: 12, Degauss: 0.01, energy: -154.06191016, time:
> 3m47.69s
> 9956.6064:   K-point: 24, Degauss: 0.01, energy: -154.06231018, time:
> 27m31.26s  ?*
> who knows if (as probable) 24x24x24 is converged ...or even
> overkilling...  missing data at 16 and 20 would help to understand
>
> width = 0.005
> 9956.6004:   K-point: 24, Degauss: 0.005, energy: -154.06230709, time:
> 25m21.81s  ?
> again... no clue whether this is converged or not... data at 12,16,20...
> (and 28,32 if needed) are missing
>
> once converged results as function of smearing width are obtained
> you can decide which is the largest width that is still accurate and
> then what is the smallest k-point set that
> integrates it correctly...
>
> width     converged energy     converged grid
> 0.03             ?
> 0.02         -154.06227228, *         12
> 0.015       -154.06234325, *         16
> 0.01         -154.06231018, ?*       24 ?
> 0.005            ?
>
> looks like 0.02 and 12x12x12 is fine within a fraction of mry...
> maybe also 0.03 or larger with a smaller grid but there is no info to tell.
>
> HTH
>
> stefano
>
>> Dear Stefano,
>>
>> I have had a go at converging for Aluminium.  I wasn't too sure what to
>> do with the K-points, but I've had a go anyway.  This is what I have
>> done, step by step, with some results from the calculations.
>>
>> First I set k-points to 2, smearing as MV and a width of 0.02 for the
>> energy convergence.  I varied the energy from 10 to 50 (taking 50 as the
>> 'true' value), and selected the first within 1mRy of the 'true' energy.
>>
>> 113.2226:   K points: 2, ecut: 10, energy: -153.984951, time: 4.05s
>> 113.2237:   K points: 2, ecut: 15, energy: -153.99949084, time: 4.31s
>> 113.2251:   K points: 2, ecut: 20, energy: -154.00496366, time: 4.96s
>> 113.2261:   K points: 2, ecut: 25, energy: -154.00841338, time: 5.49s
>> 113.2268:   K points: 2, ecut: 30, energy: -154.00937872, time: 6.52s
>> 113.2283:   K points: 2, ecut: 35, energy: -154.01004897, time: 8.31s
>> 113.2292:   K points: 2, ecut: 40, energy: -154.01057988, time: 8.17s
>> 113.2306:   K points: 2, ecut: 45, energy: -154.01066204, time: 10.91s
>> 113.2314:   K points: 2, ecut: 50, energy: -154.01083456, time: 12.83s
>> 113.2315:   Converged energy cutoff ecutwfc: 35
>>
>> I then lowered ecutrho until, and selected the lowest value that fell
>> within 1mRy of the 'true' energy.
>>
>> 218.6003:   K points: 2, ecutwfc: 35, ecutrho: 252, energy:
>> -154.01105461, time: 10.98s
>> 218.6014:   K points: 2, ecutwfc: 35, ecutrho: 224, energy:
>> -154.01104417, time: 11.67s
>> 218.6031:   K points: 2, ecutwfc: 35, ecutrho: 196, energy:
>> -154.01069558, time: 8.82s
>> 218.604:   K points: 2, ecutwfc: 35, ecutrho: 168, energy:
>> -154.01054112, time: 9.99s
>> 218.6052:   K points: 2, ecutwfc: 35, ecutrho: 140, energy:
>> -154.01004897, time: 8.46s
>> 218.6064:   K points: 2, ecutwfc: 35, ecutrho: 112, energy:
>> -154.00962358, time: 7.22s
>> 218.6076:   K points: 2, ecutwfc: 35, ecutrho: 84, energy:
>> -154.00782952, time: 5.80s
>> 218.6082:   Converged energy cutoff ecutrho: 140
>>
>> At this point, I've got ecutwfc = 35 and ecutrho = 140, but I wasn't too
>> sure how to progress, so I attempted the following.  I set a large
>> number of k-points, 24x24x24, with a narrow smearing of 0.005.  I used
>> the energy cutoffs to then calculate a new reference energy for convergence.
>>
>> I increased the smear width and decreased the k-points in quite
>> arbitrary combinations, and looked for the combination that executed
>> fastest, while keeping within 1mRy of the new reference energy.
>>
>> 9956.6004:   K-point: 24, Degauss: 0.005, energy: -154.06230709, time:
>> 25m21.81s
>> 9956.6064:   K-point: 24, Degauss: 0.01, energy: -154.06231018, time:
>> 27m31.26s
>> 9956.6122:   K-point: 24, Degauss: 0.015, energy: -154.06234325, time:
>> 27m28.22s
>> 9956.6191:   K-point: 16, Degauss: 0.015, energy: -154.06218801, time:
>> 6m40.66s
>> 9956.6243:   K-point: 16, Degauss: 0.02, energy: -154.0622109, time:
>> 6m41.03s
>> 9956.6358:   K-point: 12, Degauss: 0.01, energy: -154.06191016, time:
>> 3m47.69s
>> 9956.6473:   K-point: 12, Degauss: 0.02, energy: -154.06227228, time:
>> 3m59.45s
>> 9956.672:   K-point: 8, Degauss: 0.02, energy: -154.06351667, time: 1m 8.18s
>> 9956.6735:   K-point: 8, Degauss: 0.03, energy: -154.06335682, time:
>> 1m20.19s
>> 9956.6754:   K-point: 6, Degauss: 0.02, energy: -154.05986685, time:
>> 0m46.42s
>> 9956.6765:   K-point: 6, Degauss: 0.03, energy: -154.05968822, time:
>> 0m46.50s
>>
>>    From this, I'd choose K-points 12x12x12 and smearing width 0.01 or 0.02.
>>
>> My final convergence settings were:
>>
>> ecutwfc = 35,
>> ecutrho = 140,
>> k points 12x12x12
>> smearing mv 0.01
>>
>> Would this be an acceptable way to chose the settings, or could I speed
>> up the end part?
>>
>> All the best,
>>
>> Ben Palmer, Student @ University of Birmingham
>>
>>> Dear All,
>>>         My previous post was actually more intended as an answer to Ben
>>> Palmer question than a comment to
>>> Ali Kachmar contribution. Sorry.
>>>         best regards,
>>>          stefano
>>>
>>>
>>> On 02/25/2013 02:58 PM, Stefano de Gironcoli wrote:
>>>> Dear Ali Kachmar,
>>>>
>>>> convergence w.r.t. ecutwfc (and ecutrho) and convergence w.r.t.
>>>> k-points sampling are rather independent issues and can be tested to a
>>>> large extent separately
>>>>
>>>> - convergence w.r.t. ecutwfc and ecutrho is  a property depending on
>>>> the highest Fourier components that are needed to describe the
>>>> wavefunctions and the density of your system.  his depends on the
>>>> pseudopotentials that are present in the calculation and do not depend
>>>> strongly, for a given set of pseudopotentials, on the particular
>>>> configuration because it depends mostly on the behaviour of the wfc in
>>>> the core region which is quite insensitive (in terms of shape) on the
>>>> environment.
>>>> So each pseudopotential has a required cutoff. An upperbound to this
>>>> value can be determined from any system that contains that pseudo.
>>>> The cutoff needed for a system containing several species is the
>>>> highest among those needed for each element.
>>>> Moreover, in US pseudo or PAW the charge density has contributions
>>>> from localized terms that may (an usually do in USPP) require quite
>>>> higher cutoff than the one needed for psi**2 (4*ecutwfc) ... hence the
>>>> possibility to vary and test independently for ecutrho ...
>>>>
>>>> My recommended strategy to fix ecutwfc and ecutrho is to perform total
>>>> energy (and possibly, force and stress) covergence test increasing
>>>> ecutwfc keeping ecutrho at its default vaule (=4*ecutwfc)  until
>>>> satisfactory stability is reached (typically ~1 mry/atom in the
>>>> energy, 1.d-4 ry/au in the forces, a fraction of a KBar in the stress)
>>>> ...  this fixes the converged value of ecutrho to 4 times the
>>>> resulting ecutwfc.
>>>> Now keeping this value for ecutrho one can try to reduce ecutwfc and
>>>> see how much this can be done without deteriorating the convergence.
>>>>
>>>> -convergence with respect to k-points is a property of the band
>>>> structure.
>>>> I would study it after the ecutwfc/ecutrho issue is settled but some
>>>> fairly accurate parameters can be obtained even with reasonable but
>>>> not optimal cutoff parameters.
>>>>
>>>> There is a big difference between convergence in a band insulator or
>>>> in a metal.
>>>>
>>>> In an insulator bands are completely occupied or empty across the BZ
>>>> and charge density can be written in terms of wannier functions that
>>>> are exponentially localized in real space.
>>>> Hence the convergence w.r.t the density of point in the different
>>>> directions in the BZ should be exponentially fast and anyway quite
>>>> quick...
>>>>
>>>> In a metal the need to sample only a portion of the BZ would require
>>>> an extremely dense set of k points in order to locate accurately the
>>>> Fermi surface. This  induces to introduce a smearing width that smooth
>>>> the integral to be performed... the larger the smearing width, the
>>>> smoother the function, and the faster the convergence results...
>>>> however the larger the smearing width the farther the result is going
>>>> to be from the accurate, zero smearing width, result that one would
>>>> desire.
>>>> Therefore different shapes fro the smearing functions have been
>>>> proposed to alleviate this problem and
>>>> Marzari-Vanderbilt and Methfessel-Paxton  smearing functions give a
>>>> quite mild dependence of the (k-point converged) total energy as a
>>>> function of the smearing width thus being good choices for metals.
>>>>
>>>> My recommended strategy for fix the k-point sampling in metals is
>>>> 1) chose the smearing function type  (mv or mp, recomended)
>>>> 2) for decreasing values of the smearing width (let's say from an high
>>>> value of 0.1  ry = 1.36 eV to a low value of 0.01 - 0.005 ry =
>>>> 0.136-0.068 eV if feasable) CONVERGE the total energy w.r.t to
>>>> smearing well within the global desired tolerance (of 1 mry/atom, for
>>>> instance)
>>>> 3) by examining the behaviour of the CONVERGED Energy vs smearing
>>>> width curve E(sigma) identify the smearing width for which E(sigma) is
>>>> within tolerance w.r.t. E(sigma==0) keeping in mind that for
>>>> methfessel-paxton E(sigma) ~ E(0) + A*sigma**4 + o(sigma**6) while for
>>>> marzari-vanderbilt the dependence is more likely E(sigma) ~ E(0)
>>>> +A*sigma**3 + o(sigma**4).
>>>> 4) select that value of the smearing width and the smallest set of
>>>> k-points for which this is converged.
>>>>
>>>> HTH
>>>>
>>>> stefano
>>>>
>>>>
>>>>
>>>> On 02/24/2013 06:54 PM, Ali KACHMAR wrote:
>>>>> Hi,
>>>>>
>>>>> as far as I know, there is no any techinques for choosing ecut and
>>>>> k-points.  Please have a look at the pwscf archive and make up a
>>>>> conclusion.
>>>>>
>>>>> Best,
>>>>> Ali
>>>>>
>>>>>> Date: Sat, 23 Feb 2013 19:55:51 +0000
>>>>>> From:benpalmer1983 at gmail.com
>>>>>> To:pw_forum at pwscf.org
>>>>>> Subject: [Pw_forum] Technique for converging Ecut and K-points?
>>>>>>
>>>>>> Hi everyone,
>>>>>>
>>>>>> I just wanted to ask if users have any techniques for choosing ecut and
>>>>>> k-points?  I've read that one way would be to start with a high number
>>>>>> of k-points and high energy cutoff, and use that energy as an almost
>>>>>> true value.  Then adjust k-points and energy cutoff from a lower
>>>>>> number/cutoff until it converges to the true value.  Would you try to
>>>>>> converge energy cutoff first, or k-points?  Does it matter which you
>>>>>> converge first?
>>>>>>
>>>>>> Thanks
>>>>>>
>>>>>> Ben Palmer
>>>>>> Student @ University of Birmingham
>>>>>> _______________________________________________
>>>>>> Pw_forum mailing list
>>>>>> Pw_forum at pwscf.org
>>>>>> http://pwscf.org/mailman/listinfo/pw_forum
>>>>> _______________________________________________
>>>>> Pw_forum mailing list
>>>>> Pw_forum at pwscf.org
>>>>> http://pwscf.org/mailman/listinfo/pw_forum
>>> _______________________________________________
>>> Pw_forum mailing list
>>> Pw_forum at pwscf.org
>>> http://pwscf.org/mailman/listinfo/pw_forum
>> _______________________________________________
>> Pw_forum mailing list
>> Pw_forum at pwscf.org
>> http://pwscf.org/mailman/listinfo/pw_forum
> _______________________________________________
> Pw_forum mailing list
> Pw_forum at pwscf.org
> http://pwscf.org/mailman/listinfo/pw_forum




More information about the users mailing list