[Wien] Testing convergence with size for a surface

Stefaan Cottenier Stefaan.Cottenier at fys.kuleuven.be
Wed Mar 15 14:23:03 CET 2006


> I want to check the convergence of a surface calculation versus the 
> slab thickness. The obvious way is to calculate the difference
>     E_diff = E_slab2 - E_slab1 - n*E_bulk
> where slab2 has n more layers than slab1. Unfortunately there is a 
> problem with this. For a conventional small cell bulk calculation, 
> RKMAX is rounded down (exact size depending upon the k-vector), so 
> it's not completely obvious what the RKMAX for the slabs should be and 
> this can make a big difference. I tried plotting E_bulk versus RKMAX 
> and interpolating, but I don't think I believe the results.
>
> Has anyone worked through this in detail to find a viable method?


Two possible tests I've used before (no guarantee it is sufficient for 
your purposes):

* Monitor :VZERO as a function of slab thickness, keeping the vacuum 
constant and sufficiently large. Take the slab thickness for which 
:VZERO saturates. (:VZERO gives the total, Coulomb and xc-potential at 
z=0 and z=0.5)

* Monitor :EFG or :HFF for the layer in the middle of slab, and see at 
which thickness it saturates and/or reaches the bulk value.

My general experience is that if one want to go to the accuracy one 
really would like to have, slabs become unreasonably thick. A 
speed/accuracy compromise is needed.

Stefaan


Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm



More information about the Wien mailing list