[gpaw-users] optB88-vdW
Jess Wellendorff
jewe at slac.stanford.edu
Wed Nov 27 17:24:57 CET 2013
Dear Glen,
I see that optB88-vdW might be broken due to our recent transition to a
never LibXC, where the optB88 exchange for optB88-vdW calculations has a
slightly different name than the previous local GPAW implementation of
that exchange had.
Have you compiled LibXC yourself for use with the GPAW trunk? If so, I
might be persuaded to fix the naming in gpaw/xc/vdw.py and let you test
the fix.
Best,
Jess Wellendorff
On 11/26/2013 12:16 PM, Glen Jenness wrote:
> Dear users,
> Is optB88-vdW available in the svn branch? I tried running the following:
>
> import time
>
> from ase.atoms import Atoms
> from ase.lattice.surface import fcc111, add_adsorbate
> from ase.constraints import FixAtoms
> from ase.optimize.lbfgs import LBFGS
> from ase.parallel import parprint
>
> from gpaw import GPAW, Mixer, FermiDirac
>
> verb = False
> mix = Mixer(beta=0.05, nmaxold=5, weight=100.0)
> occ = FermiDirac(0.1)
> convergence = {'energy': 1e-05,
> 'density': 1e-04}
>
> parprint('Mixer = %s' % str(mix))
> parprint('Occupations = %s' % str(occ))
>
> functionals = ['optB88-vdW']
>
> for functional in functionals:
> calc = GPAW(mode='lcao', basis='dzp', txt='%s.txt' %
> functional.lower(), kpts=(3,3,1), occupations=occ, xc=functional,
> mixer=mix, maxiter=500, spinpol=False)
>
> rhodium = fcc111('Rh', (1,1,4), vacuum=8.0)
> constraint = FixAtoms([0, 1])
> rhodium.set_constraint(constraint)
> rhodium *= (2,2,1)
>
> parprint('%s' % str( rhodium))
>
> co = Atoms('CO', positions=[(0,0,0), (0,0,1.14)])
> add_adsorbate(rhodium, co, 1.8, position='ontop')
>
> rhodium.set_calculator(calc)
>
> parprint('Doing %s xc:' % functional)
> t1 = time.time()
> old = rhodium.get_potential_energy()
> t2 = time.time()
> parprint('Energy = %f' % old)
> diff = (t2 - t1) / 3600.0
> parprint('Time = %f' % diff)
>
> and got:
>
> File
> "/home/vlachos/glenjenness/programs/gpaw/build/lib.linux-x86_64-2.7/gpaw/xc/libxc.py",
> line 62, in initialize
> self.xc = _gpaw.lxcXCFunctional(xc, x, c, nspins)
> TypeError: an integer is required
>
> Adding in some extra print statements to xc/libxc.py reveals that the
> variable x is getting returned as None.
>
> Is optB88-vdW still available?
>
> Glen
>
> --
> Dr. Glen Jenness
> Catalysis Center for Energy Innovation (CCEI)
> University of Delaware
--
-------------------------------------------------------------
Jess Wellendorff
Postdoctoral Scholar
SUNCAT Center for Interface Science & Catalysis
SLAC National Accelerator Laboratory, U.S.A.
jewe at slac.stanford.edu
-------------------------------------------------------------
More information about the gpaw-users
mailing list