Reaction Intermediates

When characterizing a surface in the context of a specific reaction, calculating adsorption energies for all of the reaction intermediates is often important.

Here, AutoCat has default structures for adsorbates of both the oxygen reduction reaction (ORR) and nitrogen reduction reaction (NRR) intermediates.

The names of all of the reaction intermediates can be imported and fed directly into AutoCat functions:

>>> from autocat.surface import generate_surface_structures
>>> from autocat.utils import extract_structures
>>> from autocat.adsorption import generate_adsorbed_structures
>>> pt_dict = generate_surface_structures(["Pt"])
>>> pt_struct = extract_structures(pt_dict)[0]
>>> orr_structs = generate_adsorbed_structures(
...     surface=pt_struct, 
...     adsorbates=ORR_INTERMEDIATE_NAMES,
...     use_all_sites=True
... )
>>> nrr_structs = generate_adsorbed_structures(
...     surface=pt_struct,
...     use_all_sites=True
... )
In the above example, orr_structs and nrr_structs have all of the corresponding intermediates at every identified unique surface site.

Alternatively, if you would like to access the ase.Atoms objects for the intermediates directly, they can be imported as a dict:

>>> from import ORR_MOLS
>>> from import NRR_MOLS

ORR Intermediates:

OOH*, O*, OH*

NRR Intermediates:

NNH*, NNH\(_2\)*, N*, NH*, NH\(_2\)*, NHNH*, NHNH\(_2\)*, NH\(_2\)NH\(_2\)*