Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Open Catalyst 2020 Nudged Elastic Band (OC20NEB)

Dataset Overview
PropertyValue
Size932 NEB relaxation trajectories
Reaction TypesDesorptions, Dissociations, Transfers
PurposeTransition state energy calculations
PaperCatTSunami (arXiv)
LicenseCC-BY-4.0

Overview

This is a validation dataset which was used to assess model performance in CatTSunami: Accelerating Transition State Energy Calculations with Pre-trained Graph Neural Networks. It is comprised of 932 NEB relaxation trajectories. There are three different types of reactions represented: desorptions, dissociations, and transfers. NEB calculations allow us to find transition states. The rate of reaction is determined by the transition state energy, so access to transition states is very important for catalysis research. For more information, check out the paper.

File Structure and Contents

The tar file contains 3 subdirectories: dissociations, desorptions, and transfers. As the names imply, these directories contain the converged DFT trajectories for each of the reaction classes. Within these directories, the trajectories are named to identify the contents of the file. Here is an example and the anatomy of the name:

desorption_id_83_2409_9_111-4_neb1.0.traj

  1. desorption indicates the reaction type (dissociation and transfer are the other possibilities)

  2. id identifies that the material belongs to the validation in domain split (ood - out of domain is th e other possibility)

  3. 83 is the task id. This does not provide relavent information

  4. 2409 is the bulk index of the bulk used in the ocdata bulk pickle file

  5. 9 is the reaction index. for each reaction type there is a reaction pickle file in the repository. In this case it is the 9th entry to that pickle file

  6. 111-4 the first 3 numbers are the miller indices (i.e. the (1,1,1) surface), and the last number cooresponds to the shift value. In this case the 4th shift enumerated was the one used.

  7. neb1.0 the number here indicates the k value used. For the full dataset, 1.0 was used so this does not distiguish any of the trajectories from one another.

The content of these trajectory files is the repeating frame sets. Despite the initial and final frames not being optimized during the NEB, the initial and final frames are saved for every iteration in the trajectory. For the dataset, 10 frames were used - 8 which were optimized over the neb. So the length of the trajectory is the number of iterations (N) * 10. If you wanted to look at the frame set prior to optimization and the optimized frame set, you could get them like this:

from __future__ import annotations

!wget https://dl.fbaipublicfiles.com/opencatalystproject/data/large_files/desorption_id_83_2409_9_111-4_neb1.0.traj

from ase.io import read

traj = read("desorption_id_83_2409_9_111-4_neb1.0.traj", ":")
unrelaxed_frames = traj[0:10]
relaxed_frames = traj[-10:]
--2026-08-07 05:49:00--  https://dl.fbaipublicfiles.com/opencatalystproject/data/large_files/desorption_id_83_2409_9_111-4_neb1.0.traj
Resolving dl.fbaipublicfiles.com (dl.fbaipublicfiles.com)... 
3.171.22.33, 3.171.22.68, 3.171.22.118, ...
Connecting to dl.fbaipublicfiles.com (dl.fbaipublicfiles.com)|3.171.22.33|:443... connected.
HTTP request sent, awaiting response... 
200 OK
Length: 10074935 (9.6M) [binary/octet-stream]
Saving to: ‘desorption_id_83_2409_9_111-4_neb1.0.traj’

          desorptio   0%[                    ]       0  --.-KB/s               
         desorption   7%[>                   ] 712.49K  2.95MB/s               
desorption_id_83_24 100%[===================>]   9.61M  22.3MB/s    in 0.4s    

2026-08-07 05:49:01 (22.3 MB/s) - ‘desorption_id_83_2409_9_111-4_neb1.0.traj’ saved [10074935/10074935]

Download

SplitsSize of compressed version (in bytes)Size of uncompressed version (in bytes)MD5 checksum (download link)
ASE Trajectories1.5G6.3G52af34a93758c82fae951e52af445089

Use

One more note: We have not prepared an lmdb for this dataset. This is because it is NEB calculations are not supported directly in ocp. You must use the ase native OCP class along with ase infrastructure to run NEB calculations. Here is an example of a use:

import os

from ase.io import read
from ase.mep import DyNEB
from ase.optimize import BFGS
from fairchem.core import FAIRChemCalculator, pretrained_mlip

traj = read("desorption_id_83_2409_9_111-4_neb1.0.traj", ":")
images = traj[0:10]
predictor = pretrained_mlip.get_predict_unit("uma-s-1p2")

neb = DyNEB(images, k=1)
for image in images:
    image.calc = FAIRChemCalculator(predictor, task_name="oc20")

optimizer = BFGS(
    neb,
    trajectory="neb.traj",
)

# Use a small number of steps here to keep the docs fast during CI, but otherwise do quite reasonable settings.
fast_docs = os.environ.get("FAST_DOCS", "false").lower() == "true"
if fast_docs:
    optimization_steps = 20
else:
    optimization_steps = 300

conv = optimizer.run(fmax=0.45, steps=optimization_steps)
if conv:
    neb.climb = True
    conv = optimizer.run(fmax=0.05, steps=optimization_steps)
WARNING:root:device was not explicitly set, using device='cuda'.
/home/runner/work/_tool/Python/3.12.13/x64/lib/python3.12/site-packages/ase/mep/neb.py:329: UserWarning: The default method has changed from 'aseneb' to 'improvedtangent'. The 'aseneb' method is an unpublished, custom implementation that is not recommended as it frequently results in very poor bands. Please explicitly set method='improvedtangent' to silence this warning, or set method='aseneb' if you strictly require the old behavior (results may vary). See: https://gitlab.com/ase/ase/-/merge_requests/3952
  warnings.warn(
WARNING:root:Model is being compiled this might take a while for the first time
W0807 05:49:24.719000 8781 site-packages/torch/_logging/_internal.py:1345] [0/0] Profiler record function <class 'torch.autograd.profiler.record_function'> will be ignored
W0807 05:50:07.661000 8781 site-packages/torch/_inductor/utils.py:1953] [8/0] Not enough SMs to use max_autotune_gemm mode
      Step     Time          Energy          fmax
BFGS:    0 05:51:01     -305.702827        5.240342
BFGS:    1 05:51:09     -305.626495       11.579508
BFGS:    2 05:51:11     -305.852112        1.880923
BFGS:    3 05:51:18     -305.868543        2.642384
BFGS:    4 05:51:22     -305.945525        2.276120
BFGS:    5 05:51:25     -305.943712        6.798167
BFGS:    6 05:51:35     -306.192792        9.294413
BFGS:    7 05:51:42     -306.167345        3.394842
BFGS:    8 05:51:44     -306.230175        4.796160
BFGS:    9 05:51:48     -306.255488        0.709482
BFGS:   10 05:51:53     -306.269541        0.620310
BFGS:   11 05:51:55     -306.299105        1.588091
BFGS:   12 05:52:00     -306.353759        1.870732
BFGS:   13 05:52:10     -306.385055        0.461509
BFGS:   14 05:52:13     -306.423213        0.728060
BFGS:   15 05:52:16     -306.461799        1.996682
BFGS:   16 05:52:19     -306.472078        0.836081
BFGS:   17 05:52:21     -306.483175        0.476355
BFGS:   18 05:52:26     -306.503254        0.976774
BFGS:   19 05:52:28     -306.523595        1.273999
BFGS:   20 05:52:32     -306.533028        0.821111
BFGS:   21 05:52:38     -306.535936        1.915086
BFGS:   22 05:52:47     -306.548841        0.579813
BFGS:   23 05:52:57     -306.561716        0.748827
BFGS:   24 05:53:01     -306.571505        0.852640
BFGS:   25 05:53:07     -306.581024        0.480964
BFGS:   26 05:53:11     -306.540444        0.418488
BFGS:   27 05:53:16     -306.280084        2.606511
BFGS:   28 05:53:18     -306.454913        0.717660
BFGS:   29 05:53:25     -306.463991        0.716901
BFGS:   30 05:53:29     -306.465289        0.777299
BFGS:   31 05:53:32     -306.456898        0.819854
BFGS:   32 05:53:37     -306.451701        0.829806
BFGS:   33 05:53:45     -306.427891        0.842319
BFGS:   34 05:53:49     -306.405492        0.811545
BFGS:   35 05:53:53     -306.345026        0.678629
BFGS:   36 05:53:59     -306.295021        0.530325
BFGS:   37 05:54:07     -306.261073        0.553216
BFGS:   38 05:54:14     -306.241948        0.484062
BFGS:   39 05:54:21     -306.225496        0.342065
BFGS:   40 05:54:23     -306.215611        0.311242
BFGS:   41 05:54:25     -306.213818        0.319691
BFGS:   42 05:54:28     -306.217550        0.312015
BFGS:   43 05:54:30     -306.224898        0.309235
BFGS:   44 05:54:32     -306.221162        0.320873
BFGS:   45 05:54:34     -306.198391        0.377291
BFGS:   46 05:54:39     -306.187847        0.311465
BFGS:   47 05:54:44     -306.187042        0.200043
BFGS:   48 05:54:50     -306.186216        0.191547
BFGS:   49 05:54:56     -306.190860        0.219781
BFGS:   50 05:55:03     -306.204591        0.258844
BFGS:   51 05:55:08     -306.216132        0.239343
BFGS:   52 05:55:14     -306.220914        0.171419
BFGS:   53 05:55:16     -306.225835        0.143793
BFGS:   54 05:55:20     -306.228005        0.169971
BFGS:   55 05:55:29     -306.234751        0.177453
BFGS:   56 05:55:33     -306.240816        0.137905
BFGS:   57 05:55:42     -306.247489        0.145441
BFGS:   58 05:55:52     -306.252683        0.159396
BFGS:   59 05:55:59     -306.252607        0.139489
BFGS:   60 05:56:01     -306.252537        0.090267
BFGS:   61 05:56:04     -306.254780        0.088799
BFGS:   62 05:56:06     -306.256821        0.102781
BFGS:   63 05:56:10     -306.263497        0.128584
BFGS:   64 05:56:12     -306.266531        0.110741
BFGS:   65 05:56:19     -306.268986        0.087058
BFGS:   66 05:56:27     -306.269081        0.094772
BFGS:   67 05:56:29     -306.269080        0.083895
BFGS:   68 05:56:31     -306.271632        0.116917
BFGS:   69 05:56:33     -306.273243        0.105665
BFGS:   70 05:56:35     -306.276140        0.163994
BFGS:   71 05:56:38     -306.277499        0.095267
BFGS:   72 05:56:46     -306.275693        0.099413
BFGS:   73 05:56:48     -306.276121        0.056993
BFGS:   74 05:56:55     -306.277049        0.295262
BFGS:   75 05:56:59     -306.280374        0.153228
BFGS:   76 05:57:03     -306.281667        0.072429
BFGS:   77 05:57:10     -306.281137        0.258544
BFGS:   78 05:57:13     -306.282353        0.252342
BFGS:   79 05:57:15     -306.284287        0.121952
BFGS:   80 05:57:23     -306.283758        0.054699
BFGS:   81 05:57:25     -306.284484        0.028108