Repository: OpenFreeEnergy/ExampleNotebooks
Pull request #207: notebooks clean up
Author: login: atravitz
Created: 2025-05-19T20:02:02Z | Merged: 2025-05-20T20:03:50Z



Diff:
diff --git a/.binder/environment.yml b/.binder/environment.yml
index 665fd15..9ed9164 100644
--- a/.binder/environment.yml
+++ b/.binder/environment.yml
@@ -27,6 +27,6 @@ dependencies:
   - python
   - rdkit
   - typing_extensions
-  - gufe>=0.9.4
+  - gufe>=1.4.1
   - openfe~=1.2
   - py3dmol
diff --git a/abfe_tutorial/python_tutorial.ipynb b/abfe_tutorial/abfe_tutorial.ipynb
similarity index 96%
rename from abfe_tutorial/python_tutorial.ipynb
rename to abfe_tutorial/abfe_tutorial.ipynb
index ace99f5..b1266b0 100644
--- a/abfe_tutorial/python_tutorial.ipynb
+++ b/abfe_tutorial/abfe_tutorial.ipynb
@@ -25,11 +25,13 @@
   {
    "cell_type": "markdown",
    "id": "f9154ba7",
-   "metadata": {},
+   "metadata": {
+    "jp-MarkdownHeadingCollapsed": true
+   },
    "source": [
-    "# 0. Setup for Google Colab\n",
+    "## 0. Setup for Google Colab\n",
     "\n",
-    "If you are running this example in Google Colab, run the following cells to setup the environment. If you are running this notebook locally, skip down to `1. Overview`"
+    "If you are running this example in Google Colab, run the following cells to setup the environment. If you are running this notebook locally, skip down to `1. Loading the ligand`"
    ]
   },
   {
@@ -45,7 +47,7 @@
     "if \"COLAB_RELEASE_TAG\" in os.environ:\n",
     "    !pip install -q condacolab\n",
     "    import condacolab\n",
-    "    condacolab.install_from_url(\"https://github.com/OpenFreeEnergy/ExampleNotebooks/releases/download/april-2025/OpenFEforge-1.5.0.dev0-Linux-x86_64.sh\")"
+    "    condacolab.install_from_url(\"https://github.com/OpenFreeEnergy/ExampleNotebooks/releases/download/april-2025/OpenFEforge-1.5.0a0-Linux-x86_64.sh\")"
    ]
   },
   {
@@ -73,17 +75,6 @@
     "        break"
    ]
   },
-  {
-   "cell_type": "code",
-   "execution_count": 1,
-   "id": "fc97de03",
-   "metadata": {},
-   "outputs": [],
-   "source": [
-    "%matplotlib inline\n",
-    "import openfe"
-   ]
-  },
   {
    "cell_type": "markdown",
    "id": "2fea29c3",
@@ -96,6 +87,17 @@
     "This can be loaded using the `SDMolSupplier` class from rdkit and passed to openfe."
    ]
   },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "id": "fc97de03",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "%matplotlib inline\n",
+    "import openfe"
+   ]
+  },
   {
    "cell_type": "code",
    "execution_count": 2,
@@ -131,9 +133,7 @@
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "/Users/hannahbaumann/miniforge3/envs/openfe_dev/lib/python3.12/site-packages/gufe/components/explicitmoleculecomponent.py:93: UserWarning: Partial charges have been provided, these will preferentially be used instead of generating new partial charges\n",
-      "  warnings.warn(wmsg)\n",
-      "Generating charges: 100%|█████████████████████████| 1/1 [00:00<00:00,  1.79it/s]\n"
+      "Generating charges: 100%|█████████████████████████| 1/1 [00:00<00:00,  1.53it/s]\n"
      ]
     }
    ],
@@ -231,33 +231,17 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 7,
+   "execution_count": 10,
    "id": "c31c712b-4844-477b-8aa4-ded6f0c8ca5f",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "/Users/hannahbaumann/miniforge3/envs/openfe_dev/lib/python3.12/site-packages/Bio/Application/__init__.py:39: BiopythonDeprecationWarning: The Bio.Application modules and modules relying on it have been deprecated.\n",
-      "\n",
-      "Due to the on going maintenance burden of keeping command line application\n",
-      "wrappers up to date, we have decided to deprecate and eventually remove these\n",
-      "modules.\n",
-      "\n",
-      "We instead now recommend building your command line and invoking it directly\n",
-      "with the subprocess module.\n",
-      "  warnings.warn(\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
-    "from openfe.protocols.openmm_afe import AbsoluteBindingProtocol"
+    "from openfe.protocols.openmm_afe import AbsoluteBindingProtocol;"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 8,
+   "execution_count": 11,
    "id": "fb839094",
    "metadata": {},
    "outputs": [],
@@ -267,7 +251,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 9,
+   "execution_count": 12,
    "id": "8b99f77f-c70c-436d-b4eb-fb462a4b043e",
    "metadata": {
     "scrolled": true
@@ -443,7 +427,7 @@
       "                        'host_max_distance': <Quantity(3, 'nanometer')>,\n",
       "                        'host_min_distance': <Quantity(1, 'nanometer')>,\n",
       "                        'host_selection': 'backbone',\n",
-      "                        'rmsf_cutoff': <Quantity(1, 'nanometer')>},\n",
+      "                        'rmsf_cutoff': <Quantity(0.1, 'nanometer')>},\n",
       " 'solvent_equil_output_settings': {'checkpoint_interval': <Quantity(250.0, 'picosecond')>,\n",
       "                                   'checkpoint_storage_filename': 'checkpoint.chk',\n",
       "                                   'equil_npt_structure': 'equil_npt_structure.pdb',\n",
@@ -550,7 +534,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 9,
+   "execution_count": 13,
    "id": "55067780-d228-4661-8c1e-5cb0217fd2dc",
    "metadata": {},
    "outputs": [],
@@ -577,7 +561,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 10,
+   "execution_count": 14,
    "id": "23f6322b-0336-4aa9-b9d0-ebe533dc5753",
    "metadata": {},
    "outputs": [],
@@ -611,7 +595,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 11,
+   "execution_count": 15,
    "id": "1231fad8-b37d-4008-a851-5ad546386286",
    "metadata": {},
    "outputs": [],
@@ -635,7 +619,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 12,
+   "execution_count": 16,
    "id": "b69efbcd-b888-4afc-a33e-01860889f408",
    "metadata": {},
    "outputs": [],
@@ -683,7 +667,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 13,
+   "execution_count": 17,
    "id": "44ba94ca",
    "metadata": {},
    "outputs": [],
@@ -718,7 +702,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 14,
+   "execution_count": 18,
    "id": "6dbedb47-46b9-4c22-ad74-a580174a359c",
    "metadata": {},
    "outputs": [],
@@ -729,7 +713,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 16,
+   "execution_count": 19,
    "id": "be690ef1-3243-4114-b56f-5babbb660af6",
    "metadata": {
     "scrolled": true
@@ -738,10 +722,10 @@
    "source": [
     "# Finally we can run the simulations\n",
     "path = pathlib.Path('./abfe_results')\n",
-    "path.mkdir()\n",
     "\n",
-    "# Execute the DAG\n",
     "# Commented out since this would be too expensive to run in this notebook.\n",
+    "# path.mkdir()\n",
+    "# Execute the DAG\n",
     "# dag_results = execute_DAG(dag, scratch_basedir=path, shared_basedir=path, n_retries=3)"
    ]
   },
@@ -782,7 +766,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 17,
+   "execution_count": 20,
    "id": "d0f6b8fb-dde2-442a-b641-3160a70e2f84",
    "metadata": {},
    "outputs": [],
@@ -803,7 +787,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 18,
+   "execution_count": 21,
    "id": "847b5663-2e6c-4cb2-aa9d-39d132fcff3d",
    "metadata": {},
    "outputs": [],
@@ -844,7 +828,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 12,
+   "execution_count": 22,
    "id": "f62f69a1-09c0-4a4a-9b37-9663b51a75ac",
    "metadata": {},
    "outputs": [],
@@ -862,7 +846,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 13,
+   "execution_count": 23,
    "id": "3b459b28-a4dc-4fa9-a961-b106c45d79ce",
    "metadata": {},
    "outputs": [
@@ -875,7 +859,7 @@
        " 'pint_unit_registry': 'openff_units'}"
       ]
      },
-     "execution_count": 13,
+     "execution_count": 23,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -909,7 +893,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.12.8"
+   "version": "3.12.10"
   }
  },
  "nbformat": 4,
diff --git a/ahfe_tutorial/python_tutorial.ipynb b/ahfe_tutorial/ahfe_tutorial.ipynb
similarity index 88%
rename from ahfe_tutorial/python_tutorial.ipynb
rename to ahfe_tutorial/ahfe_tutorial.ipynb
index 08ae8e9..d5af938 100644
--- a/ahfe_tutorial/python_tutorial.ipynb
+++ b/ahfe_tutorial/ahfe_tutorial.ipynb
@@ -25,11 +25,13 @@
   {
    "cell_type": "markdown",
    "id": "e26c8170",
-   "metadata": {},
+   "metadata": {
+    "jp-MarkdownHeadingCollapsed": true
+   },
    "source": [
-    "# 0. Setup for Google Colab\n",
+    "## 0. Setup for Google Colab\n",
     "\n",
-    "If you are running this example in Google Colab, run the following cells to setup the environment. If you are running this notebook locally, skip down to `1. Overview`"
+    "If you are running this example in Google Colab, run the following cells to setup the environment. If you are running this notebook locally, skip down to `1. Loading the ligand`"
    ]
   },
   {
@@ -73,17 +75,6 @@
     "        break"
    ]
   },
-  {
-   "cell_type": "code",
-   "execution_count": 1,
-   "id": "fc97de03",
-   "metadata": {},
-   "outputs": [],
-   "source": [
-    "%matplotlib inline\n",
-    "import openfe"
-   ]
-  },
   {
    "cell_type": "markdown",
    "id": "2fea29c3",
@@ -96,6 +87,17 @@
     "This can be loaded using the `SDMolSupplier` class from rdkit and passed to openfe."
    ]
   },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "id": "fc97de03",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "%matplotlib inline\n",
+    "import openfe"
+   ]
+  },
   {
    "cell_type": "code",
    "execution_count": 2,
@@ -200,13 +202,13 @@
      "output_type": "stream",
      "text": [
       "{'alchemical_settings': {},\n",
-      " 'integrator_settings': {'barostat_frequency': <Quantity(25, 'timestep')>,\n",
+      " 'integrator_settings': {'barostat_frequency': <Quantity(25.0, 'timestep')>,\n",
       "                         'constraint_tolerance': 1e-06,\n",
       "                         'langevin_collision_rate': <Quantity(1.0, '1 / picosecond')>,\n",
       "                         'n_restart_attempts': 20,\n",
       "                         'reassign_velocities': False,\n",
       "                         'remove_com': False,\n",
-      "                         'timestep': <Quantity(4, 'femtosecond')>},\n",
+      "                         'timestep': <Quantity(4.0, 'femtosecond')>},\n",
       " 'lambda_settings': {'lambda_elec': [0.0,\n",
       "                                     0.25,\n",
       "                                     0.5,\n",
@@ -254,10 +256,15 @@
       "                             'off_toolkit_backend': 'ambertools',\n",
       "                             'partial_charge_method': 'am1bcc'},\n",
       " 'protocol_repeats': 3,\n",
-      " 'solvation_settings': {'solvent_model': 'tip3p',\n",
+      " 'solvation_settings': {'box_shape': 'cube',\n",
+      "                        'box_size': None,\n",
+      "                        'box_vectors': None,\n",
+      "                        'number_of_solvent_molecules': None,\n",
+      "                        'solvent_model': 'tip3p',\n",
       "                        'solvent_padding': <Quantity(1.2, 'nanometer')>},\n",
-      " 'solvent_engine_settings': {'compute_platform': None},\n",
-      " 'solvent_equil_output_settings': {'checkpoint_interval': <Quantity(250, 'picosecond')>,\n",
+      " 'solvent_engine_settings': {'compute_platform': None,\n",
+      "                             'gpu_device_index': None},\n",
+      " 'solvent_equil_output_settings': {'checkpoint_interval': <Quantity(250.0, 'picosecond')>,\n",
       "                                   'checkpoint_storage_filename': 'checkpoint.chk',\n",
       "                                   'equil_npt_structure': 'equil_npt_structure.pdb',\n",
       "                                   'equil_nvt_structure': 'equil_nvt_structure.pdb',\n",
@@ -267,7 +274,7 @@
       "                                   'output_indices': 'not water',\n",
       "                                   'preminimized_structure': 'system.pdb',\n",
       "                                   'production_trajectory_filename': 'production_equil.xtc',\n",
-      "                                   'trajectory_write_interval': <Quantity(20, 'picosecond')>},\n",
+      "                                   'trajectory_write_interval': <Quantity(20.0, 'picosecond')>},\n",
       " 'solvent_equil_simulation_settings': {'equilibration_length': <Quantity(0.2, 'nanosecond')>,\n",
       "                                       'equilibration_length_nvt': <Quantity(0.1, 'nanosecond')>,\n",
       "                                       'minimization_steps': 5000,\n",
@@ -281,30 +288,32 @@
       "                                 'nonbonded_cutoff': <Quantity(1.0, 'nanometer')>,\n",
       "                                 'nonbonded_method': 'PME',\n",
       "                                 'rigid_water': True,\n",
-      "                                 'small_molecule_forcefield': 'openff-2.0.0'},\n",
-      " 'solvent_output_settings': {'checkpoint_interval': <Quantity(250, 'picosecond')>,\n",
+      "                                 'small_molecule_forcefield': 'openff-2.1.1'},\n",
+      " 'solvent_output_settings': {'checkpoint_interval': <Quantity(250.0, 'picosecond')>,\n",
       "                             'checkpoint_storage_filename': 'solvent_checkpoint.nc',\n",
       "                             'forcefield_cache': 'db.json',\n",
       "                             'output_filename': 'solvent.nc',\n",
       "                             'output_indices': 'not water',\n",
-      "                             'output_structure': 'hybrid_system.pdb'},\n",
+      "                             'output_structure': 'hybrid_system.pdb',\n",
+      "                             'positions_write_frequency': <Quantity(100.0, 'picosecond')>,\n",
+      "                             'velocities_write_frequency': None},\n",
       " 'solvent_simulation_settings': {'early_termination_target_error': <Quantity(0.0, 'kilocalorie_per_mole')>,\n",
       "                                 'equilibration_length': <Quantity(1.0, 'nanosecond')>,\n",
       "                                 'minimization_steps': 5000,\n",
       "                                 'n_replicas': 14,\n",
       "                                 'production_length': <Quantity(10.0, 'nanosecond')>,\n",
-      "                                 'real_time_analysis_interval': <Quantity(250, 'picosecond')>,\n",
-      "                                 'real_time_analysis_minimum_time': <Quantity(500, 'picosecond')>,\n",
+      "                                 'real_time_analysis_interval': <Quantity(250.0, 'picosecond')>,\n",
+      "                                 'real_time_analysis_minimum_time': <Quantity(500.0, 'picosecond')>,\n",
       "                                 'sampler_method': 'repex',\n",
       "                                 'sams_flatness_criteria': 'logZ-flatness',\n",
       "                                 'sams_gamma0': 1.0,\n",
-      "                                 'time_per_iteration': <Quantity(1, 'picosecond')>},\n",
+      "                                 'time_per_iteration': <Quantity(1.0, 'picosecond')>},\n",
       " 'thermo_settings': {'ph': None,\n",
       "                     'pressure': <Quantity(0.986923267, 'standard_atmosphere')>,\n",
       "                     'redox_potential': None,\n",
       "                     'temperature': <Quantity(298.15, 'kelvin')>},\n",
-      " 'vacuum_engine_settings': {'compute_platform': None},\n",
-      " 'vacuum_equil_output_settings': {'checkpoint_interval': <Quantity(250, 'picosecond')>,\n",
+      " 'vacuum_engine_settings': {'compute_platform': None, 'gpu_device_index': None},\n",
+      " 'vacuum_equil_output_settings': {'checkpoint_interval': <Quantity(250.0, 'picosecond')>,\n",
       "                                  'checkpoint_storage_filename': 'checkpoint.chk',\n",
       "                                  'equil_npt_structure': 'equil_structure.pdb',\n",
       "                                  'equil_nvt_structure': None,\n",
@@ -314,7 +323,7 @@
       "                                  'output_indices': 'not water',\n",
       "                                  'preminimized_structure': 'system.pdb',\n",
       "                                  'production_trajectory_filename': 'production_equil.xtc',\n",
-      "                                  'trajectory_write_interval': <Quantity(20, 'picosecond')>},\n",
+      "                                  'trajectory_write_interval': <Quantity(20.0, 'picosecond')>},\n",
       " 'vacuum_equil_simulation_settings': {'equilibration_length': <Quantity(0.2, 'nanosecond')>,\n",
       "                                      'equilibration_length_nvt': None,\n",
       "                                      'minimization_steps': 5000,\n",
@@ -328,24 +337,26 @@
       "                                'nonbonded_cutoff': <Quantity(1.0, 'nanometer')>,\n",
       "                                'nonbonded_method': 'nocutoff',\n",
       "                                'rigid_water': True,\n",
-      "                                'small_molecule_forcefield': 'openff-2.0.0'},\n",
-      " 'vacuum_output_settings': {'checkpoint_interval': <Quantity(250, 'picosecond')>,\n",
+      "                                'small_molecule_forcefield': 'openff-2.1.1'},\n",
+      " 'vacuum_output_settings': {'checkpoint_interval': <Quantity(250.0, 'picosecond')>,\n",
       "                            'checkpoint_storage_filename': 'vacuum_checkpoint.nc',\n",
       "                            'forcefield_cache': 'db.json',\n",
       "                            'output_filename': 'vacuum.nc',\n",
       "                            'output_indices': 'not water',\n",
-      "                            'output_structure': 'hybrid_system.pdb'},\n",
+      "                            'output_structure': 'hybrid_system.pdb',\n",
+      "                            'positions_write_frequency': <Quantity(100.0, 'picosecond')>,\n",
+      "                            'velocities_write_frequency': None},\n",
       " 'vacuum_simulation_settings': {'early_termination_target_error': <Quantity(0.0, 'kilocalorie_per_mole')>,\n",
       "                                'equilibration_length': <Quantity(0.5, 'nanosecond')>,\n",
       "                                'minimization_steps': 5000,\n",
       "                                'n_replicas': 14,\n",
       "                                'production_length': <Quantity(2.0, 'nanosecond')>,\n",
-      "                                'real_time_analysis_interval': <Quantity(250, 'picosecond')>,\n",
-      "                                'real_time_analysis_minimum_time': <Quantity(500, 'picosecond')>,\n",
+      "                                'real_time_analysis_interval': <Quantity(250.0, 'picosecond')>,\n",
+      "                                'real_time_analysis_minimum_time': <Quantity(500.0, 'picosecond')>,\n",
       "                                'sampler_method': 'repex',\n",
       "                                'sams_flatness_criteria': 'logZ-flatness',\n",
       "                                'sams_gamma0': 1.0,\n",
-      "                                'time_per_iteration': <Quantity(1, 'picosecond')>}}\n"
+      "                                'time_per_iteration': <Quantity(1.0, 'picosecond')>}}\n"
      ]
     }
    ],
@@ -376,7 +387,7 @@
        "$298.15\\ \\mathrm{kelvin}$"
       ],
       "text/plain": [
-       "298.15 <Unit('kelvin')>"
+       "<Quantity(298.15, 'kelvin')>"
       ]
      },
      "execution_count": 8,
@@ -424,7 +435,7 @@
        "$1.0\\ \\mathrm{nanosecond}$"
       ],
       "text/plain": [
-       "1.0 <Unit('nanosecond')>"
+       "<Quantity(1.0, 'nanosecond')>"
       ]
      },
      "execution_count": 10,
@@ -492,20 +503,22 @@
    "cell_type": "code",
    "execution_count": 13,
    "id": "137d3f96-00fc-4400-bf5d-b8ed355dbbec",
-   "metadata": {},
+   "metadata": {
+    "scrolled": true
+   },
    "outputs": [
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
       "{'alchemical_settings': {},\n",
-      " 'integrator_settings': {'barostat_frequency': <Quantity(25, 'timestep')>,\n",
+      " 'integrator_settings': {'barostat_frequency': <Quantity(25.0, 'timestep')>,\n",
       "                         'constraint_tolerance': 1e-06,\n",
       "                         'langevin_collision_rate': <Quantity(1.0, '1 / picosecond')>,\n",
       "                         'n_restart_attempts': 20,\n",
       "                         'reassign_velocities': False,\n",
       "                         'remove_com': False,\n",
-      "                         'timestep': <Quantity(4, 'femtosecond')>},\n",
+      "                         'timestep': <Quantity(4.0, 'femtosecond')>},\n",
       " 'lambda_settings': {'lambda_elec': [0.0,\n",
       "                                     0.26,\n",
       "                                     0.5,\n",
@@ -553,10 +566,15 @@
       "                             'off_toolkit_backend': 'ambertools',\n",
       "                             'partial_charge_method': 'am1bcc'},\n",
       " 'protocol_repeats': 1,\n",
-      " 'solvation_settings': {'solvent_model': 'tip3p',\n",
+      " 'solvation_settings': {'box_shape': 'cube',\n",
+      "                        'box_size': None,\n",
+      "                        'box_vectors': None,\n",
+      "                        'number_of_solvent_molecules': None,\n",
+      "                        'solvent_model': 'tip3p',\n",
       "                        'solvent_padding': <Quantity(1.2, 'nanometer')>},\n",
-      " 'solvent_engine_settings': {'compute_platform': 'CUDA'},\n",
-      " 'solvent_equil_output_settings': {'checkpoint_interval': <Quantity(250, 'picosecond')>,\n",
+      " 'solvent_engine_settings': {'compute_platform': 'CUDA',\n",
+      "                             'gpu_device_index': None},\n",
+      " 'solvent_equil_output_settings': {'checkpoint_interval': <Quantity(250.0, 'picosecond')>,\n",
       "                                   'checkpoint_storage_filename': 'checkpoint.chk',\n",
       "                                   'equil_npt_structure': 'equil_npt_structure.pdb',\n",
       "                                   'equil_nvt_structure': 'equil_nvt_structure.pdb',\n",
@@ -566,7 +584,7 @@
       "                                   'output_indices': 'not water',\n",
       "                                   'preminimized_structure': 'system.pdb',\n",
       "                                   'production_trajectory_filename': 'production_equil.xtc',\n",
-      "                                   'trajectory_write_interval': <Quantity(20, 'picosecond')>},\n",
+      "                                   'trajectory_write_interval': <Quantity(20.0, 'picosecond')>},\n",
       " 'solvent_equil_simulation_settings': {'equilibration_length': <Quantity(0.2, 'nanosecond')>,\n",
       "                                       'equilibration_length_nvt': <Quantity(0.1, 'nanosecond')>,\n",
       "                                       'minimization_steps': 5000,\n",
@@ -580,30 +598,32 @@
       "                                 'nonbonded_cutoff': <Quantity(1.0, 'nanometer')>,\n",
       "                                 'nonbonded_method': 'PME',\n",
       "                                 'rigid_water': True,\n",
-      "                                 'small_molecule_forcefield': 'openff-2.0.0'},\n",
-      " 'solvent_output_settings': {'checkpoint_interval': <Quantity(250, 'picosecond')>,\n",
+      "                                 'small_molecule_forcefield': 'openff-2.1.1'},\n",
+      " 'solvent_output_settings': {'checkpoint_interval': <Quantity(250.0, 'picosecond')>,\n",
       "                             'checkpoint_storage_filename': 'solvent_checkpoint.nc',\n",
       "                             'forcefield_cache': 'db.json',\n",
       "                             'output_filename': 'solvent.nc',\n",
       "                             'output_indices': 'not water',\n",
-      "                             'output_structure': 'hybrid_system.pdb'},\n",
+      "                             'output_structure': 'hybrid_system.pdb',\n",
+      "                             'positions_write_frequency': <Quantity(100.0, 'picosecond')>,\n",
+      "                             'velocities_write_frequency': None},\n",
       " 'solvent_simulation_settings': {'early_termination_target_error': <Quantity(0.0, 'kilocalorie_per_mole')>,\n",
       "                                 'equilibration_length': <Quantity(0.01, 'nanosecond')>,\n",
       "                                 'minimization_steps': 5000,\n",
       "                                 'n_replicas': 14,\n",
       "                                 'production_length': <Quantity(0.5, 'nanosecond')>,\n",
-      "                                 'real_time_analysis_interval': <Quantity(250, 'picosecond')>,\n",
-      "                                 'real_time_analysis_minimum_time': <Quantity(500, 'picosecond')>,\n",
+      "                                 'real_time_analysis_interval': <Quantity(250.0, 'picosecond')>,\n",
+      "                                 'real_time_analysis_minimum_time': <Quantity(500.0, 'picosecond')>,\n",
       "                                 'sampler_method': 'repex',\n",
       "                                 'sams_flatness_criteria': 'logZ-flatness',\n",
       "                                 'sams_gamma0': 1.0,\n",
-      "                                 'time_per_iteration': <Quantity(1, 'picosecond')>},\n",
+      "                                 'time_per_iteration': <Quantity(1.0, 'picosecond')>},\n",
       " 'thermo_settings': {'ph': None,\n",
       "                     'pressure': <Quantity(0.986923267, 'standard_atmosphere')>,\n",
       "                     'redox_potential': None,\n",
       "                     'temperature': <Quantity(298.15, 'kelvin')>},\n",
-      " 'vacuum_engine_settings': {'compute_platform': None},\n",
-      " 'vacuum_equil_output_settings': {'checkpoint_interval': <Quantity(250, 'picosecond')>,\n",
+      " 'vacuum_engine_settings': {'compute_platform': None, 'gpu_device_index': None},\n",
+      " 'vacuum_equil_output_settings': {'checkpoint_interval': <Quantity(250.0, 'picosecond')>,\n",
       "                                  'checkpoint_storage_filename': 'checkpoint.chk',\n",
       "                                  'equil_npt_structure': 'equil_structure.pdb',\n",
       "                                  'equil_nvt_structure': None,\n",
@@ -613,7 +633,7 @@
       "                                  'output_indices': 'not water',\n",
       "                                  'preminimized_structure': 'system.pdb',\n",
       "                                  'production_trajectory_filename': 'production_equil.xtc',\n",
-      "                                  'trajectory_write_interval': <Quantity(20, 'picosecond')>},\n",
+      "                                  'trajectory_write_interval': <Quantity(20.0, 'picosecond')>},\n",
       " 'vacuum_equil_simulation_settings': {'equilibration_length': <Quantity(0.2, 'nanosecond')>,\n",
       "                                      'equilibration_length_nvt': None,\n",
       "                                      'minimization_steps': 5000,\n",
@@ -627,24 +647,26 @@
       "                                'nonbonded_cutoff': <Quantity(1.0, 'nanometer')>,\n",
       "                                'nonbonded_method': 'nocutoff',\n",
       "                                'rigid_water': True,\n",
-      "                                'small_molecule_forcefield': 'openff-2.0.0'},\n",
-      " 'vacuum_output_settings': {'checkpoint_interval': <Quantity(250, 'picosecond')>,\n",
+      "                                'small_molecule_forcefield': 'openff-2.1.1'},\n",
+      " 'vacuum_output_settings': {'checkpoint_interval': <Quantity(250.0, 'picosecond')>,\n",
       "                            'checkpoint_storage_filename': 'vacuum_checkpoint.nc',\n",
       "                            'forcefield_cache': 'db.json',\n",
       "                            'output_filename': 'vacuum.nc',\n",
       "                            'output_indices': 'not water',\n",
-      "                            'output_structure': 'hybrid_system.pdb'},\n",
+      "                            'output_structure': 'hybrid_system.pdb',\n",
+      "                            'positions_write_frequency': <Quantity(100.0, 'picosecond')>,\n",
+      "                            'velocities_write_frequency': None},\n",
       " 'vacuum_simulation_settings': {'early_termination_target_error': <Quantity(0.0, 'kilocalorie_per_mole')>,\n",
       "                                'equilibration_length': <Quantity(0.01, 'nanosecond')>,\n",
       "                                'minimization_steps': 5000,\n",
       "                                'n_replicas': 14,\n",
       "                                'production_length': <Quantity(0.5, 'nanosecond')>,\n",
-      "                                'real_time_analysis_interval': <Quantity(250, 'picosecond')>,\n",
-      "                                'real_time_analysis_minimum_time': <Quantity(500, 'picosecond')>,\n",
+      "                                'real_time_analysis_interval': <Quantity(250.0, 'picosecond')>,\n",
+      "                                'real_time_analysis_minimum_time': <Quantity(500.0, 'picosecond')>,\n",
       "                                'sampler_method': 'repex',\n",
       "                                'sams_flatness_criteria': 'logZ-flatness',\n",
       "                                'sams_gamma0': 1.0,\n",
-      "                                'time_per_iteration': <Quantity(1, 'picosecond')>}}\n"
+      "                                'time_per_iteration': <Quantity(1.0, 'picosecond')>}}\n"
      ]
     }
    ],
@@ -815,46 +837,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 19,
    "id": "be690ef1-3243-4114-b56f-5babbb660af6",
    "metadata": {
     "scrolled": true
    },
-   "outputs": [
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "/Users/hannahbaumann/openfe/openfe/protocols/openmm_rfe/_rfe_utils/compute.py:56: UserWarning: Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "  warnings.warn(wmsg)\n",
-      "WARNING:root:Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "WARNING:openmmtools.multistate.multistatereporter:Warning: The openmmtools.multistate API is experimental and may change in future releases\n",
-      "WARNING:root:Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "WARNING:openmmtools.multistate.multistatesampler:Warning: The openmmtools.multistate API is experimental and may change in future releases\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Please cite the following:\n",
-      "\n",
-      "        Friedrichs MS, Eastman P, Vaidyanathan V, Houston M, LeGrand S, Beberg AL, Ensign DL, Bruns CM, and Pande VS. Accelerating molecular dynamic simulations on graphics processing unit. J. Comput. Chem. 30:864, 2009. DOI: 10.1002/jcc.21209\n",
-      "        Eastman P and Pande VS. OpenMM: A hardware-independent framework for molecular simulations. Comput. Sci. Eng. 12:34, 2010. DOI: 10.1109/MCSE.2010.27\n",
-      "        Eastman P and Pande VS. Efficient nonbonded interactions for molecular dynamics on a graphics processing unit. J. Comput. Chem. 31:1268, 2010. DOI: 10.1002/jcc.21413\n",
-      "        Eastman P and Pande VS. Constant constraint matrix approximation: A robust, parallelizable constraint method for molecular simulations. J. Chem. Theor. Comput. 6:434, 2010. DOI: 10.1021/ct900463w\n",
-      "        Chodera JD and Shirts MR. Replica exchange and expanded ensemble simulations as Gibbs multistate: Simple improvements for enhanced mixing. J. Chem. Phys., 135:194110, 2011. DOI:10.1063/1.3660669\n",
-      "        \n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# Finally we can run the simulations\n",
     "path = pathlib.Path('./ahfe_results')\n",
-    "path.mkdir()\n",
     "\n",
+    "# Commented out since this would be too expensive to run in this notebook, uncomment if you would like to run locally.\n",
+    "# path.mkdir()\n",
     "# Execute the DAG\n",
-    "dag_results = execute_DAG(dag, scratch_basedir=path, shared_basedir=path, n_retries=3)"
+    "# dag_results = execute_DAG(dag, scratch_basedir=path, shared_basedir=path, n_retries=3)"
    ]
   },
   {
@@ -892,15 +888,15 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 20,
    "id": "d0f6b8fb-dde2-442a-b641-3160a70e2f84",
    "metadata": {},
    "outputs": [],
    "source": [
-    "# Get the complex and solvent results\n",
-    "protocol_results = protocol.gather([dag_results])\n",
+    "# # Get the complex and solvent results\n",
+    "# protocol_results = protocol.gather([dag_results])\n",
     "\n",
-    "print(f\"AHFE dG: {protocol_results.get_estimate()}, err {protocol_results.get_uncertainty()}\")"
+    "# print(f\"AHFE dG: {protocol_results.get_estimate()}, err {protocol_results.get_uncertainty()}\")"
    ]
   },
   {
@@ -913,27 +909,27 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 21,
    "id": "847b5663-2e6c-4cb2-aa9d-39d132fcff3d",
    "metadata": {},
    "outputs": [],
    "source": [
-    "# Save the results in a json file\n",
-    "import gzip\n",
-    "import json\n",
-    "import gufe\n",
-    "outdict = {\n",
-    "    \"estimate\": protocol_results.get_estimate(),\n",
-    "    \"uncertainty\": protocol_results.get_uncertainty(),\n",
-    "    \"protocol_result\": protocol_results.to_dict(),\n",
-    "    \"unit_results\": {\n",
-    "        unit.key: unit.to_keyed_dict()\n",
-    "        for unit in dag_results.protocol_unit_results\n",
-    "    }\n",
-    "}\n",
+    "# # Save the results in a json file\n",
+    "# import gzip\n",
+    "# import json\n",
+    "# import gufe\n",
+    "# outdict = {\n",
+    "#     \"estimate\": protocol_results.get_estimate(),\n",
+    "#     \"uncertainty\": protocol_results.get_uncertainty(),\n",
+    "#     \"protocol_result\": protocol_results.to_dict(),\n",
+    "#     \"unit_results\": {\n",
+    "#         unit.key: unit.to_keyed_dict()\n",
+    "#         for unit in dag_results.protocol_unit_results\n",
+    "#     }\n",
+    "# }\n",
     "\n",
-    "with open(\"ahfe_json/benzene_results.json\") as stream:\n",
-    "    json.dump(outdict, stream, cls=gufe.tokenization.JSON_HANDLER.encoder)"
+    "# with open(\"ahfe_json/benzene_results.json\") as stream:\n",
+    "#     json.dump(outdict, stream, cls=gufe.tokenization.JSON_HANDLER.encoder)"
    ]
   },
   {
@@ -954,7 +950,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 19,
+   "execution_count": 22,
    "id": "f62f69a1-09c0-4a4a-9b37-9663b51a75ac",
    "metadata": {},
    "outputs": [],
@@ -972,7 +968,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 20,
+   "execution_count": 23,
    "id": "3b459b28-a4dc-4fa9-a961-b106c45d79ce",
    "metadata": {},
    "outputs": [
@@ -985,7 +981,7 @@
        " 'pint_unit_registry': 'openff_units'}"
       ]
      },
-     "execution_count": 20,
+     "execution_count": 23,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -993,6 +989,14 @@
    "source": [
     "estimate"
    ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "f65ef93f-89be-4c15-8ac6-014509625be4",
+   "metadata": {},
+   "outputs": [],
+   "source": []
   }
  ],
  "metadata": {
@@ -1011,7 +1015,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.11.6"
+   "version": "3.12.10"
   }
  },
  "nbformat": 4,
diff --git a/openmm_md/plain_md.ipynb b/openmm_md/plain_md.ipynb
index c705b22..ffc5107 100644
--- a/openmm_md/plain_md.ipynb
+++ b/openmm_md/plain_md.ipynb
@@ -69,7 +69,7 @@
    "id": "fc27c86c",
    "metadata": {},
    "source": [
-    "# 0. Setup for Google Colab\n",
+    "## 0. Setup for Google Colab\n",
     "\n",
     "If you are running this example in Google Colab, run the following cells to setup the environment. If you are running this notebook locally, skip down to `1. Overview`"
    ]
diff --git a/openmm_septop/python_tutorial.ipynb b/openmm_septop/septop_tutorial.ipynb
similarity index 94%
rename from openmm_septop/python_tutorial.ipynb
rename to openmm_septop/septop_tutorial.ipynb
index 7e6ddbb..47cb469 100644
--- a/openmm_septop/python_tutorial.ipynb
+++ b/openmm_septop/septop_tutorial.ipynb
@@ -15,7 +15,7 @@
     "Each ligand is represented with its own set of coordinates, meaning that the interactions of all atoms of one ligand are turned off while simultaneously turning on the interactions of all atoms of the other ligand. Therefore, restraints are required: \n",
     "Ligands are restrained to the protein in the complex states using orientational (Boresch-style) restraints; in the solvent states ligands are restrained to remain apart from each other using a single harmonic distance restraint between the ligands. Restraints are not depicted in the thermodynamic cycle below for simplicity.\n",
     "\n",
-    "Note: In this `Protocol`, the coulombic interactions of the molecule are fully turned off (annihilated), while the Lennard-Jones interactions are decoupled, meaning the intermolecular interactions are turned off, whilst keeping the intramolecular Lennard-Jones interactions."
+    "**Note:** In this `Protocol`, the coulombic interactions of the molecule are fully turned off (annihilated), while the Lennard-Jones interactions are decoupled, meaning the intermolecular interactions are turned off, while keeping the intramolecular Lennard-Jones interactions."
    ]
   },
   {
@@ -26,15 +26,55 @@
     "<img src=\"septop_cycle.png\" width=600 height=600 />"
    ]
   },
+  {
+   "cell_type": "markdown",
+   "id": "4df1661a",
+   "metadata": {},
+   "source": [
+    "## 0. Setup for Google Colab\n",
+    "\n",
+    "If you are running this example in Google Colab, run the following cells to setup the environment. If you are running this notebook locally, skip down to `1. Loading the ligands`"
+   ]
+  },
   {
    "cell_type": "code",
-   "execution_count": 1,
-   "id": "fc97de03",
+   "execution_count": null,
+   "id": "e178d4d3",
    "metadata": {},
    "outputs": [],
    "source": [
-    "%matplotlib inline\n",
-    "import openfe"
+    "# NBVAL_SKIP\n",
+    "# Only run this cell if on google colab\n",
+    "import os\n",
+    "if \"COLAB_RELEASE_TAG\" in os.environ:\n",
+    "    !pip install -q condacolab\n",
+    "    import condacolab\n",
+    "    condacolab.install_from_url(\"https://github.com/OpenFreeEnergy/ExampleNotebooks/releases/download/april-2025/OpenFEforge-1.5.0a0-Linux-x86_64.sh\")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "111a9e15",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# NBVAL_SKIP\n",
+    "# Only run this cell if on google colab\n",
+    "import os\n",
+    "if \"COLAB_RELEASE_TAG\" in os.environ:\n",
+    "    import condacolab\n",
+    "    import locale\n",
+    "    locale.getpreferredencoding = lambda: \"UTF-8\"\n",
+    "    !mkdir inputs && cd inputs && openfe fetch rbfe-tutorial\n",
+    "    for _ in range(3):\n",
+    "      # Sometimes we have to re-run the check\n",
+    "      try:\n",
+    "        condacolab.check()\n",
+    "      except:\n",
+    "        pass\n",
+    "      else:\n",
+    "        break"
    ]
   },
   {
@@ -42,13 +82,24 @@
    "id": "2fea29c3",
    "metadata": {},
    "source": [
-    "## Loading the ligands\n",
+    "## 1. Loading the ligands\n",
     "\n",
     "First we must load the chemical models between which we wish to calculate free energies.\n",
     "In this example these are initially stored in a molfile (`.sdf`) containing multiple molecules.\n",
     "This can be loaded using the `SDMolSupplier` class from rdkit and passed to openfe."
    ]
   },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "id": "fc97de03",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "%matplotlib inline\n",
+    "import openfe"
+   ]
+  },
   {
    "cell_type": "code",
    "execution_count": 2,
@@ -66,7 +117,7 @@
    "id": "8e5de19a",
    "metadata": {},
    "source": [
-    "## Charging the ligands\n",
+    "## 2. Charging the ligands\n",
     "\n",
     "It is recommended to use a single set of charges for each ligand to ensure reproducibility between repeats or consistent charges between different legs of a calculation involving the same ligand, like a relative binding affinity calculation for example. \n",
     "\n",
@@ -84,7 +135,7 @@
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "Generating charges: 100%|███████████████████████| 10/10 [02:38<00:00, 15.87s/it]\n"
+      "Generating charges: 100%|███████████████████████| 10/10 [02:49<00:00, 16.91s/it]\n"
      ]
     }
    ],
@@ -110,15 +161,15 @@
    "id": "6963be83",
    "metadata": {},
    "source": [
-    "## Creating the `LigandNetwork`\n",
+    "## 3. Creating the `LigandNetwork`\n",
     "\n",
     "The first step is to create a `LigandNetwork`. Here, we will be using the same process as in the relative hybrid topology `Protocol`, including the use of a mapper which is required by the scorer. **The mappings will not be used in the `Protocol`.** This is a temporary solution until we have developed a scorer specifically for the `SepTopProtocol`. Alternatively, the user can also manually define the edges they want to run when creating the transformations below, without creating a `LigandNetwork` first.\n",
     "\n",
     "The pipeline for creating a `LigandNetwork` can involve three components:\n",
     "\n",
-    "* **Atom Mapper**: Proposes potential atom mappings (descriptions of the alchemical change) for pairs of ligands. We will use the `LomapAtomMapper`. **The atom mapping will only be used to score the potential edges, the atom mapping is not used outside of the scorer**.\n",
-    "* **Scorer**: Given an atom mapping, provides an estimate of the quality of that mapping (higher scores are better). We will use `default_lomap_scorer`.\n",
-    "* **Network Planner**: Creates the actual `LigandNetwork`; different network planners provide different strategies. We will create a minimal spanning network with the `generate_minimal_spanning_network` method.\n",
+    "1. **Atom Mapper**: Proposes potential atom mappings (descriptions of the alchemical change) for pairs of ligands. We will use the `LomapAtomMapper`. *The atom mapping will only be used to score the potential edges, the atom mapping is not used outside of the scorer*.\n",
+    "2. **Scorer**: Given an atom mapping, provides an estimate of the quality of that mapping (higher scores are better). We will use `default_lomap_scorer`.\n",
+    "3. **Network Planner**: Creates the actual `LigandNetwork`; different network planners provide different strategies. We will create a minimal spanning network with the `generate_minimal_spanning_network` method.\n",
     "\n",
     "Each of these components could be replaced by other options."
    ]
@@ -173,7 +224,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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AEqqyJw5M0uXLiVPnjz89ttvtG/fntjYWKtjOR273X5765eePXuSMWNGixOJiIgrUgGUVFO4cGEWL16Mt7c3Cxcu5MMPP7Q6ktNZt24du3fvxtfXl+7du1sdR0REXJQKoKSqGjVqMHnyZAA++OADfvjhB4sTOZe4R+117NiRnDlzWpxGRERclQqgpLoOHTrc3ri4ffv27Nq1y+JEzmH//v0sX74cm81G3759rY4jIiIuTAVQ0sTo0aNp2LAh165do1mzZpw/f97qSA5vzJgxADRv3pzixYtbnEZERFyZCqCkCU9PT/773/9SsmRJTp48SYsWLbhx44bVsRzW+fPnmTVrFqCNn0VEJO2pAEqayZYtG8uWLSNbtmxs2bKF7t27Y7fbrY7lkL744gtu3rxJ1apVqVGjhtVxRETExakASpoqUaIE8+fPx9PTkxkzZjB27FirIzmcq1ev8uWXXwJm9E8bP4uISFpTAZQ0V69evdv3tw0YMIDly5dbnMixfPfdd1y8eJFHH32UFi1aWB1HRETcgAqgpItevXrRpUsXYmNjefnllzlw4IDVkRxCbGzs7VHRvn374uXlZXEiERFxByqAki5sNhtffPEFtWvXJiIigqZNm3L58mWrY1lu2bJlHD58mGzZstGpUyer44iIiJtQAZR0E/eEkCJFinD48GFefPFFbt26ZXUsS8U99q1bt274+flZnEZERNyFCqCkq9y5cxMcHEzmzJlZvXq1W295sn37djZu3IiXlxe9evWyOo6IiLgRFUBJd+XLl7+9592ECROYNm2axYmsETf616ZNGwoUKGBxGhERcScqgGKJFi1a8NFHHwHQo0cPNm7caHGi9HX8+PHbz0l251FQERGxhgqgWGbIkCG89NJLREdH07JlS44fP251pHQzfvx4YmNjefbZZ6lQoYLVcURExM2oAIplbDYb06dPp1KlSvz99980a9aMqKgoq2OluX/++ef2tLdG/0RExAoqgGIpX19flixZQr58+dizZw+vvvoqsbGxVsdKU1OnTiUqKoqyZcvSoEEDq+OIiIgbUgEUyxUsWJDFixeTMWNGlixZwvvvv291pDQTHR3NhAkTAOjXr58e+yYiIpZQARSHUK1aNaZOnQrA8OHDmTdvnsWJ0sb8+fM5deoUefPmpV27dlbHERERN6UCKA7j1VdfZcCAAQB06NCB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UYg4qunTp1O/fn0uX75M1apVCQ0NJTAw0OpYIoIKoIjT06IQcTSxsbG88847dO7cmVu3bvHyyy+zbt068ubNa3U0Efl/KoAiLkCLQsRRXLlyhVatWjF69GgA3nvvPebMmUOmTJksTiYid1IBFHERWhQiVjtz5gxPPvkkixcvxtvbm++//54PPvhAz/QVcUAqgCIuRItCxCo7d+4kKCiInTt3kitXLtauXUu7du2sjiUi96ECKOJitChE0tvSpUupXbs2p0+fpkyZMoSGhlKzZk2rY4nIA6gAirgYLQqR9GK32/nss89o0aIFV69epX79+mzevJlixYpZHU1EHkIFUMQFaVGIpLXo6Gi6du3KgAEDsNvtvPHGG/z0009kzZrV6mgikggqgCIuSotCJK1cvnyZhg0bMm3aNDw8PBg3bhxffPGFHusm4kRUAEVcmBaFSGo7cuQI1apVY+3atfj5+REcHEyfPn200lfEyagAirg4LQqR1LJhwwaqVq3KoUOHKFSoECEhITRu3NjqWCKSDCqAIi5Oi0IkNXz33Xc8++yzXLp0iaCgILZt20b58uWtjiUiyaQCKOIGtChEkis2NpbBgwfToUMHoqOjad26NevXrydfvnxWRxORFFABFHETWhQiSXX16lVefPFFRo0aBcDQoUOZO3euHusm4gJUAEXciBaFSGKdPXuWp556ioULF+Lt7c3MmTP56KOP8PDQvzZEXIH+ThZxM1oUIg/z22+/ERQUxP/+9z9y5szJ6tWrefXVV62OJSKpSAVQxM1oUYg8yLJly6hZsyanTp2iVKlShIaGUrt2batjiUgqUwEUcUNaFCJ3s9vtjB07lmbNmnHlyhWeeeYZNm/eTEBAgNXRRCQNqACKuCktCpE40dHRdO/enX79+mG32+natSvLly8ne/bsVkcTkTSiAijixho2bMjIkSMBLQpxV//88w+NGjViypQp2Gw2Pv/8c77++msyZMhgdTQRSUMqgCJu7p133tGiEDcVFhZG9erVWb16NZkzZ2bJkiX069dPj3UTcQMqgCJuTotC3NOmTZuoWrUqBw4coGDBgmzatImmTZtaHUtE0okKoIhoUYibmTVrFs888wwXL16kcuXKbNu2jccff9zqWCKSjlQARQTQohB3EBsby9ChQ3nttde4efMmLVu25NdffyV//vxWRxORdKYCKCK3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",
+      "image/png": "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AEqqyJw5M0uXLiVPnjz89ttvtG/fntjYWKtjOR273X5765eePXuSMWNGixOJiIgrUgGUVFO4cGEWL16Mt7c3Cxcu5MMPP7Q6ktNZt24du3fvxtfXl+7du1sdR0REXJQKoKSqGjVqMHnyZAA++OADfvjhB4sTOZe4R+117NiRnDlzWpxGRERclQqgpLoOHTrc3ri4ffv27Nq1y+JEzmH//v0sX74cm81G3759rY4jIiIuTAVQ0sTo0aNp2LAh165do1mzZpw/f97qSA5vzJgxADRv3pzixYtbnEZERFyZCqCkCU9PT/773/9SsmRJTp48SYsWLbhx44bVsRzW+fPnmTVrFqCNn0VEJO2pAEqayZYtG8uWLSNbtmxs2bKF7t27Y7fbrY7lkL744gtu3rxJ1apVqVGjhtVxRETExakASpoqUaIE8+fPx9PTkxkzZjB27FirIzmcq1ev8uWXXwJm9E8bP4uISFpTAZQ0V69evdv3tw0YMIDly5dbnMixfPfdd1y8eJFHH32UFi1aWB1HRETcgAqgpItevXrRpUsXYmNjefnllzlw4IDVkRxCbGzs7VHRvn374uXlZXEiERFxByqAki5sNhtffPEFtWvXJiIigqZNm3L58mWrY1lu2bJlHD58mGzZstGpUyer44iIiJtQAZR0E/eEkCJFinD48GFefPFFbt26ZXUsS8U99q1bt274+flZnEZERNyFCqCkq9y5cxMcHEzmzJlZvXq1W295sn37djZu3IiXlxe9evWyOo6IiLgRFUBJd+XLl7+9592ECROYNm2axYmsETf616ZNGwoUKGBxGhERcScqgGKJFi1a8NFHHwHQo0cPNm7caHGi9HX8+PHbz0l251FQERGxhgqgWGbIkCG89NJLREdH07JlS44fP251pHQzfvx4YmNjefbZZ6lQoYLVcURExM2oAIplbDYb06dPp1KlSvz99980a9aMqKgoq2OluX/++ef2tLdG/0RExAoqgGIpX19flixZQr58+dizZw+vvvoqsbGxVsdKU1OnTiUqKoqyZcvSoEEDq+OIiIgbUgEUyxUsWJDFixeTMWNGlixZwvvvv291pDQTHR3NhAkTAOjXr58e+yYiIpZQARSHUK1aNaZOnQrA8OHDmTdvnsWJ0sb8+fM5deoUefPmpV27dlbHERERN6UCKA7j1VdfZcCAAQB06NCB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UYg4qunTp1O/fn0uX75M1apVCQ0NJTAw0OpYIoIKoIjT06IQcTSxsbG88847dO7cmVu3bvHyyy+zbt068ubNa3U0Efl/KoAiLkCLQsRRXLlyhVatWjF69GgA3nvvPebMmUOmTJksTiYid1IBFHERWhQiVjtz5gxPPvkkixcvxtvbm++//54PPvhAz/QVcUAqgCIuRItCxCo7d+4kKCiInTt3kitXLtauXUu7du2sjiUi96ECKOJitChE0tvSpUupXbs2p0+fpkyZMoSGhlKzZk2rY4nIA6gAirgYLQqR9GK32/nss89o0aIFV69epX79+mzevJlixYpZHU1EHkIFUMQFaVGIpLXo6Gi6du3KgAEDsNvtvPHGG/z0009kzZrV6mgikggqgCIuSotCJK1cvnyZhg0bMm3aNDw8PBg3bhxffPGFHusm4kRUAEVcmBaFSGo7cuQI1apVY+3atfj5+REcHEyfPn200lfEyagAirg4LQqR1LJhwwaqVq3KoUOHKFSoECEhITRu3NjqWCKSDCqAIi5Oi0IkNXz33Xc8++yzXLp0iaCgILZt20b58uWtjiUiyaQCKOIGtChEkis2NpbBgwfToUMHoqOjad26NevXrydfvnxWRxORFFABFHETWhQiSXX16lVefPFFRo0aBcDQoUOZO3euHusm4gJUAEXciBaFSGKdPXuWp556ioULF+Lt7c3MmTP56KOP8PDQvzZEXIH+ThZxM1oUIg/z22+/ERQUxP/+9z9y5szJ6tWrefXVV62OJSKpSAVQxM1oUYg8yLJly6hZsyanTp2iVKlShIaGUrt2batjiUgqUwEUcUNaFCJ3s9vtjB07lmbNmnHlyhWeeeYZNm/eTEBAgNXRRCQNqACKuCktCpE40dHRdO/enX79+mG32+natSvLly8ne/bsVkcTkTSiAijixho2bMjIkSMBLQpxV//88w+NGjViypQp2Gw2Pv/8c77++msyZMhgdTQRSUMqgCJu7p133tGiEDcVFhZG9erVWb16NZkzZ2bJkiX069dPj3UTcQMqgCJuTotC3NOmTZuoWrUqBw4coGDBgmzatImmTZtaHUtE0okKoIhoUYibmTVrFs888wwXL16kcuXKbNu2jccff9zqWCKSjlQARQTQohB3EBsby9ChQ3nttde4efMmLVu25NdffyV//vxWRxORdKYCKCK3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",
       "text/plain": [
        "<Figure size 800x800 with 1 Axes>"
       ]
@@ -212,7 +263,7 @@
    "id": "056924a3",
    "metadata": {},
    "source": [
-    "## Creating a single `Transformation`\n",
+    "## 4. Creating a single `Transformation`\n",
     "\n",
     "The `LigandNetwork` only knows about the small molecules and the alchemical connections between them. It doesn't know anything about environment (e.g., solvent) or about the `Protocol` that will be used during the simulation.\n",
     "\n",
@@ -289,28 +340,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 11,
+   "execution_count": null,
    "id": "3f394a0d",
    "metadata": {
     "scrolled": true
    },
-   "outputs": [
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "/Users/hannahbaumann/miniforge3/envs/septop/lib/python3.12/site-packages/Bio/Application/__init__.py:39: BiopythonDeprecationWarning: The Bio.Application modules and modules relying on it have been deprecated.\n",
-      "\n",
-      "Due to the on going maintenance burden of keeping command line application\n",
-      "wrappers up to date, we have decided to deprecate and eventually remove these\n",
-      "modules.\n",
-      "\n",
-      "We instead now recommend building your command line and invoking it directly\n",
-      "with the subprocess module.\n",
-      "  warnings.warn(\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "from openfe.protocols.openmm_septop import SepTopProtocol"
    ]
@@ -394,7 +429,7 @@
    "id": "1e29d1c8",
    "metadata": {},
    "source": [
-    "## Creating the `AlchemicalNetwork`\n",
+    "## 5. Creating the `AlchemicalNetwork`\n",
     "\n",
     "The `AlchemicalNetwork` contains all the information needed to run the entire campaign. It consists of a `Transformation` for each edge of the campaign. We'll loop over all the edges to make each transformation."
    ]
@@ -439,7 +474,7 @@
    "id": "6c61fe36",
    "metadata": {},
    "source": [
-    "## Running the SepTop simulations using the OpenFE CLI\n",
+    "## 6. Running the SepTop simulations using the OpenFE CLI\n",
     "\n",
     "We'll write out each transformation to disk, so that they can be run independently using the `openfe quickrun` command:"
    ]
@@ -508,7 +543,7 @@
    "id": "a0968657-7b60-4b10-ab3b-5303cf08caa1",
    "metadata": {},
    "source": [
-    "## Analysis"
+    "## 7. Analysis"
    ]
   },
   {
@@ -565,7 +600,7 @@
   {
    "cell_type": "code",
    "execution_count": null,
-   "id": "8bd82399-c523-4960-a0c1-38dbc0901b57",
+   "id": "b70822d2-5030-4ed9-87da-f166de551592",
    "metadata": {},
    "outputs": [],
    "source": []
@@ -587,7 +622,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.12.8"
+   "version": "3.12.10"
   }
  },
  "nbformat": 4,
diff --git a/plotting_rbfes_with_cinnabar/PlottingFreeEnergiesUsingCinnabar.ipynb b/plotting_rbfes_with_cinnabar/PlottingFreeEnergiesUsingCinnabar.ipynb
index 87bf2c2..0ade1da 100644
--- a/plotting_rbfes_with_cinnabar/PlottingFreeEnergiesUsingCinnabar.ipynb
+++ b/plotting_rbfes_with_cinnabar/PlottingFreeEnergiesUsingCinnabar.ipynb
@@ -15,7 +15,7 @@
    "id": "6f3d03c2",
    "metadata": {},
    "source": [
-    "# 0. Setup for Google Colab\n",
+    "## 0. Setup for Google Colab\n",
     "\n",
     "If you are running this example in Google Colab, run the following cells to setup the environment. If you are running this notebook locally, skip down to `1. Overview`"
    ]
@@ -61,21 +61,6 @@
     "        break"
    ]
   },
-  {
-   "cell_type": "code",
-   "execution_count": 1,
-   "id": "6abcaae7-f5fd-483c-972f-5bb5b6d4908a",
-   "metadata": {},
-   "outputs": [],
-   "source": [
-    "# First we do a set of imports\n",
-    "import csv\n",
-    "from pprint import pprint\n",
-    "import cinnabar\n",
-    "from cinnabar import plotting as cinnabar_plotting\n",
-    "from cinnabar import femap, stats"
-   ]
-  },
   {
    "cell_type": "markdown",
    "id": "22124f1f-5349-4174-830d-65c5bf9f560e",
@@ -96,6 +81,21 @@
     "In future versions of cinnabar this will no longer be needed."
    ]
   },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "id": "6abcaae7-f5fd-483c-972f-5bb5b6d4908a",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# First we do a set of imports\n",
+    "import csv\n",
+    "from pprint import pprint\n",
+    "import cinnabar\n",
+    "from cinnabar import plotting as cinnabar_plotting\n",
+    "from cinnabar import femap, stats"
+   ]
+  },
   {
    "cell_type": "code",
    "execution_count": 2,
@@ -533,7 +533,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.10.12"
+   "version": "3.12.10"
   }
  },
  "nbformat": 4,
diff --git a/rbfe_tutorial/python_tutorial.ipynb b/rbfe_tutorial/rbfe_python_tutorial.ipynb
similarity index 100%
rename from rbfe_tutorial/python_tutorial.ipynb
rename to rbfe_tutorial/rbfe_python_tutorial.ipynb


Reviews:
user: login: mikemhenry
body: LGTM! Do we need to update our openfe docs to link to the renamed notebooks? 
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-05-20T15:46:56Z
user: login: IAlibay
body: Overall lgtm, just the one thing about outputs.

Whilst is am saddened by the use of while of whilst, I agree that we decided on US over UK.
state: APPROVED
author_association: MEMBER
submitted_at: 2025-05-20T16:48:55Z
user: login: atravitz
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-20T18:00:15Z
user: login: atravitz
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-20T18:06:01Z

Review comments:
diff_hunk: @@ -815,46 +837,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 19,
    "id": "be690ef1-3243-4114-b56f-5babbb660af6",
    "metadata": {
     "scrolled": true
    },
-   "outputs": [
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "/Users/hannahbaumann/openfe/openfe/protocols/openmm_rfe/_rfe_utils/compute.py:56: UserWarning: Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "  warnings.warn(wmsg)\n",
-      "WARNING:root:Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "WARNING:openmmtools.multistate.multistatereporter:Warning: The openmmtools.multistate API is experimental and may change in future releases\n",
-      "WARNING:root:Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "WARNING:openmmtools.multistate.multistatesampler:Warning: The openmmtools.multistate API is experimental and may change in future releases\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Please cite the following:\n",
path: ahfe_tutorial/ahfe_tutorial.ipynb
user: login: IAlibay
body: It's not a blocker, but as a user I generally prefer having this output there if possible. It helps me know that what is being written out is what should be expected.
created_at: 2025-05-20T16:45:11Z
author_association: MEMBER
diff_hunk: @@ -15,7 +15,7 @@
     "Each ligand is represented with its own set of coordinates, meaning that the interactions of all atoms of one ligand are turned off while simultaneously turning on the interactions of all atoms of the other ligand. Therefore, restraints are required: \n",
     "Ligands are restrained to the protein in the complex states using orientational (Boresch-style) restraints; in the solvent states ligands are restrained to remain apart from each other using a single harmonic distance restraint between the ligands. Restraints are not depicted in the thermodynamic cycle below for simplicity.\n",
     "\n",
-    "Note: In this `Protocol`, the coulombic interactions of the molecule are fully turned off (annihilated), while the Lennard-Jones interactions are decoupled, meaning the intermolecular interactions are turned off, whilst keeping the intramolecular Lennard-Jones interactions."
+    "**Note:** In this `Protocol`, the coulombic interactions of the molecule are fully turned off (annihilated), while the Lennard-Jones interactions are decoupled, meaning the intermolecular interactions are turned off, while keeping the intramolecular Lennard-Jones interactions."
path: openmm_septop/septop_tutorial.ipynb
user: login: IAlibay
body: psssh whilst >> while
created_at: 2025-05-20T16:46:21Z
author_association: MEMBER
diff_hunk: @@ -815,46 +837,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 19,
    "id": "be690ef1-3243-4114-b56f-5babbb660af6",
    "metadata": {
     "scrolled": true
    },
-   "outputs": [
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "/Users/hannahbaumann/openfe/openfe/protocols/openmm_rfe/_rfe_utils/compute.py:56: UserWarning: Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "  warnings.warn(wmsg)\n",
-      "WARNING:root:Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "WARNING:openmmtools.multistate.multistatereporter:Warning: The openmmtools.multistate API is experimental and may change in future releases\n",
-      "WARNING:root:Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "WARNING:openmmtools.multistate.multistatesampler:Warning: The openmmtools.multistate API is experimental and may change in future releases\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Please cite the following:\n",
path: ahfe_tutorial/ahfe_tutorial.ipynb
user: login: atravitz
body: Sounds good - I generally agree but this was borderline too verbose. I think you're right in this instance because these warnings might confuse people otherwise.
created_at: 2025-05-20T18:00:14Z
author_association: CONTRIBUTOR
diff_hunk: @@ -815,46 +837,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 19,
    "id": "be690ef1-3243-4114-b56f-5babbb660af6",
    "metadata": {
     "scrolled": true
    },
-   "outputs": [
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "/Users/hannahbaumann/openfe/openfe/protocols/openmm_rfe/_rfe_utils/compute.py:56: UserWarning: Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "  warnings.warn(wmsg)\n",
-      "WARNING:root:Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "WARNING:openmmtools.multistate.multistatereporter:Warning: The openmmtools.multistate API is experimental and may change in future releases\n",
-      "WARNING:root:Non-GPU platform selected: CPU, this may significantly impact simulation performance\n",
-      "WARNING:openmmtools.multistate.multistatesampler:Warning: The openmmtools.multistate API is experimental and may change in future releases\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Please cite the following:\n",
path: ahfe_tutorial/ahfe_tutorial.ipynb
user: login: atravitz
body: Oh I take it back - I intentionally commented out this block to avoid having a simulation run unless the user chooses to. This matches the behavior in the other notebooks.
created_at: 2025-05-20T18:06:01Z
author_association: CONTRIBUTOR

PR comments:
user: login: review-notebook-app[bot]
created_at: 2025-05-19T20:02:07Z
body: Check out this pull request on&nbsp; <a href="https://app.reviewnb.com/OpenFreeEnergy/ExampleNotebooks/pull/207"><img align="absmiddle"  alt="ReviewNB" height="28" class="BotMessageButtonImage" src="https://raw.githubusercontent.com/ReviewNB/support/master/images/button_reviewnb.png"/></a> 

 See visual diffs & provide feedback on Jupyter Notebooks. 

---

 <i>Powered by <a href='https://www.reviewnb.com/?utm_source=gh'>ReviewNB</a></i>
author_association: NONE
user: login: github-actions[bot]
created_at: 2025-05-19T20:02:13Z
body: [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/OpenFreeEnergy/ExampleNotebooks/notebook_cleanup) :point_left: Launch a binder notebook on branch _OpenFreeEnergy/ExampleNotebooks/notebook_cleanup_
author_association: NONE
user: login: mikemhenry
created_at: 2025-05-20T15:48:10Z
body: `AttributeError: Cannot set unknown attribute 'continousHighlight'`

I think we need to bump the rdkit version?
author_association: CONTRIBUTOR
user: login: atravitz
created_at: 2025-05-20T18:23:50Z
body: > LGTM! Do we need to update our openfe docs to link to the renamed notebooks?

yes! this PR: https://github.com/OpenFreeEnergy/openfe/compare/update_nb_links?expand=1
author_association: CONTRIBUTOR
user: login: atravitz
created_at: 2025-05-20T18:29:56Z
body: > `AttributeError: Cannot set unknown attribute 'continousHighlight'`
> 
> I think we need to bump the rdkit version?

~~this will be fixed when we bump to the latest gufe version. we could do an upper pin on rdkit to avoid this, but I'd like to bump to latest gufe anyway!~~

we already did this bump on conda forge, so I updated the env file here so the CI matches that.
author_association: CONTRIBUTOR