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.

Transition State Search (NEBs)

Tutorial Overview
PropertyValue
DifficultyAdvanced
Time30-45 minutes
PrerequisitesUnderstanding of NEB, ASE, catalysis
GoalFind transition states using CatTsunami tools

FAIR chemistry models can be used to enumerate and study reaction pathways via transition state search tools built into ASE or in packages like Sella via the ASE interface.

Since the NEB calculations here can be a bit time consuming, we’ll use a small number of steps during the documentation testing, and otherwise use a reasonable guess.

import os

# 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

Do enumerations in an AdsorbML style

from __future__ import annotations

import matplotlib.pyplot as plt
from ase.io import read
from ase.mep import DyNEB
from ase.optimize import BFGS
from fairchem.applications.cattsunami.core import Reaction
from fairchem.applications.cattsunami.core.autoframe import AutoFrameDissociation
from fairchem.applications.cattsunami.databases import DISSOCIATION_REACTION_DB_PATH
from fairchem.core import FAIRChemCalculator, pretrained_mlip
from fairchem.data.oc.core import Adsorbate, AdsorbateSlabConfig, Bulk, Slab
from fairchem.data.oc.databases.pkls import ADSORBATE_PKL_PATH, BULK_PKL_PATH
from x3dase.x3d import X3D

# Instantiate the reaction class for the reaction of interest
reaction = Reaction(
    reaction_str_from_db="*CH -> *C + *H",
    reaction_db_path=DISSOCIATION_REACTION_DB_PATH,
    adsorbate_db_path=ADSORBATE_PKL_PATH,
)
# Instantiate our adsorbate class for the reactant and product
reactant = Adsorbate(
    adsorbate_id_from_db=reaction.reactant1_idx, adsorbate_db_path=ADSORBATE_PKL_PATH
)
product1 = Adsorbate(
    adsorbate_id_from_db=reaction.product1_idx, adsorbate_db_path=ADSORBATE_PKL_PATH
)
product2 = Adsorbate(
    adsorbate_id_from_db=reaction.product2_idx, adsorbate_db_path=ADSORBATE_PKL_PATH
)
# Grab the bulk and cut the slab we are interested in
bulk = Bulk(bulk_src_id_from_db="mp-33", bulk_db_path=BULK_PKL_PATH)
slab = Slab.from_bulk_get_specific_millers(bulk=bulk, specific_millers=(0, 0, 1))
# Perform site enumeration
# For AdsorbML num_sites = 100, but we use 5 here for brevity. This should be increased for practical use.
reactant_configs = AdsorbateSlabConfig(
    slab=slab[0],
    adsorbate=reactant,
    mode="random_site_heuristic_placement",
    num_sites=10,
).atoms_list
product1_configs = AdsorbateSlabConfig(
    slab=slab[0],
    adsorbate=product1,
    mode="random_site_heuristic_placement",
    num_sites=10,
).atoms_list
product2_configs = AdsorbateSlabConfig(
    slab=slab[0],
    adsorbate=product2,
    mode="random_site_heuristic_placement",
    num_sites=10,
).atoms_list
# Instantiate the calculator
predictor = pretrained_mlip.get_predict_unit("uma-s-1p1")
calc = FAIRChemCalculator(predictor, task_name="oc20")
WARNING:root:device was not explicitly set, using device='cuda'.
WARNING:root:If 'dataset_list' is provided in the config, the code assumes that each dataset maps to itself. Please use 'dataset_mapping' as 'dataset_list' is deprecated and will be removed in the future.
# Relax the reactant systems
reactant_energies = []
for config in reactant_configs:
    config.calc = calc
    config.pbc = True
    opt = BFGS(config)
    opt.run(fmax=0.05, steps=optimization_steps)
    reactant_energies.append(config.get_potential_energy())
      Step     Time          Energy          fmax
BFGS:    0 22:53:51     -301.708348        4.081115
BFGS:    1 22:53:52     -302.081355        3.058268
BFGS:    2 22:53:52     -303.030397        3.449968
BFGS:    3 22:53:52     -303.203759        3.283746
BFGS:    4 22:53:53     -303.519632        1.982234
BFGS:    5 22:53:53     -303.719993        3.649807
BFGS:    6 22:53:54     -303.855442        2.023498
BFGS:    7 22:53:54     -304.051962        0.905500
BFGS:    8 22:53:54     -304.090953        0.957940
BFGS:    9 22:53:55     -304.149632        0.785703
BFGS:   10 22:53:55     -304.190021        0.721384
BFGS:   11 22:53:56     -304.220370        0.762751
BFGS:   12 22:53:56     -304.238347        0.433568
BFGS:   13 22:53:57     -304.246756        0.384738
BFGS:   14 22:53:57     -304.258192        0.525446
BFGS:   15 22:53:57     -304.273950        0.675607
BFGS:   16 22:53:58     -304.285902        0.578432
BFGS:   17 22:53:58     -304.296004        0.288302
BFGS:   18 22:53:59     -304.305653        0.335226
BFGS:   19 22:53:59     -304.313920        0.341549
BFGS:   20 22:53:59     -304.323492        0.333988
BFGS:   21 22:54:00     -304.328728        0.245135
BFGS:   22 22:54:00     -304.331932        0.212528
BFGS:   23 22:54:01     -304.335441        0.232706
BFGS:   24 22:54:01     -304.340080        0.277358
BFGS:   25 22:54:02     -304.344798        0.221589
BFGS:   26 22:54:02     -304.347932        0.137385
BFGS:   27 22:54:02     -304.349796        0.130723
BFGS:   28 22:54:03     -304.351532        0.119718
BFGS:   29 22:54:03     -304.353295        0.129916
BFGS:   30 22:54:04     -304.354751        0.107088
BFGS:   31 22:54:04     -304.355774        0.079627
BFGS:   32 22:54:05     -304.356290        0.041404
      Step     Time          Energy          fmax
BFGS:    0 22:54:05     -300.737378        4.005536
BFGS:    1 22:54:05     -301.170398        3.574571
BFGS:    2 22:54:06     -302.490427        3.617969
BFGS:    3 22:54:06     -302.184305        9.878063
BFGS:    4 22:54:07     -302.784201        3.137760
BFGS:    5 22:54:07     -302.942478        2.385643
BFGS:    6 22:54:07     -303.074755        2.516341
BFGS:    7 22:54:08     -303.123206        0.594938
BFGS:    8 22:54:08     -303.133906        0.501428
BFGS:    9 22:54:08     -303.166136        0.577604
BFGS:   10 22:54:09     -303.175541        0.393962
BFGS:   11 22:54:09     -303.178210        0.194083
BFGS:   12 22:54:10     -303.179548        0.166028
BFGS:   13 22:54:10     -303.182370        0.248492
BFGS:   14 22:54:11     -303.185445        0.256447
BFGS:   15 22:54:11     -303.188613        0.183070
BFGS:   16 22:54:11     -303.190415        0.112293
BFGS:   17 22:54:12     -303.191259        0.157381
BFGS:   18 22:54:12     -303.192108        0.198743
BFGS:   19 22:54:13     -303.193509        0.205859
BFGS:   20 22:54:13     -303.194714        0.131504
BFGS:   21 22:54:13     -303.195225        0.038822
      Step     Time          Energy          fmax
BFGS:    0 22:54:14     -301.543695        4.051009
BFGS:    1 22:54:14     -301.915990        2.971566
BFGS:    2 22:54:14     -302.872407        3.520135
BFGS:    3 22:54:14     -303.036141        3.322174
BFGS:    4 22:54:15     -303.354528        1.871894
BFGS:    5 22:54:15     -303.497669        3.472353
BFGS:    6 22:54:16     -303.623437        2.435325
BFGS:    7 22:54:16     -304.078392        1.267002
BFGS:    8 22:54:16     -304.230372        2.130146
BFGS:    9 22:54:17     -304.314903        1.639556
BFGS:   10 22:54:17     -304.487153        1.160479
BFGS:   11 22:54:17     -304.587196        1.736034
BFGS:   12 22:54:18     -304.622852        0.791237
BFGS:   13 22:54:18     -304.638091        0.435309
BFGS:   14 22:54:19     -304.647049        0.382343
BFGS:   15 22:54:19     -304.654983        0.342500
BFGS:   16 22:54:19     -304.661418        0.293867
BFGS:   17 22:54:20     -304.665944        0.206993
BFGS:   18 22:54:20     -304.669080        0.179571
BFGS:   19 22:54:21     -304.671846        0.194317
BFGS:   20 22:54:21     -304.674773        0.201663
BFGS:   21 22:54:21     -304.678148        0.170162
BFGS:   22 22:54:22     -304.682125        0.205476
BFGS:   23 22:54:22     -304.686088        0.207187
BFGS:   24 22:54:23     -304.688379        0.140885
BFGS:   25 22:54:23     -304.689421        0.078280
BFGS:   26 22:54:23     -304.689998        0.078919
BFGS:   27 22:54:23     -304.690649        0.105848
BFGS:   28 22:54:24     -304.691452        0.107469
BFGS:   29 22:54:24     -304.691998        0.062614
BFGS:   30 22:54:25     -304.692192        0.033431
      Step     Time          Energy          fmax
BFGS:    0 22:54:25     -302.133082        4.011240
BFGS:    1 22:54:25     -302.509443        2.996093
BFGS:    2 22:54:26     -303.443386        3.275722
BFGS:    3 22:54:26     -303.617531        2.977864
BFGS:    4 22:54:27     -303.875429        1.332093
BFGS:    5 22:54:27     -303.955653        1.630969
BFGS:    6 22:54:27     -303.999369        1.223793
BFGS:    7 22:54:28     -304.111418        0.567204
BFGS:    8 22:54:28     -304.129946        0.572999
BFGS:    9 22:54:28     -304.169509        0.355785
BFGS:   10 22:54:29     -304.184313        0.301389
BFGS:   11 22:54:29     -304.192218        0.263595
BFGS:   12 22:54:29     -304.197984        0.274155
BFGS:   13 22:54:30     -304.203836        0.281506
BFGS:   14 22:54:30     -304.208426        0.271809
BFGS:   15 22:54:30     -304.212951        0.277294
BFGS:   16 22:54:31     -304.219215        0.362530
BFGS:   17 22:54:31     -304.229907        0.509361
BFGS:   18 22:54:32     -304.243884        0.559910
BFGS:   19 22:54:32     -304.259262        0.375038
BFGS:   20 22:54:32     -304.278395        0.304387
BFGS:   21 22:54:33     -304.285915        0.316305
BFGS:   22 22:54:33     -304.294009        0.315629
BFGS:   23 22:54:34     -304.299871        0.384251
BFGS:   24 22:54:34     -304.311727        0.273901
BFGS:   25 22:54:34     -304.319447        0.262750
BFGS:   26 22:54:35     -304.326017        0.239146
BFGS:   27 22:54:35     -304.332270        0.198587
BFGS:   28 22:54:36     -304.339408        0.201378
BFGS:   29 22:54:36     -304.345812        0.152675
BFGS:   30 22:54:37     -304.349910        0.113670
BFGS:   31 22:54:37     -304.351545        0.119627
BFGS:   32 22:54:37     -304.352639        0.111087
BFGS:   33 22:54:38     -304.354227        0.088530
BFGS:   34 22:54:38     -304.355705        0.085014
BFGS:   35 22:54:39     -304.356569        0.058333
BFGS:   36 22:54:39     -304.356816        0.026366
      Step     Time          Energy          fmax
BFGS:    0 22:54:40     -300.828188        4.016825
BFGS:    1 22:54:40     -301.252012        3.473677
BFGS:    2 22:54:40     -302.525282        3.653247
BFGS:    3 22:54:41     -302.410777        7.857202
BFGS:    4 22:54:41     -302.855656        2.968595
BFGS:    5 22:54:42     -303.031776        1.659332
BFGS:    6 22:54:42     -303.102597        1.751452
BFGS:    7 22:54:43     -303.124723        0.703126
BFGS:    8 22:54:43     -303.139527        0.558489
BFGS:    9 22:54:43     -303.157586        0.755217
BFGS:   10 22:54:44     -303.175000        0.623772
BFGS:   11 22:54:44     -303.181963        0.259465
BFGS:   12 22:54:44     -303.183968        0.159720
BFGS:   13 22:54:45     -303.185576        0.320388
BFGS:   14 22:54:45     -303.189622        0.557796
BFGS:   15 22:54:46     -303.194632        0.614524
BFGS:   16 22:54:46     -303.199032        0.409040
BFGS:   17 22:54:46     -303.201081        0.157521
BFGS:   18 22:54:47     -303.202211        0.145481
BFGS:   19 22:54:47     -303.203743        0.276979
BFGS:   20 22:54:47     -303.206168        0.376485
BFGS:   21 22:54:48     -303.208551        0.306416
BFGS:   22 22:54:48     -303.209938        0.128033
BFGS:   23 22:54:48     -303.211039        0.131554
BFGS:   24 22:54:49     -303.213379        0.349734
BFGS:   25 22:54:49     -303.250940        1.204353
BFGS:   26 22:54:50     -303.397167        1.316731
BFGS:   27 22:54:50     -303.434978        2.167109
BFGS:   28 22:54:51     -303.645095        2.026070
BFGS:   29 22:54:51     -303.779419        3.462864
BFGS:   30 22:54:52     -303.856112        2.427177
BFGS:   31 22:54:52     -303.918510        1.494513
BFGS:   32 22:54:52     -303.956876        0.871973
BFGS:   33 22:54:53     -303.982393        0.550675
BFGS:   34 22:54:53     -304.070023        0.845092
BFGS:   35 22:54:54     -304.130625        0.868917
BFGS:   36 22:54:54     -304.192465        0.802910
BFGS:   37 22:54:54     -304.269633        0.902844
BFGS:   38 22:54:55     -304.332168        1.036968
BFGS:   39 22:54:55     -304.358779        1.639433
BFGS:   40 22:54:55     -304.411116        0.721751
BFGS:   41 22:54:56     -304.435235        0.545250
BFGS:   42 22:54:56     -304.469471        0.796908
BFGS:   43 22:54:57     -304.501945        0.894304
BFGS:   44 22:54:57     -304.525625        0.717974
BFGS:   45 22:54:58     -304.550459        0.417048
BFGS:   46 22:54:58     -304.576767        0.998557
BFGS:   47 22:54:59     -304.604157        1.347949
BFGS:   48 22:54:59     -304.632548        1.243760
BFGS:   49 22:54:59     -304.656606        0.853103
BFGS:   50 22:55:00     -304.673913        0.411453
BFGS:   51 22:55:00     -304.682207        0.166638
BFGS:   52 22:55:01     -304.685220        0.120716
BFGS:   53 22:55:01     -304.686893        0.123697
BFGS:   54 22:55:01     -304.688142        0.143835
BFGS:   55 22:55:02     -304.689350        0.138170
BFGS:   56 22:55:02     -304.690408        0.111351
BFGS:   57 22:55:03     -304.691047        0.080588
BFGS:   58 22:55:03     -304.691382        0.059481
BFGS:   59 22:55:03     -304.691561        0.047091
      Step     Time          Energy          fmax
BFGS:    0 22:55:04     -301.365872        4.159367
BFGS:    1 22:55:04     -301.748541        3.264111
BFGS:    2 22:55:04     -302.735192        3.417277
BFGS:    3 22:55:05     -302.852383        3.732628
BFGS:    4 22:55:05     -303.122816        2.389506
BFGS:    5 22:55:05     -303.274287        3.530391
BFGS:    6 22:55:06     -303.369556        1.469431
BFGS:    7 22:55:06     -303.480369        1.080459
BFGS:    8 22:55:06     -303.804020        1.837326
BFGS:    9 22:55:07     -303.809533        2.677208
BFGS:   10 22:55:07     -303.924601        1.447745
BFGS:   11 22:55:08     -303.979687        0.814508
BFGS:   12 22:55:08     -304.052686        1.349939
BFGS:   13 22:55:09     -304.077253        0.939442
BFGS:   14 22:55:09     -304.117938        0.663778
BFGS:   15 22:55:10     -304.130538        0.475776
BFGS:   16 22:55:10     -304.143716        0.300159
BFGS:   17 22:55:11     -304.156400        0.282011
BFGS:   18 22:55:11     -304.167951        0.291826
BFGS:   19 22:55:11     -304.175456        0.259411
BFGS:   20 22:55:12     -304.181416        0.240776
BFGS:   21 22:55:12     -304.190590        0.320930
BFGS:   22 22:55:13     -304.209858        0.514981
BFGS:   23 22:55:13     -304.243949        0.735593
BFGS:   24 22:55:13     -304.277510        0.901884
BFGS:   25 22:55:13     -304.315424        0.856169
BFGS:   26 22:55:14     -304.394386        0.792733
BFGS:   27 22:55:14     -304.453066        0.782356
BFGS:   28 22:55:15     -304.462445        1.020797
BFGS:   29 22:55:15     -304.521031        0.943216
BFGS:   30 22:55:16     -304.555335        0.353882
BFGS:   31 22:55:16     -304.571314        0.365559
BFGS:   32 22:55:17     -304.601464        0.456695
BFGS:   33 22:55:17     -304.615550        0.425900
BFGS:   34 22:55:17     -304.634973        0.375545
BFGS:   35 22:55:18     -304.647159        0.302104
BFGS:   36 22:55:18     -304.656060        0.290710
BFGS:   37 22:55:18     -304.664291        0.392784
BFGS:   38 22:55:19     -304.674724        0.367745
BFGS:   39 22:55:19     -304.683317        0.213725
BFGS:   40 22:55:19     -304.686954        0.079514
BFGS:   41 22:55:20     -304.687869        0.070531
BFGS:   42 22:55:20     -304.688429        0.071574
BFGS:   43 22:55:21     -304.689361        0.068780
BFGS:   44 22:55:21     -304.690420        0.075405
BFGS:   45 22:55:21     -304.691386        0.054860
BFGS:   46 22:55:21     -304.691923        0.051255
BFGS:   47 22:55:22     -304.692118        0.034961
      Step     Time          Energy          fmax
BFGS:    0 22:55:22     -301.816275        4.107188
BFGS:    1 22:55:23     -302.191090        3.185409
BFGS:    2 22:55:23     -303.142251        3.303101
BFGS:    3 22:55:24     -303.332499        3.428361
BFGS:    4 22:55:24     -303.628420        2.259022
BFGS:    5 22:55:24     -303.941345        2.800720
BFGS:    6 22:55:25     -304.061163        1.740556
BFGS:    7 22:55:25     -304.253584        1.231490
BFGS:    8 22:55:26     -304.311213        1.135576
BFGS:    9 22:55:26     -304.406951        1.070310
BFGS:   10 22:55:26     -304.550284        0.974026
BFGS:   11 22:55:27     -304.606849        0.715202
BFGS:   12 22:55:27     -304.631113        0.354986
BFGS:   13 22:55:27     -304.638059        0.359271
BFGS:   14 22:55:28     -304.655082        0.336774
BFGS:   15 22:55:28     -304.662911        0.251169
BFGS:   16 22:55:29     -304.666443        0.181315
BFGS:   17 22:55:29     -304.668542        0.174381
BFGS:   18 22:55:30     -304.671897        0.186996
BFGS:   19 22:55:30     -304.676241        0.279663
BFGS:   20 22:55:31     -304.681599        0.262505
BFGS:   21 22:55:31     -304.685678        0.133845
BFGS:   22 22:55:31     -304.687347        0.077496
BFGS:   23 22:55:32     -304.687989        0.069795
BFGS:   24 22:55:32     -304.688665        0.079066
BFGS:   25 22:55:33     -304.689728        0.101714
BFGS:   26 22:55:33     -304.691002        0.096581
BFGS:   27 22:55:33     -304.691814        0.055209
BFGS:   28 22:55:34     -304.692106        0.026652
      Step     Time          Energy          fmax
BFGS:    0 22:55:34     -301.491804        4.145690
BFGS:    1 22:55:35     -301.879197        3.134755
BFGS:    2 22:55:35     -302.858735        3.466610
BFGS:    3 22:55:36     -303.010560        3.327188
BFGS:    4 22:55:36     -303.316480        2.032064
BFGS:    5 22:55:36     -303.461480        3.688612
BFGS:    6 22:55:37     -303.580019        1.912768
BFGS:    7 22:55:37     -303.759933        0.944642
BFGS:    8 22:55:38     -303.845164        2.333465
BFGS:    9 22:55:38     -303.929624        1.006097
BFGS:   10 22:55:38     -303.963756        0.798155
BFGS:   11 22:55:39     -304.060338        1.040872
BFGS:   12 22:55:39     -304.088663        0.768690
BFGS:   13 22:55:40     -304.130569        0.270045
BFGS:   14 22:55:40     -304.136033        0.242019
BFGS:   15 22:55:40     -304.151421        0.249232
BFGS:   16 22:55:41     -304.155031        0.159609
BFGS:   17 22:55:41     -304.156941        0.139533
BFGS:   18 22:55:42     -304.159075        0.152380
BFGS:   19 22:55:42     -304.162749        0.177613
BFGS:   20 22:55:42     -304.166076        0.152093
BFGS:   21 22:55:43     -304.167890        0.114835
BFGS:   22 22:55:43     -304.168737        0.099508
BFGS:   23 22:55:44     -304.169599        0.077240
BFGS:   24 22:55:44     -304.170840        0.116558
BFGS:   25 22:55:44     -304.171921        0.101538
BFGS:   26 22:55:45     -304.172424        0.057343
BFGS:   27 22:55:45     -304.172626        0.056399
BFGS:   28 22:55:46     -304.172842        0.049046
      Step     Time          Energy          fmax
BFGS:    0 22:55:46     -301.304918        4.111783
BFGS:    1 22:55:46     -301.690817        3.050474
BFGS:    2 22:55:47     -302.702598        3.577562
BFGS:    3 22:55:47     -302.837490        3.495337
BFGS:    4 22:55:47     -303.134015        2.084456
BFGS:    5 22:55:48     -303.218249        2.928739
BFGS:    6 22:55:48     -303.293248        1.206474
BFGS:    7 22:55:49     -303.360943        1.008008
BFGS:    8 22:55:49     -303.707967        1.760423
BFGS:    9 22:55:50     -303.818356        2.371669
BFGS:   10 22:55:50     -303.898249        1.791636
BFGS:   11 22:55:50     -303.996355        0.748614
BFGS:   12 22:55:51     -304.070318        0.916964
BFGS:   13 22:55:51     -304.095560        0.636733
BFGS:   14 22:55:52     -304.125306        0.612662
BFGS:   15 22:55:52     -304.138731        0.399340
BFGS:   16 22:55:52     -304.146100        0.249593
BFGS:   17 22:55:53     -304.154129        0.226634
BFGS:   18 22:55:53     -304.162524        0.218360
BFGS:   19 22:55:53     -304.169440        0.205326
BFGS:   20 22:55:53     -304.174599        0.195313
BFGS:   21 22:55:54     -304.178825        0.195252
BFGS:   22 22:55:54     -304.185339        0.278857
BFGS:   23 22:55:54     -304.197194        0.429639
BFGS:   24 22:55:55     -304.214735        0.433096
BFGS:   25 22:55:55     -304.238264        0.593257
BFGS:   26 22:55:56     -304.269120        0.818668
BFGS:   27 22:55:56     -304.301931        0.882866
BFGS:   28 22:55:56     -304.361770        1.064752
BFGS:   29 22:55:56     -304.431773        0.975482
BFGS:   30 22:55:57     -304.514600        0.469102
BFGS:   31 22:55:57     -304.542612        0.506994
BFGS:   32 22:55:57     -304.567828        0.481162
BFGS:   33 22:55:58     -304.588200        0.488846
BFGS:   34 22:55:58     -304.609646        0.527185
BFGS:   35 22:55:59     -304.631529        0.368931
BFGS:   36 22:55:59     -304.640400        0.322985
BFGS:   37 22:56:00     -304.646995        0.301417
BFGS:   38 22:56:00     -304.658308        0.356678
BFGS:   39 22:56:00     -304.671288        0.446770
BFGS:   40 22:56:01     -304.680535        0.311015
BFGS:   41 22:56:01     -304.684588        0.109532
BFGS:   42 22:56:02     -304.685889        0.104345
BFGS:   43 22:56:02     -304.687357        0.101329
BFGS:   44 22:56:02     -304.689348        0.086326
BFGS:   45 22:56:03     -304.690921        0.060863
BFGS:   46 22:56:03     -304.691692        0.039640
      Step     Time          Energy          fmax
BFGS:    0 22:56:03     -302.131033        4.071576
BFGS:    1 22:56:04     -302.516681        3.107035
BFGS:    2 22:56:04     -303.419296        3.188819
BFGS:    3 22:56:05     -303.572426        2.815403
BFGS:    4 22:56:05     -303.840938        1.409019
BFGS:    5 22:56:05     -303.887747        1.004876
BFGS:    6 22:56:06     -304.001603        0.562538
BFGS:    7 22:56:06     -304.032312        0.643783
BFGS:    8 22:56:07     -304.068422        0.730634
BFGS:    9 22:56:07     -304.121112        0.586781
BFGS:   10 22:56:08     -304.146863        0.252407
BFGS:   11 22:56:08     -304.154216        0.284671
BFGS:   12 22:56:08     -304.160554        0.298101
BFGS:   13 22:56:09     -304.165964        0.248095
BFGS:   14 22:56:09     -304.170882        0.159948
BFGS:   15 22:56:09     -304.174337        0.157601
BFGS:   16 22:56:10     -304.176690        0.175483
BFGS:   17 22:56:10     -304.179727        0.244236
BFGS:   18 22:56:10     -304.185767        0.321920
BFGS:   19 22:56:11     -304.194379        0.361871
BFGS:   20 22:56:11     -304.203682        0.382604
BFGS:   21 22:56:12     -304.222167        0.630286
BFGS:   22 22:56:12     -304.258307        1.313715
BFGS:   23 22:56:12     -304.281760        1.753227
BFGS:   24 22:56:12     -304.340429        1.509399
BFGS:   25 22:56:13     -304.412928        1.002626
BFGS:   26 22:56:13     -304.498985        0.853533
BFGS:   27 22:56:13     -304.522207        0.680381
BFGS:   28 22:56:14     -304.544885        0.416376
BFGS:   29 22:56:14     -304.581533        0.407579
BFGS:   30 22:56:15     -304.611239        0.444468
BFGS:   31 22:56:15     -304.631270        0.317285
BFGS:   32 22:56:16     -304.638689        0.323391
BFGS:   33 22:56:16     -304.647549        0.345924
BFGS:   34 22:56:17     -304.658020        0.335128
BFGS:   35 22:56:17     -304.669423        0.267063
BFGS:   36 22:56:17     -304.677384        0.200884
BFGS:   37 22:56:18     -304.681129        0.196403
BFGS:   38 22:56:18     -304.683326        0.161720
BFGS:   39 22:56:18     -304.685823        0.138325
BFGS:   40 22:56:19     -304.688537        0.119235
BFGS:   41 22:56:19     -304.690333        0.066394
BFGS:   42 22:56:19     -304.690975        0.049282
# Relax the product systems
product1_energies = []
for config in product1_configs:
    config.calc = calc
    config.pbc = True
    opt = BFGS(config)
    opt.run(fmax=0.05, steps=optimization_steps)
    product1_energies.append(config.get_potential_energy())
      Step     Time          Energy          fmax
BFGS:    0 22:56:20     -296.636901        4.470597
BFGS:    1 22:56:20     -297.107320        4.666268
BFGS:    2 22:56:21     -298.454258        3.480607
BFGS:    3 22:56:21     -298.364215        7.550944
BFGS:    4 22:56:21     -298.791254        1.943187
BFGS:    5 22:56:22     -298.879976        1.549533
BFGS:    6 22:56:22     -299.135918        2.430999
BFGS:    7 22:56:23     -299.407187        2.628842
BFGS:    8 22:56:23     -299.596704        1.877439
BFGS:    9 22:56:23     -299.694420        1.233792
BFGS:   10 22:56:24     -299.898696        0.983224
BFGS:   11 22:56:24     -299.950885        1.040280
BFGS:   12 22:56:24     -299.996392        0.779046
BFGS:   13 22:56:25     -300.019077        0.360581
BFGS:   14 22:56:25     -300.031860        0.312249
BFGS:   15 22:56:26     -300.041947        0.368754
BFGS:   16 22:56:26     -300.052461        0.363494
BFGS:   17 22:56:26     -300.060006        0.264599
BFGS:   18 22:56:27     -300.063374        0.203583
BFGS:   19 22:56:27     -300.066949        0.242675
BFGS:   20 22:56:27     -300.071332        0.221415
BFGS:   21 22:56:28     -300.075058        0.212263
BFGS:   22 22:56:28     -300.077362        0.142297
BFGS:   23 22:56:28     -300.078523        0.071266
BFGS:   24 22:56:29     -300.079123        0.072077
BFGS:   25 22:56:29     -300.079523        0.066894
BFGS:   26 22:56:29     -300.079948        0.070150
BFGS:   27 22:56:30     -300.080319        0.049076
      Step     Time          Energy          fmax
BFGS:    0 22:56:30     -296.481775        4.448625
BFGS:    1 22:56:30     -296.957936        4.677817
BFGS:    2 22:56:31     -298.356616        3.421669
BFGS:    3 22:56:31     -298.090817        8.808933
BFGS:    4 22:56:31     -298.651685        1.926113
BFGS:    5 22:56:32     -298.731109        1.367985
BFGS:    6 22:56:32     -298.860057        1.943266
BFGS:    7 22:56:32     -298.995734        2.302574
BFGS:    8 22:56:33     -299.250243        2.360002
BFGS:    9 22:56:33     -299.424700        1.597274
BFGS:   10 22:56:33     -299.495828        1.322985
BFGS:   11 22:56:34     -299.667051        1.098142
BFGS:   12 22:56:34     -299.893239        1.075682
BFGS:   13 22:56:35     -299.928154        0.921253
BFGS:   14 22:56:35     -299.958779        0.422175
BFGS:   15 22:56:35     -299.975172        0.463878
BFGS:   16 22:56:36     -299.988627        0.560372
BFGS:   17 22:56:36     -300.003206        0.588557
BFGS:   18 22:56:37     -300.018961        0.453983
BFGS:   19 22:56:37     -300.027915        0.278706
BFGS:   20 22:56:37     -300.036628        0.386498
BFGS:   21 22:56:38     -300.044858        0.426235
BFGS:   22 22:56:38     -300.056927        0.446084
BFGS:   23 22:56:38     -300.067570        0.350387
BFGS:   24 22:56:39     -300.073868        0.186776
BFGS:   25 22:56:39     -300.076537        0.103424
BFGS:   26 22:56:39     -300.077483        0.104915
BFGS:   27 22:56:40     -300.078101        0.088688
BFGS:   28 22:56:40     -300.078886        0.085296
BFGS:   29 22:56:40     -300.079713        0.066535
BFGS:   30 22:56:41     -300.080248        0.030107
      Step     Time          Energy          fmax
BFGS:    0 22:56:41     -296.571550        4.474520
BFGS:    1 22:56:41     -297.034121        4.701439
BFGS:    2 22:56:42     -298.389586        3.607902
BFGS:    3 22:56:42     -298.387516        7.057305
BFGS:    4 22:56:43     -298.759239        1.963144
BFGS:    5 22:56:43     -298.851977        1.589111
BFGS:    6 22:56:43     -299.175087        2.753953
BFGS:    7 22:56:44     -299.500738        3.131698
BFGS:    8 22:56:44     -299.771182        2.634177
BFGS:    9 22:56:44     -299.874232        1.802917
BFGS:   10 22:56:45     -300.027584        1.717942
BFGS:   11 22:56:46     -300.449734        1.147829
BFGS:   12 22:56:46     -300.540012        0.907447
BFGS:   13 22:56:46     -300.564008        0.659657
BFGS:   14 22:56:47     -300.590324        0.427419
BFGS:   15 22:56:47     -300.600396        0.314381
BFGS:   16 22:56:47     -300.607283        0.319593
BFGS:   17 22:56:48     -300.612922        0.271097
BFGS:   18 22:56:48     -300.617067        0.190337
BFGS:   19 22:56:48     -300.619567        0.136059
BFGS:   20 22:56:49     -300.620977        0.156786
BFGS:   21 22:56:50     -300.622074        0.146056
BFGS:   22 22:56:50     -300.623098        0.101135
BFGS:   23 22:56:50     -300.623899        0.069788
BFGS:   24 22:56:51     -300.624356        0.069259
BFGS:   25 22:56:51     -300.624592        0.047071
      Step     Time          Energy          fmax
BFGS:    0 22:56:52     -296.495682        4.438546
BFGS:    1 22:56:52     -296.969171        4.668417
BFGS:    2 22:56:52     -298.363793        3.454871
BFGS:    3 22:56:53     -298.143042        8.535254
BFGS:    4 22:56:53     -298.671479        1.945736
BFGS:    5 22:56:54     -298.754037        1.426144
BFGS:    6 22:56:54     -298.909652        2.145046
BFGS:    7 22:56:54     -299.104863        2.645768
BFGS:    8 22:56:55     -299.352234        2.455715
BFGS:    9 22:56:55     -299.420336        1.660298
BFGS:   10 22:56:56     -299.518797        1.529394
BFGS:   11 22:56:56     -299.643456        1.218556
BFGS:   12 22:56:57     -299.821055        0.979815
BFGS:   13 22:56:57     -299.879462        0.875763
BFGS:   14 22:56:57     -299.900792        0.608366
BFGS:   15 22:56:58     -299.917199        0.331930
BFGS:   16 22:56:58     -299.924926        0.350960
BFGS:   17 22:56:59     -299.934027        0.402218
BFGS:   18 22:56:59     -299.946114        0.410477
BFGS:   19 22:56:59     -299.954731        0.345596
BFGS:   20 22:56:59     -299.961381        0.333867
BFGS:   21 22:57:00     -299.970665        0.462657
BFGS:   22 22:57:00     -299.985790        0.717241
BFGS:   23 22:57:01     -300.006785        0.827653
BFGS:   24 22:57:01     -300.032763        0.662765
BFGS:   25 22:57:01     -300.055488        0.281356
BFGS:   26 22:57:02     -300.061077        0.214241
BFGS:   27 22:57:02     -300.065387        0.222365
BFGS:   28 22:57:03     -300.068057        0.188668
BFGS:   29 22:57:03     -300.075298        0.130999
BFGS:   30 22:57:04     -300.078000        0.108536
BFGS:   31 22:57:04     -300.079141        0.072534
BFGS:   32 22:57:04     -300.079455        0.044677
      Step     Time          Energy          fmax
BFGS:    0 22:57:05     -297.114327        4.690321
BFGS:    1 22:57:05     -297.591798        4.854717
BFGS:    2 22:57:05     -298.846507        3.977475
BFGS:    3 22:57:06     -299.350574        3.371173
BFGS:    4 22:57:06     -299.519997        1.969413
BFGS:    5 22:57:07     -299.956827        1.179238
BFGS:    6 22:57:07     -300.011593        1.177933
BFGS:    7 22:57:08     -300.090141        1.311263
BFGS:    8 22:57:08     -300.339530        1.421154
BFGS:    9 22:57:08     -300.405112        1.162784
BFGS:   10 22:57:09     -300.476526        1.008615
BFGS:   11 22:57:10     -300.509275        0.948376
BFGS:   12 22:57:10     -300.562423        0.571562
BFGS:   13 22:57:10     -300.580270        0.533860
BFGS:   14 22:57:11     -300.593250        0.427551
BFGS:   15 22:57:11     -300.602994        0.296778
BFGS:   16 22:57:12     -300.612133        0.319521
BFGS:   17 22:57:12     -300.617232        0.261491
BFGS:   18 22:57:13     -300.620457        0.149960
BFGS:   19 22:57:13     -300.621744        0.078155
BFGS:   20 22:57:13     -300.622385        0.077488
BFGS:   21 22:57:14     -300.623069        0.103442
BFGS:   22 22:57:14     -300.623867        0.111105
BFGS:   23 22:57:15     -300.624511        0.075913
BFGS:   24 22:57:15     -300.624835        0.028563
      Step     Time          Energy          fmax
BFGS:    0 22:57:15     -296.488989        4.439558
BFGS:    1 22:57:15     -296.958151        4.679151
BFGS:    2 22:57:16     -298.351551        3.531793
BFGS:    3 22:57:16     -298.208218        8.070597
BFGS:    4 22:57:17     -298.682422        1.964172
BFGS:    5 22:57:17     -298.768688        1.471572
BFGS:    6 22:57:18     -298.961286        2.429962
BFGS:    7 22:57:18     -299.245150        2.979655
BFGS:    8 22:57:18     -299.463248        2.417586
BFGS:    9 22:57:19     -299.552927        1.787857
BFGS:   10 22:57:19     -299.745396        1.385251
BFGS:   11 22:57:19     -300.016807        1.268074
BFGS:   12 22:57:20     -300.088366        1.315970
BFGS:   13 22:57:20     -300.190033        1.489563
BFGS:   14 22:57:21     -300.287072        1.402468
BFGS:   15 22:57:21     -300.383246        1.046109
BFGS:   16 22:57:21     -300.486921        1.115521
BFGS:   17 22:57:22     -300.525954        0.829422
BFGS:   18 22:57:22     -300.564520        0.424956
BFGS:   19 22:57:23     -300.574341        0.456757
BFGS:   20 22:57:23     -300.594725        0.429196
BFGS:   21 22:57:24     -300.610792        0.332159
BFGS:   22 22:57:24     -300.617778        0.177372
BFGS:   23 22:57:25     -300.619652        0.095579
BFGS:   24 22:57:25     -300.620739        0.087086
BFGS:   25 22:57:25     -300.621920        0.098366
BFGS:   26 22:57:26     -300.623202        0.109384
BFGS:   27 22:57:26     -300.624251        0.081131
BFGS:   28 22:57:27     -300.624681        0.039825
      Step     Time          Energy          fmax
BFGS:    0 22:57:27     -296.267105        4.383497
BFGS:    1 22:57:27     -296.750425        4.670907
BFGS:    2 22:57:28     -298.241826        3.304173
BFGS:    3 22:57:28     -297.631597       11.235097
BFGS:    4 22:57:29     -298.482805        1.904850
BFGS:    5 22:57:29     -298.552683        1.126716
BFGS:    6 22:57:29     -298.608090        1.214944
BFGS:    7 22:57:30     -298.633288        1.188026
BFGS:    8 22:57:30     -298.795494        1.394968
BFGS:    9 22:57:31     -298.882110        2.136799
BFGS:   10 22:57:31     -299.026150        2.819771
BFGS:   11 22:57:31     -299.200594        3.126818
BFGS:   12 22:57:32     -299.417697        3.668598
BFGS:   13 22:57:32     -299.848355        3.477934
BFGS:   14 22:57:33     -300.473067        1.508506
BFGS:   15 22:57:33     -300.521692        0.968350
BFGS:   16 22:57:34     -300.567053        0.485457
BFGS:   17 22:57:34     -300.587836        0.430216
BFGS:   18 22:57:34     -300.601186        0.312315
BFGS:   19 22:57:35     -300.606674        0.252621
BFGS:   20 22:57:35     -300.611110        0.183389
BFGS:   21 22:57:36     -300.615515        0.128468
BFGS:   22 22:57:36     -300.619052        0.139840
BFGS:   23 22:57:37     -300.620958        0.107667
BFGS:   24 22:57:37     -300.621860        0.071260
BFGS:   25 22:57:37     -300.622932        0.044985
      Step     Time          Energy          fmax
BFGS:    0 22:57:38     -296.585818        4.465137
BFGS:    1 22:57:38     -297.053051        4.690368
BFGS:    2 22:57:39     -298.417877        3.620461
BFGS:    3 22:57:39     -298.424369        7.057946
BFGS:    4 22:57:39     -298.798112        1.991979
BFGS:    5 22:57:40     -298.896317        1.670016
BFGS:    6 22:57:40     -299.247264        2.509896
BFGS:    7 22:57:41     -299.522598        2.646483
BFGS:    8 22:57:41     -299.559637        2.107455
BFGS:    9 22:57:42     -299.731425        1.473617
BFGS:   10 22:57:42     -299.837507        1.031944
BFGS:   11 22:57:42     -299.976517        1.093879
BFGS:   12 22:57:43     -300.037847        1.195004
BFGS:   13 22:57:43     -300.100932        1.435139
BFGS:   14 22:57:43     -300.209103        1.765288
BFGS:   15 22:57:44     -300.305989        1.462791
BFGS:   16 22:57:44     -300.440475        1.440956
BFGS:   17 22:57:45     -300.491426        0.935256
BFGS:   18 22:57:45     -300.543204        0.536840
BFGS:   19 22:57:45     -300.557559        0.572655
BFGS:   20 22:57:46     -300.578296        0.463134
BFGS:   21 22:57:46     -300.608270        0.227741
BFGS:   22 22:57:47     -300.615525        0.154575
BFGS:   23 22:57:47     -300.617913        0.113636
BFGS:   24 22:57:47     -300.619446        0.100658
BFGS:   25 22:57:48     -300.621565        0.087682
BFGS:   26 22:57:48     -300.623221        0.050137
BFGS:   27 22:57:48     -300.624099        0.049632
      Step     Time          Energy          fmax
BFGS:    0 22:57:49     -297.102307        4.498833
BFGS:    1 22:57:49     -297.567284        4.631926
BFGS:    2 22:57:50     -298.832273        3.497034
BFGS:    3 22:57:50     -298.980359        5.503885
BFGS:    4 22:57:51     -299.253007        1.876595
BFGS:    5 22:57:51     -299.370608        1.764397
BFGS:    6 22:57:51     -299.746014        1.174506
BFGS:    7 22:57:52     -299.811267        2.043280
BFGS:    8 22:57:52     -299.884060        0.898822
BFGS:    9 22:57:53     -299.928229        0.769057
BFGS:   10 22:57:53     -300.037873        0.718066
BFGS:   11 22:57:53     -300.050932        0.520211
BFGS:   12 22:57:54     -300.068783        0.383032
BFGS:   13 22:57:54     -300.072137        0.339855
BFGS:   14 22:57:55     -300.076063        0.199492
BFGS:   15 22:57:55     -300.077779        0.095244
BFGS:   16 22:57:56     -300.078464        0.066395
BFGS:   17 22:57:56     -300.078781        0.069641
BFGS:   18 22:57:57     -300.079173        0.071010
BFGS:   19 22:57:57     -300.079652        0.066943
BFGS:   20 22:57:57     -300.080136        0.042642
      Step     Time          Energy          fmax
BFGS:    0 22:57:58     -295.920057        4.353476
BFGS:    1 22:57:58     -296.472663        4.759281
BFGS:    2 22:57:59     -298.222640        2.910619
BFGS:    3 22:57:59     -296.409738       19.621559
BFGS:    4 22:58:00     -298.379738        1.821299
BFGS:    5 22:58:00     -298.439550        1.055556
BFGS:    6 22:58:00     -298.474652        0.543483
BFGS:    7 22:58:01     -298.478225        0.221967
BFGS:    8 22:58:01     -298.481469        0.086475
BFGS:    9 22:58:01     -298.483209        0.073810
BFGS:   10 22:58:01     -298.483591        0.033825
product2_energies = []
for config in product2_configs:
    config.calc = calc
    config.pbc = True
    opt = BFGS(config)
    opt.run(fmax=0.05, steps=optimization_steps)
    product2_energies.append(config.get_potential_energy())
      Step     Time          Energy          fmax
BFGS:    0 22:58:02     -295.697680        0.726882
BFGS:    1 22:58:02     -295.745871        0.647615
BFGS:    2 22:58:03     -295.905549        0.328239
BFGS:    3 22:58:03     -295.915369        0.302348
BFGS:    4 22:58:03     -295.916952        0.288055
BFGS:    5 22:58:04     -295.929912        0.122691
BFGS:    6 22:58:04     -295.930983        0.118485
BFGS:    7 22:58:04     -295.933335        0.086764
BFGS:    8 22:58:05     -295.934331        0.071176
BFGS:    9 22:58:05     -295.935106        0.052670
BFGS:   10 22:58:06     -295.935441        0.057631
BFGS:   11 22:58:06     -295.935681        0.055678
BFGS:   12 22:58:07     -295.935929        0.042447
      Step     Time          Energy          fmax
BFGS:    0 22:58:07     -295.233537        1.424840
BFGS:    1 22:58:07     -295.322609        1.294418
BFGS:    2 22:58:08     -295.519057        1.894693
BFGS:    3 22:58:08     -295.581338        0.519907
BFGS:    4 22:58:08     -295.593172        0.559690
BFGS:    5 22:58:09     -295.619004        0.378822
BFGS:    6 22:58:09     -295.626131        0.300483
BFGS:    7 22:58:10     -295.632710        0.352293
BFGS:    8 22:58:10     -295.640420        0.365941
BFGS:    9 22:58:11     -295.649648        0.407564
BFGS:   10 22:58:11     -295.658327        0.330270
BFGS:   11 22:58:11     -295.665078        0.466804
BFGS:   12 22:58:12     -295.677033        0.721835
BFGS:   13 22:58:12     -295.721286        1.258189
BFGS:   14 22:58:13     -295.825364        0.993002
BFGS:   15 22:58:13     -295.850227        0.936398
BFGS:   16 22:58:13     -295.891967        0.617229
BFGS:   17 22:58:14     -295.912659        0.428080
BFGS:   18 22:58:14     -295.925327        0.337559
BFGS:   19 22:58:14     -295.932557        0.387021
BFGS:   20 22:58:15     -295.942206        0.352774
BFGS:   21 22:58:15     -295.950215        0.239828
BFGS:   22 22:58:16     -295.956043        0.200378
BFGS:   23 22:58:16     -295.959920        0.153457
BFGS:   24 22:58:16     -295.961800        0.123704
BFGS:   25 22:58:17     -295.962996        0.122840
BFGS:   26 22:58:17     -295.964696        0.111108
BFGS:   27 22:58:18     -295.966307        0.073683
BFGS:   28 22:58:18     -295.967166        0.040109
      Step     Time          Energy          fmax
BFGS:    0 22:58:19     -295.158383        1.583028
BFGS:    1 22:58:19     -295.260709        1.430970
BFGS:    2 22:58:19     -295.442850        2.303255
BFGS:    3 22:58:20     -295.529648        0.453129
BFGS:    4 22:58:21     -295.544242        0.586147
BFGS:    5 22:58:21     -295.565355        0.579301
BFGS:    6 22:58:21     -295.577012        0.344616
BFGS:    7 22:58:22     -295.582457        0.242666
BFGS:    8 22:58:22     -295.587094        0.299955
BFGS:    9 22:58:23     -295.591661        0.280422
BFGS:   10 22:58:23     -295.595461        0.186084
BFGS:   11 22:58:24     -295.596972        0.106534
BFGS:   12 22:58:24     -295.597420        0.116642
BFGS:   13 22:58:24     -295.597989        0.142999
BFGS:   14 22:58:25     -295.599347        0.195677
BFGS:   15 22:58:25     -295.603110        0.292133
BFGS:   16 22:58:26     -295.621851        0.446911
BFGS:   17 22:58:26     -295.609031        0.738139
BFGS:   18 22:58:26     -295.699557        0.542914
BFGS:   19 22:58:27     -295.757964        0.561614
BFGS:   20 22:58:27     -295.796055        0.434102
BFGS:   21 22:58:28     -295.829785        0.403212
BFGS:   22 22:58:28     -295.844351        0.297991
BFGS:   23 22:58:28     -295.868096        0.243917
BFGS:   24 22:58:29     -295.874430        0.291488
BFGS:   25 22:58:29     -295.885545        0.265733
BFGS:   26 22:58:30     -295.893933        0.243176
BFGS:   27 22:58:30     -295.899294        0.268443
BFGS:   28 22:58:31     -295.902295        0.275040
BFGS:   29 22:58:31     -295.905680        0.269675
BFGS:   30 22:58:31     -295.910558        0.245490
BFGS:   31 22:58:32     -295.915839        0.200099
BFGS:   32 22:58:32     -295.920366        0.178799
BFGS:   33 22:58:33     -295.924189        0.189371
BFGS:   34 22:58:33     -295.927719        0.180692
BFGS:   35 22:58:34     -295.930950        0.130729
BFGS:   36 22:58:34     -295.932875        0.084793
BFGS:   37 22:58:34     -295.933775        0.085433
BFGS:   38 22:58:35     -295.934319        0.081568
BFGS:   39 22:58:35     -295.934923        0.070808
BFGS:   40 22:58:35     -295.935548        0.054446
BFGS:   41 22:58:36     -295.935945        0.042919
      Step     Time          Energy          fmax
BFGS:    0 22:58:36     -295.420723        1.089597
BFGS:    1 22:58:37     -295.488352        1.004249
BFGS:    2 22:58:37     -295.698599        1.041083
BFGS:    3 22:58:38     -295.723657        0.539606
BFGS:    4 22:58:38     -295.733843        0.469532
BFGS:    5 22:58:39     -295.775500        0.534685
BFGS:    6 22:58:39     -295.783433        0.502218
BFGS:    7 22:58:40     -295.822443        0.370781
BFGS:    8 22:58:40     -295.831840        0.249464
BFGS:    9 22:58:40     -295.834889        0.231849
BFGS:   10 22:58:41     -295.839334        0.192682
BFGS:   11 22:58:41     -295.842286        0.161327
BFGS:   12 22:58:42     -295.845949        0.117415
BFGS:   13 22:58:42     -295.847154        0.113278
BFGS:   14 22:58:42     -295.847851        0.109284
BFGS:   15 22:58:42     -295.848845        0.102067
BFGS:   16 22:58:43     -295.850515        0.107676
BFGS:   17 22:58:43     -295.852567        0.122363
BFGS:   18 22:58:44     -295.854246        0.142426
BFGS:   19 22:58:44     -295.855586        0.162575
BFGS:   20 22:58:44     -295.857685        0.192842
BFGS:   21 22:58:44     -295.863377        0.263741
BFGS:   22 22:58:45     -295.873823        0.355082
BFGS:   23 22:58:45     -295.883328        0.413036
BFGS:   24 22:58:46     -295.909613        0.312901
BFGS:   25 22:58:46     -295.918072        0.219016
BFGS:   26 22:58:46     -295.923906        0.177928
BFGS:   27 22:58:47     -295.929601        0.110244
BFGS:   28 22:58:47     -295.932883        0.106913
BFGS:   29 22:58:47     -295.934917        0.097300
BFGS:   30 22:58:48     -295.935602        0.070377
BFGS:   31 22:58:48     -295.935983        0.045342
      Step     Time          Energy          fmax
BFGS:    0 22:58:48     -295.455419        1.069820
BFGS:    1 22:58:49     -295.519605        0.993730
BFGS:    2 22:58:49     -295.730641        0.968233
BFGS:    3 22:58:50     -295.755079        0.515286
BFGS:    4 22:58:50     -295.765507        0.507624
BFGS:    5 22:58:50     -295.813499        0.574347
BFGS:    6 22:58:51     -295.824108        0.545071
BFGS:    7 22:58:51     -295.887498        0.504225
BFGS:    8 22:58:51     -295.899419        0.408079
BFGS:    9 22:58:52     -295.907973        0.388758
BFGS:   10 22:58:52     -295.915440        0.363783
BFGS:   11 22:58:53     -295.925645        0.302106
BFGS:   12 22:58:53     -295.934889        0.288472
BFGS:   13 22:58:54     -295.940576        0.276998
BFGS:   14 22:58:54     -295.945111        0.252481
BFGS:   15 22:58:54     -295.951533        0.210938
BFGS:   16 22:58:55     -295.958502        0.145033
BFGS:   17 22:58:55     -295.963248        0.103963
BFGS:   18 22:58:55     -295.964918        0.081988
BFGS:   19 22:58:56     -295.965527        0.081777
BFGS:   20 22:58:56     -295.966094        0.070535
BFGS:   21 22:58:56     -295.966874        0.050031
BFGS:   22 22:58:57     -295.967599        0.041385
      Step     Time          Energy          fmax
BFGS:    0 22:58:57     -295.323647        1.270738
BFGS:    1 22:58:57     -295.400669        1.161958
BFGS:    2 22:58:58     -295.608659        1.451688
BFGS:    3 22:58:58     -295.648727        0.564608
BFGS:    4 22:58:58     -295.659126        0.504956
BFGS:    5 22:58:59     -295.694072        0.463310
BFGS:    6 22:58:59     -295.700092        0.466039
BFGS:    7 22:58:59     -295.759622        0.777869
BFGS:    8 22:59:00     -295.779678        0.686730
BFGS:    9 22:59:00     -295.811681        0.833027
BFGS:   10 22:59:00     -295.836647        0.826314
BFGS:   11 22:59:01     -295.879692        0.590509
BFGS:   12 22:59:01     -295.891779        0.360803
BFGS:   13 22:59:01     -295.902825        0.307409
BFGS:   14 22:59:02     -295.907150        0.291995
BFGS:   15 22:59:02     -295.915769        0.300335
BFGS:   16 22:59:03     -295.925530        0.280923
BFGS:   17 22:59:03     -295.935600        0.293890
BFGS:   18 22:59:04     -295.941670        0.279247
BFGS:   19 22:59:04     -295.946901        0.250432
BFGS:   20 22:59:04     -295.951810        0.248658
BFGS:   21 22:59:05     -295.957767        0.244709
BFGS:   22 22:59:05     -295.962830        0.158979
BFGS:   23 22:59:06     -295.965264        0.076266
BFGS:   24 22:59:06     -295.966144        0.071046
BFGS:   25 22:59:06     -295.966636        0.062375
BFGS:   26 22:59:06     -295.967206        0.050212
BFGS:   27 22:59:07     -295.967768        0.037964
      Step     Time          Energy          fmax
BFGS:    0 22:59:07     -295.228146        1.430586
BFGS:    1 22:59:07     -295.317835        1.297629
BFGS:    2 22:59:08     -295.515285        1.861525
BFGS:    3 22:59:08     -295.575423        0.520868
BFGS:    4 22:59:08     -295.587017        0.556864
BFGS:    5 22:59:09     -295.613195        0.365645
BFGS:    6 22:59:10     -295.620035        0.301465
BFGS:    7 22:59:10     -295.626558        0.352796
BFGS:    8 22:59:10     -295.634170        0.360572
BFGS:    9 22:59:11     -295.643192        0.388121
BFGS:   10 22:59:11     -295.651183        0.315056
BFGS:   11 22:59:11     -295.657057        0.441705
BFGS:   12 22:59:12     -295.667734        0.677332
BFGS:   13 22:59:12     -295.706803        1.175626
BFGS:   14 22:59:13     -295.705832        1.256760
BFGS:   15 22:59:13     -295.737104        1.129353
BFGS:   16 22:59:13     -295.755468        1.003468
BFGS:   17 22:59:13     -295.817325        0.359737
BFGS:   18 22:59:14     -295.827513        0.295126
BFGS:   19 22:59:14     -295.832091        0.328466
BFGS:   20 22:59:15     -295.836671        0.325413
BFGS:   21 22:59:15     -295.841111        0.255193
BFGS:   22 22:59:16     -295.844470        0.134903
BFGS:   23 22:59:16     -295.846136        0.087247
BFGS:   24 22:59:16     -295.846868        0.088575
BFGS:   25 22:59:17     -295.847465        0.092225
BFGS:   26 22:59:17     -295.848483        0.096587
BFGS:   27 22:59:18     -295.849693        0.099583
BFGS:   28 22:59:18     -295.850785        0.109420
BFGS:   29 22:59:18     -295.851776        0.128166
BFGS:   30 22:59:19     -295.853328        0.159689
BFGS:   31 22:59:19     -295.857255        0.228047
BFGS:   32 22:59:19     -295.867606        0.346630
BFGS:   33 22:59:20     -295.869958        0.344526
BFGS:   34 22:59:20     -295.883969        0.332821
BFGS:   35 22:59:20     -295.899509        0.290855
BFGS:   36 22:59:21     -295.920072        0.174960
BFGS:   37 22:59:21     -295.925019        0.167359
BFGS:   38 22:59:21     -295.929095        0.135345
BFGS:   39 22:59:22     -295.933000        0.089040
BFGS:   40 22:59:22     -295.934904        0.054101
BFGS:   41 22:59:22     -295.935797        0.055843
BFGS:   42 22:59:23     -295.936163        0.045448
      Step     Time          Energy          fmax
BFGS:    0 22:59:23     -295.400541        1.122818
BFGS:    1 22:59:23     -295.470342        1.032944
BFGS:    2 22:59:24     -295.682208        1.119403
BFGS:    3 22:59:24     -295.709714        0.553090
BFGS:    4 22:59:24     -295.720021        0.464336
BFGS:    5 22:59:25     -295.761656        0.536036
BFGS:    6 22:59:25     -295.769539        0.511083
BFGS:    7 22:59:26     -295.818095        0.390167
BFGS:    8 22:59:26     -295.824475        0.269612
BFGS:    9 22:59:26     -295.827254        0.250166
BFGS:   10 22:59:27     -295.833240        0.176944
BFGS:   11 22:59:27     -295.836301        0.120816
BFGS:   12 22:59:28     -295.838249        0.095196
BFGS:   13 22:59:28     -295.838673        0.100647
BFGS:   14 22:59:28     -295.839082        0.090076
BFGS:   15 22:59:29     -295.839636        0.061304
BFGS:   16 22:59:29     -295.840136        0.030115
      Step     Time          Energy          fmax
BFGS:    0 22:59:29     -295.643981        0.740998
BFGS:    1 22:59:30     -295.693997        0.658623
BFGS:    2 22:59:30     -295.864079        0.333945
BFGS:    3 22:59:30     -295.877598        0.367995
BFGS:    4 22:59:31     -295.880760        0.358493
BFGS:    5 22:59:31     -295.906348        0.231943
BFGS:    6 22:59:32     -295.910010        0.220061
BFGS:    7 22:59:32     -295.915991        0.199233
BFGS:    8 22:59:32     -295.919807        0.198898
BFGS:    9 22:59:33     -295.923754        0.217077
BFGS:   10 22:59:33     -295.926294        0.213001
BFGS:   11 22:59:33     -295.928218        0.186490
BFGS:   12 22:59:34     -295.929961        0.144565
BFGS:   13 22:59:34     -295.931896        0.089934
BFGS:   14 22:59:34     -295.933328        0.106120
BFGS:   15 22:59:34     -295.934134        0.118905
BFGS:   16 22:59:35     -295.934821        0.110505
BFGS:   17 22:59:35     -295.935632        0.078536
BFGS:   18 22:59:35     -295.936288        0.036024
      Step     Time          Energy          fmax
BFGS:    0 22:59:35     -295.722936        0.715133
BFGS:    1 22:59:36     -295.770984        0.637668
BFGS:    2 22:59:36     -295.935150        0.354659
BFGS:    3 22:59:36     -295.945051        0.334477
BFGS:    4 22:59:36     -295.947014        0.317498
BFGS:    5 22:59:36     -295.963125        0.129837
BFGS:    6 22:59:37     -295.963917        0.112479
BFGS:    7 22:59:37     -295.966579        0.071699
BFGS:    8 22:59:37     -295.966943        0.059135
BFGS:    9 22:59:37     -295.967188        0.052591
BFGS:   10 22:59:37     -295.967433        0.053924
BFGS:   11 22:59:38     -295.967728        0.043179

Enumerate NEBs

af = AutoFrameDissociation(
    reaction=reaction,
    reactant_system=reactant_configs[reactant_energies.index(min(reactant_energies))],
    product1_systems=product1_configs,
    product1_energies=product1_energies,
    product2_systems=product2_configs,
    product2_energies=product2_energies,
    r_product1_max=2,  # r1 in the above fig
    r_product2_max=3,  # r3 in the above fig
    r_product2_min=1,  # r2 in the above fig
)
import random

nframes = 10
random.seed(
    42
)  # set the seed to make the random generation deterministic for the tutorial!
frame_sets, mapping_idxs = af.get_neb_frames(
    calc,
    n_frames=nframes,
    n_pdt1_sites=4,  # = 5 in the above fig (step 1)
    n_pdt2_sites=4,  # = 5 in the above fig (step 2)
)
      Step     Time          Energy          fmax
BFGS:    0 22:59:38     -303.721980        0.852991
BFGS:    1 22:59:38     -303.742854        0.643770
BFGS:    2 22:59:39     -303.790194        0.589010
BFGS:    3 22:59:39     -303.817819        0.711364
BFGS:    4 22:59:39     -303.845149        0.822461
BFGS:    5 22:59:40     -303.867395        0.604378
BFGS:    6 22:59:40     -303.905250        0.283578
BFGS:    7 22:59:41     -303.909441        0.268110
BFGS:    8 22:59:41     -303.915869        0.164260
BFGS:    9 22:59:41     -303.918709        0.146693
BFGS:   10 22:59:42     -303.920505        0.138967
BFGS:   11 22:59:42     -303.921752        0.135938
BFGS:   12 22:59:42     -303.922900        0.144058
BFGS:   13 22:59:43     -303.923950        0.111511
BFGS:   14 22:59:43     -303.924915        0.126861
BFGS:   15 22:59:43     -303.925674        0.091557
BFGS:   16 22:59:44     -303.926192        0.092961
BFGS:   17 22:59:44     -303.926664        0.087515
BFGS:   18 22:59:44     -303.927305        0.107576
BFGS:   19 22:59:45     -303.928292        0.150922
BFGS:   20 22:59:45     -303.929375        0.137146
BFGS:   21 22:59:46     -303.930055        0.072350
BFGS:   22 22:59:46     -303.930334        0.056393
BFGS:   23 22:59:46     -303.930597        0.082306
BFGS:   24 22:59:47     -303.931195        0.115561
BFGS:   25 22:59:47     -303.932995        0.160355
BFGS:   26 22:59:47     -303.932600        0.504168
BFGS:   27 22:59:48     -303.915009        0.599402
BFGS:   28 22:59:48     -303.947370        0.177886
BFGS:   29 22:59:48     -303.951622        0.186880
BFGS:   30 22:59:49     -303.957335        0.253822
BFGS:   31 22:59:49     -303.972084        0.454856
BFGS:   32 22:59:49     -303.989625        0.577453
BFGS:   33 22:59:50     -304.020094        0.616622
BFGS:   34 22:59:50     -304.047061        0.583232
BFGS:   35 22:59:50     -304.063369        0.616547
BFGS:   36 22:59:51     -304.086193        0.525188
BFGS:   37 22:59:51     -304.102842        0.390973
BFGS:   38 22:59:51     -304.125993        0.459625
BFGS:   39 22:59:52     -304.137758        0.567817
BFGS:   40 22:59:52     -304.150670        0.522281
BFGS:   41 22:59:52     -304.172310        0.669416
BFGS:   42 22:59:53     -304.213175        0.771667
BFGS:   43 22:59:53     -304.252923        0.851106
BFGS:   44 22:59:53     -304.301223        0.767266
BFGS:   45 22:59:54     -304.336787        0.758369
BFGS:   46 22:59:54     -304.377464        0.580628
BFGS:   47 22:59:54     -304.405060        0.337848
BFGS:   48 22:59:55     -304.417618        0.263866
BFGS:   49 22:59:55     -304.422970        0.176054
BFGS:   50 22:59:55     -304.426256        0.153723
BFGS:   51 22:59:56     -304.428775        0.161695
BFGS:   52 22:59:56     -304.430079        0.168584
BFGS:   53 22:59:56     -304.431192        0.173327
BFGS:   54 22:59:57     -304.432142        0.175193
BFGS:   55 22:59:57     -304.433257        0.176843
BFGS:   56 22:59:58     -304.434697        0.179717
BFGS:   57 22:59:58     -304.436655        0.183805
BFGS:   58 22:59:58     -304.438689        0.186594
BFGS:   59 22:59:59     -304.440078        0.188291
BFGS:   60 22:59:59     -304.440989        0.191750
BFGS:   61 22:59:59     -304.441789        0.196223
BFGS:   62 23:00:00     -304.442862        0.201939
BFGS:   63 23:00:00     -304.444218        0.207957
BFGS:   64 23:00:01     -304.445593        0.213596
BFGS:   65 23:00:01     -304.446643        0.217634
BFGS:   66 23:00:01     -304.447535        0.220117
BFGS:   67 23:00:02     -304.448817        0.223694
BFGS:   68 23:00:02     -304.450844        0.230590
BFGS:   69 23:00:03     -304.453313        0.283224
BFGS:   70 23:00:03     -304.455249        0.332110
BFGS:   71 23:00:04     -304.456504        0.357348
BFGS:   72 23:00:04     -304.457807        0.378445
BFGS:   73 23:00:05     -304.459886        0.408809
BFGS:   74 23:00:05     -304.462060        0.430753
BFGS:   75 23:00:05     -304.463363        0.424031
BFGS:   76 23:00:06     -304.463953        0.410077
BFGS:   77 23:00:06     -304.464483        0.400836
BFGS:   78 23:00:06     -304.465226        0.396635
BFGS:   79 23:00:06     -304.466067        0.402298
BFGS:   80 23:00:07     -304.466624        0.414474
BFGS:   81 23:00:07     -304.466869        0.423197
BFGS:   82 23:00:08     -304.467022        0.428230
BFGS:   83 23:00:08     -304.467185        0.431836
BFGS:   84 23:00:08     -304.467378        0.432245
BFGS:   85 23:00:09     -304.467566        0.427389
BFGS:   86 23:00:09     -304.467661        0.420748
BFGS:   87 23:00:09     -304.467710        0.416085
BFGS:   88 23:00:09     -304.467746        0.413186
BFGS:   89 23:00:10     -304.467785        0.411358
BFGS:   90 23:00:10     -304.467838        0.412073
BFGS:   91 23:00:10     -304.467872        0.414509
BFGS:   92 23:00:11     -304.467889        0.417232
BFGS:   93 23:00:11     -304.467899        0.418748
BFGS:   94 23:00:12     -304.467906        0.419980
BFGS:   95 23:00:12     -304.467919        0.420283
BFGS:   96 23:00:13     -304.467930        0.419566
BFGS:   97 23:00:13     -304.467937        0.418406
BFGS:   98 23:00:13     -304.467937        0.417664
BFGS:   99 23:00:14     -304.467940        0.417208
BFGS:  100 23:00:14     -304.467944        0.417208
BFGS:  101 23:00:15     -304.467949        0.417999
BFGS:  102 23:00:15     -304.467949        0.419180
BFGS:  103 23:00:15     -304.467952        0.419957
BFGS:  104 23:00:16     -304.467954        0.420461
BFGS:  105 23:00:16     -304.467953        0.420801
BFGS:  106 23:00:17     -304.467954        0.421113
BFGS:  107 23:00:17     -304.467956        0.421068
BFGS:  108 23:00:17     -304.467956        0.420940
BFGS:  109 23:00:17     -304.467956        0.420654
BFGS:  110 23:00:18     -304.467954        0.420499
BFGS:  111 23:00:19     -304.467955        0.420338
BFGS:  112 23:00:19     -304.467957        0.420291
BFGS:  113 23:00:20     -304.467957        0.420266
BFGS:  114 23:00:20     -304.467955        0.420328
BFGS:  115 23:00:20     -304.467957        0.420443
BFGS:  116 23:00:21     -304.467957        0.420494
BFGS:  117 23:00:21     -304.467957        0.420515
BFGS:  118 23:00:21     -304.467957        0.420478
BFGS:  119 23:00:22     -304.467957        0.420376
BFGS:  120 23:00:22     -304.467957        0.420265
BFGS:  121 23:00:23     -304.467957        0.420218
BFGS:  122 23:00:23     -304.467957        0.420184
BFGS:  123 23:00:23     -304.467956        0.420154
BFGS:  124 23:00:23     -304.467956        0.420187
BFGS:  125 23:00:24     -304.467957        0.420115
BFGS:  126 23:00:24     -304.467957        0.420170
BFGS:  127 23:00:25     -304.467957        0.420157
BFGS:  128 23:00:25     -304.467956        0.420167
BFGS:  129 23:00:26     -304.467957        0.420191
BFGS:  130 23:00:26     -304.467955        0.420233
BFGS:  131 23:00:26     -304.467956        0.420175
BFGS:  132 23:00:27     -304.467957        0.420145
BFGS:  133 23:00:27     -304.467954        0.420163
BFGS:  134 23:00:28     -304.467957        0.420144
BFGS:  135 23:00:28     -304.467957        0.420147
BFGS:  136 23:00:28     -304.467957        0.420150
BFGS:  137 23:00:29     -304.467957        0.420114
BFGS:  138 23:00:29     -304.467956        0.420142
BFGS:  139 23:00:29     -304.467957        0.420120
BFGS:  140 23:00:30     -304.467957        0.420130
BFGS:  141 23:00:30     -304.467956        0.420138
BFGS:  142 23:00:30     -304.467957        0.420161
BFGS:  143 23:00:31     -304.467957        0.420160
BFGS:  144 23:00:31     -304.467957        0.420125
BFGS:  145 23:00:32     -304.467957        0.420157
BFGS:  146 23:00:32     -304.467957        0.420151
BFGS:  147 23:00:32     -304.467955        0.420165
BFGS:  148 23:00:33     -304.467956        0.420178
BFGS:  149 23:00:33     -304.467955        0.420153
BFGS:  150 23:00:34     -304.467956        0.420161
BFGS:  151 23:00:34     -304.467955        0.420150
BFGS:  152 23:00:34     -304.467957        0.420142
BFGS:  153 23:00:35     -304.467957        0.420143
BFGS:  154 23:00:35     -304.467957        0.420137
BFGS:  155 23:00:35     -304.467957        0.420161
BFGS:  156 23:00:36     -304.467954        0.420166
BFGS:  157 23:00:36     -304.467955        0.420141
BFGS:  158 23:00:36     -304.467957        0.420152
BFGS:  159 23:00:37     -304.467956        0.420168
BFGS:  160 23:00:37     -304.467957        0.420133
BFGS:  161 23:00:38     -304.467957        0.420149
BFGS:  162 23:00:38     -304.467957        0.420139
BFGS:  163 23:00:38     -304.467956        0.420136
BFGS:  164 23:00:39     -304.467957        0.420180
BFGS:  165 23:00:39     -304.467957        0.420149
BFGS:  166 23:00:39     -304.467956        0.420165
BFGS:  167 23:00:40     -304.467958        0.420146
BFGS:  168 23:00:40     -304.467957        0.420177
BFGS:  169 23:00:41     -304.467957        0.420159
BFGS:  170 23:00:41     -304.467957        0.420142
BFGS:  171 23:00:42     -304.467957        0.420151
BFGS:  172 23:00:42     -304.467957        0.420141
BFGS:  173 23:00:42     -304.467955        0.420180
BFGS:  174 23:00:43     -304.467956        0.420150
BFGS:  175 23:00:43     -304.467957        0.420148
BFGS:  176 23:00:43     -304.467954        0.420175
BFGS:  177 23:00:44     -304.467957        0.420149
BFGS:  178 23:00:44     -304.467957        0.420145
BFGS:  179 23:00:44     -304.467956        0.420179
BFGS:  180 23:00:44     -304.467956        0.420149
BFGS:  181 23:00:45     -304.467957        0.420171
BFGS:  182 23:00:45     -304.467957        0.420146
BFGS:  183 23:00:46     -304.467957        0.420149
BFGS:  184 23:00:46     -304.467957        0.420176
BFGS:  185 23:00:46     -304.467956        0.420148
BFGS:  186 23:00:47     -304.467956        0.420173
BFGS:  187 23:00:47     -304.467957        0.420152
BFGS:  188 23:00:47     -304.467958        0.420149
BFGS:  189 23:00:48     -304.467957        0.420164
BFGS:  190 23:00:48     -304.467957        0.420174
BFGS:  191 23:00:48     -304.467957        0.420158
BFGS:  192 23:00:48     -304.467957        0.420145
BFGS:  193 23:00:49     -304.467957        0.420179
BFGS:  194 23:00:49     -304.467955        0.420142
BFGS:  195 23:00:49     -304.467956        0.420149
BFGS:  196 23:00:50     -304.467954        0.420137
BFGS:  197 23:00:50     -304.467957        0.420146
BFGS:  198 23:00:50     -304.467957        0.420145
BFGS:  199 23:00:51     -304.467957        0.420147
BFGS:  200 23:00:51     -304.467955        0.420143
      Step     Time          Energy          fmax
BFGS:    0 23:00:52     -303.702210        0.949924
BFGS:    1 23:00:52     -303.726816        0.696904
BFGS:    2 23:00:52     -303.772578        0.587851
BFGS:    3 23:00:53     -303.799632        0.663695
BFGS:    4 23:00:54     -303.832856        0.858720
BFGS:    5 23:00:54     -303.856536        0.668932
BFGS:    6 23:00:54     -303.904549        0.312208
BFGS:    7 23:00:55     -303.908596        0.323424
BFGS:    8 23:00:55     -303.915977        0.142930
BFGS:    9 23:00:55     -303.919301        0.128921
BFGS:   10 23:00:55     -303.920796        0.105988
BFGS:   11 23:00:56     -303.921927        0.149089
BFGS:   12 23:00:56     -303.923161        0.156586
BFGS:   13 23:00:56     -303.924378        0.112027
BFGS:   14 23:00:57     -303.925294        0.112744
BFGS:   15 23:00:57     -303.925871        0.086108
BFGS:   16 23:00:57     -303.926279        0.091749
BFGS:   17 23:00:58     -303.926739        0.083675
BFGS:   18 23:00:58     -303.927390        0.120859
BFGS:   19 23:00:59     -303.928286        0.146981
BFGS:   20 23:00:59     -303.929089        0.111736
BFGS:   21 23:00:59     -303.929466        0.047867
      Step     Time          Energy          fmax
BFGS:    0 23:01:00     -304.436212        0.274909
BFGS:    1 23:01:00     -304.439609        0.219784
BFGS:    2 23:01:01     -304.450182        0.122762
BFGS:    3 23:01:01     -304.452497        0.091327
BFGS:    4 23:01:01     -304.453662        0.068449
BFGS:    5 23:01:02     -304.454200        0.070513
BFGS:    6 23:01:02     -304.454781        0.061452
BFGS:    7 23:01:02     -304.455259        0.048708
      Step     Time          Energy          fmax
BFGS:    0 23:01:03     -304.434995        0.228374
BFGS:    1 23:01:03     -304.438219        0.193311
BFGS:    2 23:01:03     -304.449208        0.114367
BFGS:    3 23:01:04     -304.451821        0.083848
BFGS:    4 23:01:04     -304.452911        0.061959
BFGS:    5 23:01:04     -304.453243        0.052641
BFGS:    6 23:01:05     -304.453673        0.044564
      Step     Time          Energy          fmax
BFGS:    0 23:01:05     -303.943122        0.300197
BFGS:    1 23:01:06     -303.947161        0.230963
BFGS:    2 23:01:06     -303.956768        0.139210
BFGS:    3 23:01:07     -303.959477        0.135203
BFGS:    4 23:01:07     -303.961356        0.101883
BFGS:    5 23:01:07     -303.962234        0.078679
BFGS:    6 23:01:08     -303.962923        0.064806
BFGS:    7 23:01:08     -303.963613        0.071197
BFGS:    8 23:01:09     -303.964200        0.083632
BFGS:    9 23:01:09     -303.964597        0.064839
BFGS:   10 23:01:09     -303.964851        0.041291
      Step     Time          Energy          fmax
BFGS:    0 23:01:10     -303.933948        0.411169
BFGS:    1 23:01:10     -303.940324        0.306858
BFGS:    2 23:01:10     -303.953107        0.155562
BFGS:    3 23:01:11     -303.956551        0.131242
BFGS:    4 23:01:11     -303.958766        0.099766
BFGS:    5 23:01:11     -303.959935        0.099819
BFGS:    6 23:01:11     -303.961100        0.090519
BFGS:    7 23:01:12     -303.962264        0.074665
BFGS:    8 23:01:12     -303.963105        0.080328
BFGS:    9 23:01:12     -303.963529        0.057613
BFGS:   10 23:01:13     -303.963772        0.045589
      Step     Time          Energy          fmax
BFGS:    0 23:01:13     -303.941085        0.274457
BFGS:    1 23:01:14     -303.945174        0.231336
BFGS:    2 23:01:14     -303.955286        0.145719
BFGS:    3 23:01:14     -303.958091        0.127104
BFGS:    4 23:01:15     -303.960010        0.103010
BFGS:    5 23:01:15     -303.960953        0.068898
BFGS:    6 23:01:15     -303.961708        0.064161
BFGS:    7 23:01:15     -303.962448        0.069252
BFGS:    8 23:01:16     -303.963108        0.088739
BFGS:    9 23:01:16     -303.963568        0.076186
BFGS:   10 23:01:17     -303.963852        0.042723
      Step     Time          Energy          fmax
BFGS:    0 23:01:17     -303.169477        0.966128
BFGS:    1 23:01:17     -303.196892        0.748267
BFGS:    2 23:01:18     -303.263141        0.689112
BFGS:    3 23:01:18     -303.297330        0.691321
BFGS:    4 23:01:19     -303.330768        0.776063
BFGS:    5 23:01:19     -303.361239        0.613257
BFGS:    6 23:01:19     -303.414271        0.456557
BFGS:    7 23:01:20     -303.418714        0.326585
BFGS:    8 23:01:20     -303.428635        0.154238
BFGS:    9 23:01:20     -303.431727        0.164227
BFGS:   10 23:01:21     -303.433725        0.179881
BFGS:   11 23:01:21     -303.435989        0.190697
BFGS:   12 23:01:21     -303.438219        0.131944
BFGS:   13 23:01:22     -303.439723        0.118734
BFGS:   14 23:01:22     -303.440714        0.095550
BFGS:   15 23:01:22     -303.441378        0.079375
BFGS:   16 23:01:23     -303.442128        0.071310
BFGS:   17 23:01:23     -303.442959        0.101882
BFGS:   18 23:01:24     -303.443700        0.110738
BFGS:   19 23:01:24     -303.444166        0.070537
BFGS:   20 23:01:24     -303.444374        0.050953
BFGS:   21 23:01:25     -303.444495        0.043220
/home/runner/work/_tool/Python/3.12.12/x64/lib/python3.12/site-packages/fairchem/applications/cattsunami/core/autoframe.py:1551: UserWarning: torch.range is deprecated and will be removed in a future release because its behavior is inconsistent with Python's range builtin. Instead, use torch.arange, which produces values in [start, end).
  alpha = torch.range(0, num_frames - 1, device=device) / (num_frames - 1)

Run NEBs

## This will run all NEBs enumerated - to just run one, run the code cell below.
# On GPU, each NEB takes an average of ~1 minute so this could take around a half hour on GPU
# But much longer on CPU
# Remember that not all NEBs will converge -- the k, nframes would be adjusted to achieve convergence

fmax = 0.05  # [eV / ang**2]
delta_fmax_climb = 0.4
converged_idxs = []

for idx, frame_set in enumerate(frame_sets):
    neb = DyNEB(frame_set, k=1)
    for image in frame_set:
        image.calc = FAIRChemCalculator(predictor, task_name="oc20")

    optimizer = BFGS(
        neb,
        trajectory=f"ch_dissoc_on_Ru_{idx}.traj",
    )
    conv = optimizer.run(fmax=fmax + delta_fmax_climb, steps=optimization_steps)
    if conv:
        neb.climb = True
        conv = optimizer.run(fmax=fmax, steps=optimization_steps)
        if conv:
            converged_idxs.append(idx)

print(converged_idxs)

This cell will run a shorter calculations for just a single one of the enumerated transition state pathways. You can adapt this code to run transition state searches via nudged elastic band (NEB) calculations for any reaction.

# If you run the above cell -- dont run this one
fmax = 0.05  # [eV / ang**2]
delta_fmax_climb = 0.4
images = frame_sets[0]
neb = DyNEB(images, k=1)
for image in images:
    image.calc = FAIRChemCalculator(predictor, task_name="oc20")

optimizer = BFGS(
    neb,
    trajectory="ch_dissoc_on_Ru_0.traj",
)
conv = optimizer.run(fmax=fmax + delta_fmax_climb, steps=optimization_steps)
if conv:
    neb.climb = True
    conv = optimizer.run(fmax=fmax, steps=optimization_steps)
      Step     Time          Energy          fmax
BFGS:    0 23:02:24     -303.007792        3.681353
BFGS:    1 23:02:26     -303.130302        2.867159
BFGS:    2 23:02:29     -303.333886       11.166837
BFGS:    3 23:02:33     -303.301855        2.010786
BFGS:    4 23:02:35     -303.360719        1.710673
BFGS:    5 23:02:38     -303.500831        2.690992
BFGS:    6 23:02:41     -303.532175        1.055622
BFGS:    7 23:02:44     -303.598150        0.917119
BFGS:    8 23:02:47     -303.623930        0.928256
BFGS:    9 23:02:51     -303.664204        0.610315
BFGS:   10 23:02:54     -303.682007        0.654045
BFGS:   11 23:02:57     -303.694665        0.466552
BFGS:   12 23:02:59     -303.692039        0.416565
BFGS:   13 23:03:02     -303.687652        0.378083
BFGS:   14 23:03:06     -303.688221        0.346287
BFGS:   15 23:03:08     -303.686371        0.291789
BFGS:   16 23:03:11     -303.682277        0.230083
BFGS:   17 23:03:13     -303.678589        0.171670
BFGS:   18 23:03:16     -303.676954        0.133069
BFGS:   19 23:03:20     -303.676225        0.136266
BFGS:   20 23:03:22     -303.675588        0.121857
BFGS:   21 23:03:25     -303.675360        0.114572
BFGS:   22 23:03:27     -303.675548        0.113338
BFGS:   23 23:03:30     -303.676149        0.106642
BFGS:   24 23:03:32     -303.677020        0.110770
BFGS:   25 23:03:35     -303.676994        0.104709
BFGS:   26 23:03:38     -303.676550        0.098293
BFGS:   27 23:03:40     -303.675754        0.140505
BFGS:   28 23:03:42     -303.675734        0.102702
BFGS:   29 23:03:46     -303.675620        0.067242
BFGS:   30 23:03:52     -303.675861        0.072843
BFGS:   31 23:03:54     -303.675861        0.075560
BFGS:   32 23:03:55     -303.675861        0.063824
BFGS:   33 23:03:56     -303.675861        0.051492
BFGS:   34 23:03:57     -303.675861        0.044808

Visualize the results

Finally, let’s visualize the results!

optimized_neb = read("ch_dissoc_on_Ru_0.traj", ":")[-1 * nframes :]
es = []
for frame in optimized_neb:
    frame.set_calculator(calc)
    es.append(frame.get_potential_energy())
/tmp/ipykernel_10507/3247994494.py:3: FutureWarning: Please use atoms.calc = calc
  frame.set_calculator(calc)
# Plot the reaction coordinate

es = [e - es[0] for e in es]
plt.plot(es)
plt.xlabel("frame number")
plt.ylabel("relative energy [eV]")
plt.title(f"CH dissociation on Ru(0001), Ea = {max(es):1.2f} eV")
plt.savefig("CH_dissoc_on_Ru_0001.png")
<Figure size 640x480 with 1 Axes>

To generalize an interactive visualization, use ase gui from the command line or the X3D package

# Make an interative html file of the optimized neb trajectory
x3d = X3D(optimized_neb)
x3d.write("optimized_neb_ch_disoc_on_Ru0001.html")