Constructing a Model of Carbon Monoxide on a Ni(111) Surface

 

To construct a model of a surface we use the example of carbon monoxide binding to a Ni(111) surface.  Since Ni has a fcc lattice like Au we can begin with a model of Au(111).  The relative magnitude of the lattice parameters is Ni/Au = 0.864 so that  we need to multiply the unit cell parameters of our Au(111) PBC cell and all the atom coordinates in it by this factor.  You can do this using the program cellvec_xyz.f.  Use au_111_o.car as the input file and write ni_111_o.car as the output file.  you will also need to change the names of the atom types in the file.  To do this conveniently you may use the vi editor's global search and replace command.  For example, to replace AU by NI type

:1,$s/AU/NI

 

inside vi and you will see that all of the AU are replaced by NI.  Note that UNIX is case sensitive and vi editor is as well.  You also need to replace Au by Ni etc.

 

Now you have an appropriate file to read into InisightII.  Since you will be modifying atom types use the following (X-windows) version:

 

>insightII -axxess

 

The -axxess flag brings up insightII in an X-windows mode.

 

In the unit cell you have loaded the oxygen atoms are arranged in a (3 x 3)R30o lattice.  The side view of the lattice you have loaded will have the following appearance (the colors may be different).

To make a CO molecule you will want to add one atom and then change the identities of the atoms to make CO.  To add an atom use the trick of the Modify/Hydrogen command.  The program will automatically add H atoms to O.  Now the appearance of the structure is shown in the Figure below.



 You will want to delete the H atom closest to the nickel surface to obtain the result shown in the Figure below.

To change the atom types use the Atom/Replace command.  Just select the new atom type from the periodic table that appears and then click on the atom that you want to replace.  The carbon is closest to the surface as shown in the figure below.

Then use the Molecule/Put command to save the file.

 

The geometry is not correct, but we will correct it by running a geometry optimization using DMol3.