[ase-users] vdW functional in GPAW program Pt-O dimer
Dawid, A.
A.Dawid at tue.nl
Wed Sep 16 14:19:36 CEST 2009
Hi all GPAW-users
I have run very simple script to calculate the Van der Waals correction in non-self consistent mode.
from ase import *
from gpaw import GPAW
from gpaw.vdw import FFTVDWFunctional
a = 6. # Size of unit cell (Angstrom)
c = a / 2
# Pt-O molecule:
d = 2.1 # Bond length
molecule = Atoms([Atom('O', (c - d / 2, c, c),magmom=1),
Atom('Pt', (c + d / 2, c, c))],
cell=(a, a, a), pbc=True)
calc = GPAW(nbands=18, h=0.2, xc='PBE', kpts=(8,6,1),
spinpol=True,
convergence={'energy': 100,
'density': 100,
'eigenstates': 1.0e-9,
'bands': 'occupied'})#, txt='CO.txt')
vdw = FFTVDWFunctional(nspins=2,
Nalpha=20, lambd=1.2,
rcut=125.0, Nr=2048,
size=None)
molecule.set_calculator(calc)
e2 = molecule.get_potential_energy()
calc.write('PtO.gpw')
vdW_dif = calc.get_xc_difference(vdw)
vdW_energy = e2 + vdW_dif
print 'PtO molecule energy: %5.5f eV' % e2
print 'vdW oxygen molecule energy: %5.5f eV' % vdW_energy
print 'vdW dif energy: %5.5f eV' % vdW_dif
The result:
PtO molecule energy: -7.19200 eV
vdW oxygen molecule energy: -116.53280 eV
vdW dif energy: -109.34080 eV
This energy seams to be quite huge ;-). Have you any idea what I do wrong with that ?
Best regards
Aleksander Dawid
e-mail: A.Dawid at tue.nl
Technical University Eindhoven
More information about the ase-users
mailing list