{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Workflow Example: Copper-BOX Catalyst Library Construction\n", "\n", "This notebook will show a full example of how you might use `molli` to generate a combinatorial catalyst library and extract features." ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [], "source": [ "#Necessary imports\n", "import molli as ml\n", "ml.visual.configure(bgcolor='white')\n", "import msgpack\n", "import attrs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Part 1: Parsing and Combinatorial Expansion" ] }, { "attachments": { "1_1_BOX.PNG": { "image/png": "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" } }, "cell_type": "markdown", "metadata": {}, "source": [ "Here's how to do combinatorial expansion programmatically in Python. We will use an example BOX ligand from a CDXML file\n", "\n", "" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "application/3dmoljs_load.v0": "
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n jupyter labextension install jupyterlab_3dmol
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n",
" jupyter labextension install jupyterlab_3dmol
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n jupyter labextension install jupyterlab_3dmol
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n",
" jupyter labextension install jupyterlab_3dmol
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n jupyter labextension install jupyterlab_3dmol
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n",
" jupyter labextension install jupyterlab_3dmol
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n jupyter labextension install jupyterlab_3dmol
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n",
" jupyter labextension install jupyterlab_3dmol
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n jupyter labextension install jupyterlab_3dmol
You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n",
" jupyter labextension install jupyterlab_3dmol