[ase-users] NEB Convergence with k-point

Sungsik Kim sungsik312 at gmail.com
Wed Mar 11 17:11:04 CET 2015


Hello,

This Sungsik.

I am running associative desorption of 2O to O2 on Pd111 (3x3x3).

I have been running it for 6 months. It seems that a solution is converged,
but

it is too slow. I am using I-7 3rd gen computer.

Does the low number of k-point affect NEB convergence?

I use (3,3,1) k-point for Pd111 (3x3x3). Is k-point too low for 3x3x3 unit
cell?

here is code I used.

from ase import Atoms
from ase.constraints import FixAtoms
from ase.optimize import QuasiNewton
from ase.io import write
import numpy as np
from ase.io import read
from ase.neb import NEB
from ase.visualize import view
from ase.lattice.surface import fcc100, add_adsorbate
from ase.data.molecules import molecule
from ase.calculators.jacapo import Jacapo
from ase.vibrations import Vibrations
from ase.optimize import FIRE
from ase.lattice.surface import surface
from ase.constraints import FixBondLengths
from ase.constraints import FixBondLength
from ase.constraints import FixedPlane
from ase.io import read
from ase.optimize import BFGS
from ase.lattice.surface import fcc111,add_adsorbate
from ase.io.trajectory import PickleTrajectory
from ase.parallel import rank, size
import os

# Definition of Molecules
O2=molecule('O2')
CH3=molecule('CH3')
CH4=molecule('CH4')
H2=molecule('H2')


'''
# Initial State
slab = read('Pd-opti.traj')
slab.set_pbc(True)
slab.center(vacuum=10, axis=2)
add_adsorbate(slab, 'O', 1.5, (1.377, 0.795))
add_adsorbate(slab, 'O', 1.5, (5.500, 3.175))


f= FixAtoms(mask=[atom.tag > 1 for atom in slab])
slab.set_constraint(f)
view(slab)

calc2 = Jacapo('init-pd91-4.nc',
          xc='PW91',
              pw=350,
              kpts=(3,3,1),
              atoms=slab)
qn = QuasiNewton(slab, trajectory='init-pd91-4.traj')
qn.run(fmax=0.05)
print slab.get_potential_energy()
#view(slab)


# Final State
slab = read('Pd-opti.traj')
slab.set_pbc(True)
slab.center(vacuum=10, axis=2)
add_adsorbate(slab, O2, 6.5, (3.4385, 1.985))


f= FixAtoms(mask=[atom.tag > 1 for atom in slab])
c1=FixBondLength(27,28)
slab.set_constraint([f,c1])
view(slab)


calc4 = Jacapo('final-pd91-4.nc',
          xc='PW91',
          pw=350,
              kpts=(3,3,1),
              atoms=slab)
qn = QuasiNewton(slab, trajectory='final-pd91-4.traj')
qn.run(fmax=0.05)
print slab.get_potential_energy()
#view(slab)


# NEB Calculation
initial = read('init-pd91-4.traj')
final = read('final-pd91-4.traj')

f1= FixAtoms(mask=[atom.tag > 1 for atom in initial])

images = [initial]
for i in range(5):
    image=initial.copy()
    calc = Jacapo('De2O-neb-pd91-4_%i.nc' % i,
              xc='PW91',
                  atoms = image,
                  pw=350,
                  kpts=(3,3,1))
    images.append(image)
    image.set_constraint(f1)

images.append(final)

neb = NEB(images)
neb.interpolate()
qn = BFGS(neb, trajectory='De2O-neb-pd91-4.traj')
qn.run(fmax=0.05)
#view(images)
print 'de2O on pd9'

###########################################

Any help would be appreciated.

Sungsik
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.fysik.dtu.dk/pipermail/ase-users/attachments/20150311/e53dd5a9/attachment.html>


More information about the ase-users mailing list