openmaterials.ai / codes / AtomisticSkills mat-surface-adsorption

mat-surface-adsorption: adsorption energies on the sites of a slab

An AtomisticSkills skill that cuts a slab from a bulk crystal, places an adsorbate on every ontop, bridge and hollow site and relaxes each with a machine-learned potential.

What it is and how it works

E(adslab) - E(slab) - E(adsorbate)

AdsorptionCalc relaxes the bulk, cuts the slab at the given Miller index, relaxes the clean slab and the gas-phase molecule, then relaxes the adsorbate on each site. Each site's adsorption energy is the difference in eV.

Catalysis-trained potentials

Models trained on Open Catalyst data come first: EquiformerV2 S2EF-OC20, UMA uma-s-1p1 and MACE-OMAT-0. MPtrj-only models are discouraged for their force errors.

Slab geometry

The slab is at least 10 A thick and the vacuum at least 20 A by default. The adsorbate starts 0.9 A above the surface. --adsorption_sites picks ontop, bridge or hollow.

Relaxations

By default ASE BFGS relaxes the bulk, the clean slab and the adsorbate to fmax 0.05 eV/A within 500 steps. Each of the three relaxations has a flag to switch it off.

Inputs and outputs

Inputs are a bulk CIF or POSCAR, an adsorbate XYZ or SMILES string and a Miller index such as [1,1,1]. adsorption_results.json lists every site and the most stable one.

What people do with it

CO on Cu(111)

The worked example relaxes CO on the ontop, bridge and hollow sites of a Cu(111) slab with MACE-OMAT-0-small. The README gives -0.5 to -1.5 eV as typical, ontop usually most stable. CO on Cu(111) example README

How it is used

  1. Pick model and facet

    Choose an OC-trained model and a Miller index. Supply the bulk and adsorbate files.

  2. Build the slab

    calculate_adsorption.py relaxes the bulk and cuts a slab, 10 A of material, 20 A vacuum.

  3. Place and relax

    The adsorbate is set 0.9 A above each ontop, bridge and hollow site and relaxed.

  4. Read the energies

    adsorption_results.json gives E_ads per site and names the most stable site.