{ "cells": [ { "cell_type": "markdown", "id": "dad59b09", "metadata": {}, "source": [ "# Tutorial 11 — Extending chemistry and scoring\n", "\n", "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/uw-ipd/tmol/blob/master/docs/tutorial/11_extending_chemistry_and_scoring.ipynb)\n", "\n", "Build a chemistry subset, inspect packed metadata, and change one bonded parameter in a new immutable database. Assumes [structure I/O](01_working_with_tmol.ipynb), [scoring](03_scoring_and_analysis.ipynb), and [ligand preparation](07_ligand_and_params.ipynb).\n", "\n", "A smaller type set changes storage. A modified spring constant changes the energy model and requires independent validation.\n" ] }, { "cell_type": "markdown", "id": "428d6843", "metadata": {}, "source": [ "## Setup\n", "\n", "In Colab, select **T4 GPU**, then **Run all**. For local execution, follow the [installation guide](../installation.md). Setup installs TMol and downloads the fixtures on first use.\n", "\n", "No external structures are downloaded. The examples build a five-residue peptide from sequence using the chemistry shipped with the currently installed TMol release. The setup reports exact package versions and uses the selected CPU or CUDA device.\n" ] }, { "cell_type": "code", "execution_count": 1, "id": "e879615d", "metadata": {}, "outputs": [], "source": [ "try:\n", " import google.colab # noqa: F401\n", "except ImportError:\n", " IN_COLAB = False\n", "else:\n", " IN_COLAB = True\n", "\n", "if IN_COLAB:\n", " from urllib.request import urlopen\n", "\n", " exec(\n", " urlopen(\n", " \"https://raw.githubusercontent.com/uw-ipd/tmol/\"\n", " \"master/docs/tutorial/colab_setup.py\"\n", " ).read(),\n", " globals(),\n", " )\n", " setup_colab([])\n" ] }, { "cell_type": "code", "execution_count": 2, "id": "49c68b9f", "metadata": { "tags": [ "collapse-code" ] }, "outputs": [ { "data": { "text/html": [ "\n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", "
\n", " \n", " \n", " \n", "\n", "\n", "\n", "
ⓘcomponentversion
TMol0.1.62
PyTorch2.14.1+cpu
devicecpu
\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import copy\n", "\n", "import attrs\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import pandas as pd\n", "import torch\n", "from IPython.display import display\n", "\n", "import tmol\n", "from tmol.chemical import ResidueTypeSet\n", "from tmol.database import ParameterDatabase\n", "from tmol.database.scoring import CartBondedDatabase\n", "from tmol.pose import PackedBlockTypes\n", "from tmol.score import ScoreFunction, ScoreType, beta2016_score_function\n", "\n", "SEED = 20260910\n", "np.random.seed(SEED)\n", "torch.manual_seed(SEED)\n", "if torch.cuda.is_available():\n", " torch.cuda.manual_seed_all(SEED)\n", "\n", "device = (\n", " torch.device(\"cuda\", torch.cuda.current_device())\n", " if torch.cuda.is_available()\n", " else torch.device(\"cpu\")\n", ")\n", "\n", "\n", "def show_table(frame):\n", " \"\"\"Use a sortable table in rendered docs, with a pandas fallback.\"\"\"\n", " try:\n", " from itables import show\n", " except ImportError:\n", " return display(frame)\n", " return show(frame)\n", "\n", "\n", "environment_frame = pd.DataFrame(\n", " [\n", " {\"component\": \"TMol\", \"version\": tmol.__version__},\n", " {\"component\": \"PyTorch\", \"version\": torch.__version__},\n", " {\"component\": \"device\", \"version\": str(device)},\n", " ]\n", ")\n", "show_table(environment_frame)\n" ] }, { "cell_type": "markdown", "id": "2f935507", "metadata": {}, "source": [ "## Chemistry, coordinates, and scores\n", "\n", "| Object | Contents |\n", "| --- | --- |\n", "| `ParameterDatabase` | Immutable chemical definitions and scoring parameters |\n", "| `ResidueTypeSet` | Refined types, including terminal variants |\n", "| `PackedBlockTypes` | Ordered types and device setup data shared by poses and terms |\n", "| `CanonicalOrdering` | External tensor indices for residue-equivalence classes and atoms |\n", "| `ScoreFunction` | Term weights and options |\n", "\n", "Rendering prepares topology-dependent scoring data. Reuse the layout when only coordinates change. The diagram shows ownership, not call order.\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "36a61abf", "metadata": {}, "outputs": [ { "data": { "image/png": "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5oLuIZLzbdgVTLmSBShR2M3apYhIDqOQQERyjfqVS5DH0Y6lv+4mPd2wdjkiWfbrxsNERF+hZR1fa5fySKtfpQRODnYs+XWP7iGSox0NvcTW/adoVcfP2qWISA6kkEBEcg0nBzte61uf1duO8+HSTfojX3KElZuOMPOLzXRrXp5KpQtZu5xHWh5HO8b0qcfqrceYsWyz7iGSIx0NvcSrH66kdAkPureoYO1yRCQHMhmGoX8BRSRX+WXjMcbP24BnfhcaVfelYVUfinm64ezkgI2iUbEiw4DEpFQioq+wdf8pNuwM5vjpCLo1L89rfeprqEE2sWLDUd769C8K5XelYXUfGlXzpWjBvLqHSLaUnJJGTFwSu4+E89euYHYfDqe8b0HmjGlLXmcHa5cnIjmQQgIRyZX2HjvPb5uOs2ZHCJej9cQDyX6cHOxoWLUErer40bSGjwKCbGbv0fP8tvk4a7YHczlGTzyQ7M/GZKJahSK0rO3LY/VL45JHAYGI3B2FBCKSq6Wlp3Mo+BIR0QlcSUhBNzyxNicHO9xdHfH38ySPo521y5Hb0D1Esjt7OxvcXBwpXSI/Bdz1dBQRuXcKCUREREREREQE0MSFIiIiIiIiIpJJIYGIiIiIiIiIAAoJRERERERERCSTQgIRERERERERARQSiIiIiIiIiEgmhQQiIiIiIiIiAigkEBEREREREZFMCglEREREREREBFBIICIiIiIiIiKZFBKIiIiIiIiICKCQQEREREREREQyKSQQEREREREREUAhgYiIiIiIiIhkUkggIiIiIiIiIoBCAhERERERERHJpJBARERERERERACFBCIiIiIiIiKSSSGBiIiIiIiIiAAKCUREREREREQkk0ICEREREREREQEUEoiIiIiIiIhIJoUEIiIiIiIiIgIoJBARERERERGRTAoJRERERERERARQSCAiIiIiIiIimRQSiIiIiIiIiAigkEBEREREREREMikkEBERERERERFAIYGIiIiIiIiIZFJIICIiIiIiIiKAQgIRERERERERyaSQQEREREREREQAhQQiIiIiIiIikkkhgYiIiIiIiIgACglEREREREREJJNCAhEREREREREBFBKIiIiIiIiISCaFBCIiIiIiIiICKCQQERERERERkUwKCUREREREREQEUEggIiIiIiIiIpkUEoiIiIiIiIgIoJBARERERERERDIpJBARERERERERQCGBiIiIiIiIiGRSSCAiIiIiIiIigEICEREREREREcmkkEBEREREREREAIUEIiIiIiIiIpJJIYGIiIiIiIiIAAoJRERERERERCSTQgIRERERERERARQSiIiIiIiIiEgmhQQiIiIiIiIiAigkEBEREREREZFMCglEREREREREBFBIICIiIiIiIiKZFBKIiIiIiIiICKCQQEREREREREQyKSQQEREREREREUAhgYiIiIiIiIhkUkggIiIiIiIiIoBCAhERERERERHJpJBARERERERERACFBCIiIiIiIiKSSSGBiIiIiIiIiAAKCUREREREREQkk0ICEREREREREQEUEoiIiIiIiIhIJoUEIiIiIiIiIgIoJBARERERERGRTAoJRERERERERARQSCAiIiIiIiIimRQSiIiIiIiIiAigkEBEREREREREMikkEBERERERERFAIYGIiIiIiIiIZFJIICIiIiIiIiKAQgIRERERERERyaSQQEREREREREQAhQQiIiIiIiIikkkhgYiIiIiIiIgACglEREREREREJJNCAhEREREREREBFBKIiIiIiIiISCaFBCIiIiIiIiICKCQQERERERERkUwKCUREREREREQEUEggIiIiIiIiIpkUEoiIiIiIiIgIoJBARERERERERDIpJBARERERERERQCGBiIiIiIiIiGRSSCAiIiIiIiIigEICEREREREREcn0f9KW+vQHBY0dAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(10.5, 4.6))\n", "ax.set_axis_off()\n", "boxes = {\n", " \"ParameterDatabase\\nchemical + scoring parameters\": (0.05, 0.58),\n", " \"ResidueTypeSet\\nrefined variants\": (0.34, 0.78),\n", " \"CanonicalOrdering\\nexternal tensor indices\": (0.34, 0.28),\n", " \"PackedBlockTypes\\ndevice metadata + caches\": (0.63, 0.78),\n", " \"PoseStack\\ntopology + coordinates\": (0.63, 0.28),\n", " \"ScoreFunction → rendered scorer\\nweights + prepared terms\": (0.84, 0.53),\n", "}\n", "for label, (x, y) in boxes.items():\n", " ax.text(\n", " x,\n", " y,\n", " label,\n", " transform=ax.transAxes,\n", " ha=\"center\",\n", " va=\"center\",\n", " bbox={\"boxstyle\": \"round,pad=0.55\", \"fc\": \"#eef4ff\", \"ec\": \"#315a9b\"},\n", " )\n", "arrows = [\n", " ((0.18, 0.61), (0.27, 0.76)),\n", " ((0.18, 0.55), (0.27, 0.32)),\n", " ((0.45, 0.78), (0.53, 0.78)),\n", " ((0.44, 0.31), (0.54, 0.31)),\n", " ((0.64, 0.69), (0.64, 0.40)),\n", " ((0.75, 0.31), (0.80, 0.47)),\n", " ((0.74, 0.75), (0.81, 0.60)),\n", "]\n", "for start, end in arrows:\n", " ax.annotate(\"\", xy=end, xytext=start, xycoords=\"axes fraction\", arrowprops={\"arrowstyle\": \"->\", \"lw\": 1.8, \"color\": \"#315a9b\"})\n", "ax.set_title(\"TMol chemistry, interchange, pose, and scoring layers\", pad=12)\n", "plt.tight_layout()\n", "plt.show()\n" ] }, { "cell_type": "markdown", "id": "34502683", "metadata": {}, "source": [ "## Inspect the default refined chemistry\n", "\n", "The raw database contains base residue definitions and named patches. Refinement materializes usable block types such as terminal amino acids and nucleic-acid termini. Counting refined types by polymer backbone makes it clear why a general-purpose packed set is larger than the twenty canonical amino acids.\n" ] }, { "cell_type": "code", "execution_count": 4, "id": "4f551396", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", "
\n", " \n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "
ⓘfamilyrefined_block_types
2alpha_aa216
3non-polymer48
1RNA24
0DNA24
\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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92nVqpV27typZs2a2e8fPmbMGIcwntv8uencubM2bNggm82mjRs3qlu3btq0aZM8PDzsfWrVqqX27dvnO05e873++utasWKFbDab1q1bJ29vb61cudIhrLVt21b16tWzPy5ZsqTDHwZydXVVdHS0/cOwl9d++aU2zsw1ffp0vfzyy/r555+VmZmptWvX6vHHH8/zmvZLc69YsUL169fXli1bFB4ers2bN8vHx8feLzo62uEa+ilTpujdd9/Vrl27tGfPHn300Ud67733HMaeMGGC5s6dq6SkJG3btk29evWyh/Er97latWpavXq1zp07p6VLl+Za65dffqmmTZtq2bJl9g+PSlLDhg1VpUoV9erVSyVLlsyx3cyZM/Pdt4KO6+DBgzVp0iQlJiZq3bp1atmypbZu3eowBoDrw2by+z0ZAAAoknbu3Kl69epp+/btDn8kKD09XR4eHvrxxx+vyyVKAG48LlkBAKAYSUxM1HfffacPPvhAkZGRhfqrpACKJi5ZAQCgGElKStKiRYvUunVrTZ8+PcfzeV0KBKDo4pIVAAAAwEKcIQcAAAAsRCAHAAAALEQgBwAAACxEIAcAAAAsRCAHAAAALEQgBwAAACxEIAcAAAAsRCAHAAAALEQgBwAAACz0/wAM968GhiGiPAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "parameter_db = ParameterDatabase.get_default()\n", "residue_type_set = ResidueTypeSet.from_database(parameter_db.chemical)\n", "\n", "\n", "def chemistry_family(residue_type):\n", " polymer = residue_type.properties.polymer\n", " if not polymer.is_polymer:\n", " return \"non-polymer\"\n", " if polymer.backbone_type == \"alpha\":\n", " return \"protein\"\n", " if polymer.backbone_type == \"dna\":\n", " return \"DNA\"\n", " if polymer.backbone_type == \"rna\":\n", " return \"RNA\"\n", " return polymer.backbone_type or \"other polymer\"\n", "\n", "\n", "inventory_frame = pd.DataFrame(\n", " [\n", " {\n", " \"block_type\": residue_type.name,\n", " \"name3\": residue_type.name3,\n", " \"family\": chemistry_family(residue_type),\n", " \"atoms\": len(residue_type.atoms),\n", " \"torsions\": len(residue_type.torsions),\n", " }\n", " for residue_type in residue_type_set.residue_types\n", " ]\n", ")\n", "family_counts = (\n", " inventory_frame.groupby(\"family\", as_index=False)\n", " .size()\n", " .sort_values(\"size\", ascending=False)\n", " .rename(columns={\"size\": \"refined_block_types\"})\n", ")\n", "show_table(family_counts)\n", "\n", "fig, ax = plt.subplots(figsize=(7.5, 3.8))\n", "ax.barh(\n", " family_counts[\"family\"][::-1],\n", " family_counts[\"refined_block_types\"][::-1],\n", " color=\"#4c78a8\",\n", ")\n", "ax.set(\n", " xlabel=\"number of refined block types\",\n", " title=\"Default chemistry after variant refinement\",\n", ")\n", "ax.grid(axis=\"x\", alpha=0.25)\n", "plt.tight_layout()\n", "plt.show()\n" ] }, { "cell_type": "markdown", "id": "b9d29d6e", "metadata": {}, "source": [ "Protein block types dominate the refined inventory because base residues acquire compatible terminal and other variants. These are chemical alternatives, not additional sequence positions. Code that assumes one packed type per one-letter amino-acid code will fail on termini, protonation variants, nucleic acids, and non-polymers.\n" ] }, { "cell_type": "markdown", "id": "c9bd9b76", "metadata": {}, "source": [ "## Build a chemistry subset\n", "\n", "`create_stable_subset()` selects base names and variants in deterministic order, retaining the full scoring database. Use it only when the complete input alphabet is known.\n", "\n", "Keep ALA, GLY, SER, PRO, and protein termini, then build `AGSPA` to check coverage of its internal and terminal types.\n" ] }, { "cell_type": "code", "execution_count": 5, "id": "c5dfd56c", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Environment variable CCD_MIRROR_PATH not set. Will not be able to use function requiring this variable. To set it you may:\n", " (1) add the line 'export VAR_NAME=path/to/variable' to your .bashrc or .zshrc file\n", " (2) set it in your current shell with 'export VAR_NAME=path/to/variable'\n", " (3) write it to a .env file in the root of the atomworks.io repository\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Environment variable PDB_MIRROR_PATH not set. Will not be able to use function requiring this variable. To set it you may:\n", " (1) add the line 'export VAR_NAME=path/to/variable' to your .bashrc or .zshrc file\n", " (2) set it in your current shell with 'export VAR_NAME=path/to/variable'\n", " (3) write it to a .env file in the root of the atomworks.io repository\n" ] }, { "data": { "text/html": [ "\n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", "
\n", " \n", " \n", " \n", " \n", " \n", "\n", "\n", "
ⓘcontextrefined_typespacked_typescanonical_equivalence_classes
default refined chemistry31226882
AGSP subset16164
\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "pose block types: ['ALA:nterm', 'GLY', 'SER', 'PRO', 'ALA:cterm']\n" ] }, { "data": { "application/3dmoljs_load.v0": "
\n

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

\n
\n", "text/html": [ "
\n", "

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

\n", "
\n", "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "subset_db = parameter_db.create_stable_subset(\n", " desired_names=[\"ALA\", \"GLY\", \"SER\", \"PRO\"],\n", " desired_variants=[\"nterm\", \"cterm\"],\n", ")\n", "subset_restype_set = ResidueTypeSet.from_database(subset_db.chemical)\n", "subset_pbt = PackedBlockTypes.from_restype_list(\n", " subset_db.chemical,\n", " subset_restype_set,\n", " subset_restype_set.residue_types,\n", " device,\n", ")\n", "subset_ordering = tmol.CanonicalOrdering.from_chemdb(subset_db.chemical)\n", "peptide = tmol.extended_pose_stack_from_sequences(\n", " \"AGSPA\", device=device, param_db=subset_db\n", ")\n", "\n", "subset_frame = pd.DataFrame(\n", " [\n", " {\n", " \"context\": \"default refined chemistry\",\n", " \"refined_types\": len(residue_type_set.residue_types),\n", " \"packed_types\": tmol.default_packed_block_types(device).n_types,\n", " \"canonical_equivalence_classes\": tmol.default_canonical_ordering().n_restype_io_equiv_classes,\n", " },\n", " {\n", " \"context\": \"AGSP subset\",\n", " \"refined_types\": len(subset_restype_set.residue_types),\n", " \"packed_types\": subset_pbt.n_types,\n", " \"canonical_equivalence_classes\": subset_ordering.n_restype_io_equiv_classes,\n", " },\n", " ]\n", ")\n", "show_table(subset_frame)\n", "print(\"pose block types:\", [peptide.block_type(0, i).name for i in range(peptide.max_n_blocks)])\n", "\n", "try:\n", " peptide_viewer = tmol.view(peptide, width=720, height=380)\n", " peptide_viewer.show()\n", "except ImportError as exc:\n", " print(\"Interactive peptide viewer unavailable:\", exc)\n" ] }, { "cell_type": "markdown", "id": "fe51ccf1", "metadata": {}, "source": [ "The smaller set builds a complete terminated peptide from ideal internal geometry. An extended structure does not establish folding or validate the energy model.\n" ] }, { "cell_type": "markdown", "id": "ea6fa557", "metadata": {}, "source": [ "## Separate score weights from score parameters\n", "\n", "Use weights when an existing energy term should contribute differently. Use a modified `ParameterDatabase` only when the term's underlying model changes. The focused score function below gives only Cartesian bond-length energy a nonzero weight. Cartesian length, angle, torsion, improper, and hydroxyl-torsion lanes share one implementation term, so rendering it exposes all five lanes even when four weights are zero. Setting every lane owned by a term to zero removes that implementation term.\n" ] }, { "cell_type": "code", "execution_count": 6, "id": "a80cf2c0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", "
\n", " \n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
ⓘscore_typebeta2016_weightfocused_cart_length_weight
fa_ljatr1.000.0
fa_ljrep0.550.0
fa_lk1.000.0
fa_elec1.000.0
hbond1.000.0
cart_lengths0.501.0
cart_angles0.500.0
cart_torsions0.500.0
cart_impropers0.500.0
cart_hxltorsions1.000.0
(15 more rows not shown)
\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "focused rendered score lanes: ['cart_lengths', 'cart_angles', 'cart_torsions', 'cart_impropers', 'cart_hxltorsions']\n", "focused nonzero weights: ['cart_lengths']\n" ] } ], "source": [ "beta = beta2016_score_function(device, param_db=subset_db)\n", "focused = ScoreFunction(subset_db, device)\n", "focused.set_weight(ScoreType.cart_lengths, 1.0)\n", "\n", "weight_rows = []\n", "for score_type in beta.all_score_types():\n", " weight = float(beta.get_weight(score_type).detach().cpu())\n", " if weight != 0.0:\n", " weight_rows.append(\n", " {\"score_type\": score_type.name, \"beta2016_weight\": weight}\n", " )\n", "weight_frame = pd.DataFrame(weight_rows)\n", "weight_frame[\"focused_cart_length_weight\"] = weight_frame[\"score_type\"].map(\n", " {\"cart_lengths\": 1.0}\n", ").fillna(0.0)\n", "show_table(weight_frame)\n", "focused_nonzero = [\n", " score_type\n", " for score_type in focused.all_score_types()\n", " if float(focused.get_weight(score_type).detach().cpu()) != 0.0\n", "]\n", "print(\"focused rendered score lanes:\", [st.name for st in focused.all_score_types()])\n", "print(\"focused nonzero weights:\", [st.name for st in focused_nonzero])\n", "assert focused_nonzero == [ScoreType.cart_lengths]\n" ] }, { "cell_type": "markdown", "id": "6992f7fd", "metadata": {}, "source": [ "## Change one immutable Cartesian bonded parameter\n", "\n", "This extension-level example doubles the spring constant for the intraproline N–CD bond. `attrs.evolve()` and `CartBondedDatabase.from_cartres_dict()` create new immutable database layers; the shared default remains untouched.\n", "\n", "To isolate the change, the code displaces only the internal proline CD atom and compares two score functions containing only `cart_lengths`. Plotting relative energies removes any constant offset. This is a sensitivity test of one implementation change—not parameter fitting, physical calibration, or evidence that the altered model is better.\n" ] }, { "cell_type": "code", "execution_count": 7, "id": "c34cd5f6", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "
ⓘCD_x_displacement_Astandard_cart_lengthsstrengthened_cart_lengthsrelative_standard_cart_lengthsrelative_strengthened_cart_lengths
00.000.6194080.6713900.0000000.000000
20.101.4900511.7225800.8706421.051190
50.255.2583315.8479254.6389235.176534
100.5016.82191517.75890216.20250617.087511
\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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Q33uxd066hl+9NFHMXHiREyYMAFvvvkmiouLNc9CS8/D+fPn8fbbb+P//u//4OnpiX/+8584cOAAXnvttRbfGXj11Vcxbdo0/Pvf/4ZcLsfGjRsxefLkZvlMTU0RERGBjRs3YtKkSQDUS3lev34dL7zwgt7XRUT64Qg5EXWI+fPnY/78+Th79ixMTExw7NgxjBw5UnN+3LhxCAgIaFZu06ZNWLVqFc6ePYuMjAxERUVh1apVmvN3b4xz97FcLse0adOavaj29NNPawVE69atww8//IDa2locO3YMtra2+PXXXzFgwIAWr8nb2xtnz57Fu+++ixs3biA2NhYNDQ1YvXq1VjD+3HPPoaKiAtHR0YiNjUV1dTXef/99pKenY+jQoa3et23btmHRokU4deoUJBIJ4uPjMWPGDM386Luvd+nSpfjggw9QUFCAY8eOYfz48YiPj9e8xAmoA/K+ffsiISEB4eHhiI+Ph0Kh0Fmfn58fjh8/DhMTExw9ehRjxozB3r178dxzz2m187PPPsPmzZtRUFCA06dP47XXXtMK8tu6v7r6yczMDNOmTdO8YwCop6hMmzZN64eYe6kbaP4MfP/99wgICMBPP/2k84dFfe6Fro2a2nqG9W3fd999hwULFuDUqVMQQuDHH3+EEKLFOdt79uzBW2+9hZkzZwIAjI2NsWXLFkilUqSmpuosM27cOPj6+mLz5s0oKiqCt7c3Xn75ZZ15X3/9dVhYWGh2pl2/fj3mzZvXbC48Ed0/iRBCGLoRRPRgCw0Nxbhx4/D3v//d0E15qBUUFMDBwQHJycktzlun7quoqEgr2N26dStmz56N/Pz8+9rt9W6///47tmzZgrVr1+pdprKyEvPnz8e//vUvrR+giKhjcMoKERFRN/D++++jvLwcw4YNw+XLl7F+/XosW7asQ4NxAAgMDGz3D2zm5uaIiorq0HYQURMG5ER031qajkJdq6WpEfRgWL16NTZt2oQTJ07AysoKu3fv5guURA8JTlkhIiIiIjIgvtRJRERERGRADMiJiIiIiAyIATkRERERkQExICciIiIiMiAG5EREREREBsSAnIiIiIjIgBiQExEREREZEANyIiIiIiIDYkBORERERGRA/w+3bwmn/Y6FCQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cart_db = subset_db.scoring.cartbonded\n", "pro_params = cart_db.residue_params[\"PRO\"]\n", "parameter_index, original_n_cd = next(\n", " (index, parameter)\n", " for index, parameter in enumerate(pro_params.length_parameters)\n", " if {parameter.atm1, parameter.atm2} == {\"N\", \"CD\"}\n", ")\n", "strengthened_n_cd = attrs.evolve(original_n_cd, K=2.0 * original_n_cd.K)\n", "strengthened_lengths = list(pro_params.length_parameters)\n", "strengthened_lengths[parameter_index] = strengthened_n_cd\n", "strengthened_pro = attrs.evolve(\n", " pro_params, length_parameters=tuple(strengthened_lengths)\n", ")\n", "strengthened_residue_params = copy.deepcopy(cart_db.residue_params)\n", "strengthened_residue_params[\"PRO\"] = strengthened_pro\n", "strengthened_cart_db = CartBondedDatabase.from_cartres_dict(\n", " cartres_dict=strengthened_residue_params\n", ")\n", "strengthened_scoring_db = attrs.evolve(\n", " subset_db.scoring, cartbonded=strengthened_cart_db\n", ")\n", "strengthened_db = attrs.evolve(subset_db, scoring=strengthened_scoring_db)\n", "\n", "standard_cart = ScoreFunction(subset_db, device)\n", "standard_cart.set_weight(ScoreType.cart_lengths, 1.0)\n", "strengthened_cart = ScoreFunction(strengthened_db, device)\n", "strengthened_cart.set_weight(ScoreType.cart_lengths, 1.0)\n", "standard_scorer = standard_cart.render_whole_pose_scoring_module(peptide)\n", "strengthened_scorer = strengthened_cart.render_whole_pose_scoring_module(peptide)\n", "\n", "pro_block = next(\n", " index\n", " for index in range(peptide.max_n_blocks)\n", " if peptide.block_type(0, index).name3 == \"PRO\"\n", ")\n", "pro_type = peptide.block_type(0, pro_block)\n", "pro_offset = int(peptide.block_coord_offset64[0, pro_block])\n", "pro_cd = pro_offset + pro_type.atom_to_idx[\"CD\"]\n", "\n", "displacement_values = np.linspace(0.0, 0.50, 11)\n", "scan_rows = []\n", "displaced_coords = None\n", "for displacement in displacement_values:\n", " coords = peptide.coords.clone()\n", " coords[0, pro_cd, 0] += float(displacement)\n", " if displacement == displacement_values[-1]:\n", " displaced_coords = coords\n", " scan_rows.append(\n", " {\n", " \"CD_x_displacement_A\": displacement,\n", " \"standard_cart_lengths\": float(standard_scorer(coords).detach().cpu()[0]),\n", " \"strengthened_cart_lengths\": float(strengthened_scorer(coords).detach().cpu()[0]),\n", " }\n", " )\n", "\n", "scan_frame = pd.DataFrame(scan_rows)\n", "for column in [\"standard_cart_lengths\", \"strengthened_cart_lengths\"]:\n", " scan_frame[f\"relative_{column}\"] = scan_frame[column] - scan_frame[column].iloc[0]\n", "show_table(scan_frame.iloc[[0, 2, 5, 10]])\n", "\n", "fig, ax = plt.subplots(figsize=(7.5, 4.5))\n", "ax.plot(\n", " scan_frame[\"CD_x_displacement_A\"],\n", " scan_frame[\"relative_standard_cart_lengths\"],\n", " marker=\"o\",\n", " label=f\"default K={original_n_cd.K:g}\",\n", ")\n", "ax.plot(\n", " scan_frame[\"CD_x_displacement_A\"],\n", " scan_frame[\"relative_strengthened_cart_lengths\"],\n", " marker=\"o\",\n", " label=f\"modified K={strengthened_n_cd.K:g}\",\n", ")\n", "ax.set(\n", " xlabel=\"proline CD displacement along x (Å)\",\n", " ylabel=\"relative cart_lengths score\",\n", " title=\"A one-parameter sensitivity experiment\",\n", ")\n", "ax.grid(alpha=0.25)\n", "ax.legend()\n", "plt.tight_layout()\n", "plt.show()\n", "\n", "assert parameter_db.scoring.cartbonded.residue_params[\"PRO\"].length_parameters != strengthened_pro.length_parameters\n", "assert scan_frame[\"relative_strengthened_cart_lengths\"].iloc[-1] > scan_frame[\"relative_standard_cart_lengths\"].iloc[-1]\n" ] }, { "cell_type": "code", "execution_count": 8, "id": "cabec006", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", "
\n", " \n", "
\n", "
Subset-built AGSPA peptide
\n", "
\n", "

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

\n", "
\n", "\n", "
\n", "
\n", "
Only the internal proline CD coordinate was translated
\n", "
\n", "

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

\n", "
\n", "\n", "
\n", "
\n", "
\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "displaced_peptide = attrs.evolve(peptide, coords=displaced_coords)\n", "try:\n", " display(\n", " tmol.switchable_view(\n", " {\n", " \"ideal input\": peptide,\n", " \"CD displaced by 0.50 Å\": displaced_peptide,\n", " },\n", " notes={\n", " \"ideal input\": \"Subset-built AGSPA peptide\",\n", " \"CD displaced by 0.50 Å\": \"Only the internal proline CD coordinate was translated\",\n", " },\n", " width=720,\n", " height=380,\n", " )\n", " )\n", "except ImportError as exc:\n", " print(\"Interactive comparison unavailable:\", exc)\n" ] }, { "cell_type": "markdown", "id": "f6f2dfba", "metadata": {}, "source": [ "The modified curve rises more steeply because only the selected spring constant changed. The switcher confirms that the coordinate experiment is local. The absolute curve includes all bond-length deviations in the peptide, so the difference between curves—not either absolute value—is the cleanest diagnostic of this parameter change.\n", "\n", "## Validation\n", "\n", "Before shipping a custom database:\n", "\n", "1. Keep the source database immutable and construct a derived object.\n", "2. Build the smallest pose that exercises the modified chemistry.\n", "3. Compare changed and unchanged parameters explicitly.\n", "4. Test values and coordinate gradients on CPU and CUDA.\n", "5. Validate complete scientific workflows separately from local unit tests.\n", "6. Record parameter provenance.\n", "\n", "## Exercises\n", "\n", "1. Add VAL to the stable subset and verify that `AGSPV` builds without changing the existing packed-type order.\n", "2. Change the focused score function to contain `cart_angles` instead of `cart_lengths`; perturb an angle-defining coordinate and plot the response.\n", "3. Repeat the N–CD scan with gradients enabled and compare `dE/dx` between the two parameterizations.\n", "\n", "## References\n", "\n", "- [Tutorial 01 — Working with TMol](01_working_with_tmol.ipynb)\n", "- [Tutorial 03 — Scoring and Analysis](03_scoring_and_analysis.ipynb)\n", "- [Tutorial 07 — Ligands and Parameter Files](07_ligand_and_params.ipynb)\n", "- [Database API](../api/database.rst)\n", "- [Pose API](../api/pose.rst)\n", "- [Score API](../api/score.rst)\n" ] } ], "metadata": { "accelerator": "GPU", "colab": { "gpuType": "T4" }, "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 5 }