150 likes | 284 Views
Efficient factorization of van der Waals DFT functional. Guillermo Roman and Jose M. Soler Departamento de Física de la Materia Condensada Universidad Autónoma de Madrid. Van der Waals and DFT. Essential for molecular solids and liquids, biological systems, physisorption, etc
E N D
Efficient factorization of van der Waals DFT functional Guillermo Roman and Jose M. Soler Departamento de Física de la Materia Condensada Universidad Autónoma de Madrid
Van der Waals and DFT • Essential for molecular solids and liquids, biological systems, physisorption, etc • (Semi)local LDA and GGA functionals cannot describe the nonlocal dispersion correlation. • Usual semiempirical add-on: • Exc = ELDA/GGA + EvdW • EvdW = -ijCijf(rij) / rij6 • True van der Waals density functional: • Exc[(r)] = ExGGA + EcLDA + Ecnl • Ecnl = (1/2)dr1dr2 (r1) (r2) (q1,q2,r12)
vdW density functional Dion, Rydberg, Schröder, Langreth, and Lundqvist, PRL 92, 246401 (2004)
Non-local correlation kernel D=(q1+q2)r12/2 =(q1-q2)r12/2 General-purpose, ‘seamless’ functional
Results for simple dimers M. Dion et al, PRL 92, 246401 (2004) (C6H6)2 Ar2 and Kr2 Binding distances 5-10% too long Binding energies 50-100% too large
Experiments Results for adsorption S.D. Chakarova-Käck et al, PRL 96, 146107 (2006) Benzene/Graphene Naftalene/Graphene
Results for solids Polyethylene Silicon Reasonable results for molecular systems Keeps GGA accuracy for covalent systems General purpose functional
The double integral problem • (q1,q2,r12) decays as r12-6 • Ecnl = (1/2) d3r1d3r2(r1) (r2)(q1,q2,r12) can be truncated for r12 > rc~ 15Å • In principle O(N) calculation for systems larger than 2rc ~ 30Å • But... with x~ 0.15Å (Ec=120Ry) there are ~(2106)2 = 41012 integration points • Consequently, direct evaluation of vdW functional is much more expensive than LDA/GGA
f3 f3p3 f2 f2p2 f4 f4p4 f1 f f1p1 x1 x2 x3 x4 x Interpolation as an expansion = General recipe: fj=ij f(x)=pi(x)
O( N log(N) ) algorithm do, for each grid point i find i and i find qi=q(i ,i ) find i = i p(qi ) end do Fourier-transform i k do, for each reciprocal vector k find uk = (k) k end do Inverse-Fourier-transform uk ui do, for each grid point i find i , i , and qi find i , i /i, and i / i find vi end do • No SIESTA-specific: • Input:i on a regular grid • Output: Exc , vixc on the grid • No need of supercells in solids • No cutoff radius of interaction
Lines: Dion et al • Circles: our results Ar2 GGA vdW Algorithm accuracy
If you can simulate a system with LDA/GGA, you can also simulate it with vdW-DFT Algorithm efficiency Conclusion