[ase-users] NEB Calculation
Abid Channa
abid_channa04 at yahoo.com
Thu Jan 11 01:03:13 CET 2018
Hey Ask Hjorth,
Bundle of thanks for your replies. this script was reaction pathway from fcc to hcp site via bridge.Now I want to get my reaction pathway from fcc to hcp via top not bridge (Diffusion of Pt adatom from fcc to hcp via top). For doing this, How I modify my script ?
Best,
___________________________________
ABID ALI
PhD (Marie Curie-ITN) FellowTheoretical ChemistryScience Institute, University of Iceland
On Wednesday, January 10, 2018, 10:59:47 PM GMT+5, Ask Hjorth Larsen <asklarsen at gmail.com> wrote:
Hi,
2018-01-10 17:59 GMT+01:00 Abid Channa <abid_channa04 at yahoo.com>:
> My target is " Diffusion of Pt adatom from fcc to hcp via Bridge" , system
> is fcc, Pt 111
>
> Script is
>
> 1- for fcc site in which I have described my initial.traj
>
> from ase.build import fcc111, add_adsorbate
> from ase.constraints import FixAtoms
> from ase.calculators.emt import EMT
> from ase.optimize import QuasiNewton
>
>
> slab = fcc111('Pt', size=(4, 4, 7))
> add_adsorbate(slab, 'Pt', 1.7, 'fcc')
> slab.center(axis=2, vacuum=4.0)
>
> mask = [atom.tag > 5 for atom in slab]
> slab.set_constraint(FixAtoms(mask=mask))
> slab.set_calculator(EMT())
>
> # Initial state:
> qn = QuasiNewton(slab, trajectory='initial.traj')
> qn.run(fmax=0.05)
>
> 2-for hcp site in which I have described my final.traj
>
>
>
> from ase.build import fcc111, add_adsorbate
> from ase.constraints import FixAtoms
> from ase.calculators.emt import EMT
> from ase.optimize import QuasiNewton
>
>
> slab = fcc111('Pt', size=(4, 4, 7))
> add_adsorbate(slab, 'Pt', 1.7, 'hcp')
> slab.center(axis=2, vacuum=4.0)
>
> mask = [atom.tag > 5 for atom in slab]
> slab.set_constraint(FixAtoms(mask=mask))
> slab.set_calculator(EMT())
>
> # Final state:
> qn = QuasiNewton(slab, trajectory='final.traj')
> qn.run(fmax=0.05)
>
> 3-Script for NEB calculation in which I have defined initial.traj fcc site
> and final.traj hcp site.
>
>
> from ase.io import read
> from ase.constraints import FixAtoms
> from ase.calculators.emt import EMT
> from ase.neb import NEB
> from ase.optimize import BFGS
>
> initial = read('initial.traj')
> final = read('final.traj')
>
> constraint = FixAtoms(mask=[atom.tag > 1 for atom in initial])
>
> images = [initial]
> for i in range(3):
> image = initial.copy()
> image.set_calculator(EMT())
> image.set_constraint(constraint)
> images.append(image)
>
> images.append(final)
>
> neb = NEB(images)
> neb.interpolate()
> qn = BFGS(neb, trajectory='neb.traj')
> qn.run(fmax=0.05)
>
>
> Best,
Okay, that is clear.
As far as I can see it works correctly though: The final five images
of the output trajectory describe the reaction path from the fcc site
to an adjacent hcp site. What was the exact source of trouble?
Best regards
Ask
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.fysik.dtu.dk/pipermail/ase-users/attachments/20180111/cfd6b3a0/attachment.html>
More information about the ase-users
mailing list