Skip to content

Instantly share code, notes, and snippets.

@ptosco
Created June 30, 2020 20:01
Show Gist options
  • Save ptosco/1dc3eeae87b5676b60c3a47ad60cea0a to your computer and use it in GitHub Desktop.
Save ptosco/1dc3eeae87b5676b60c3a47ad60cea0a to your computer and use it in GitHub Desktop.
OverlayBenzeneNaphthalene
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"from rdkit import Chem\n",
"from rdkit.Chem import rdMolAlign, rdDepictor\n",
"from rdkit.Chem.Draw import IPythonConsole"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"I create a benzene and a naphthalene molecule from SMILES and generate 2D coordinates for them:"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"benzene = Chem.MolFromSmiles(\"c1ccccc1\")\n",
"rdDepictor.Compute2DCoords(benzene)\n",
"Chem.MolToMolFile(benzene, \"benzene.mol\")"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"naphthalene = Chem.MolFromSmiles(\"c1cccc2ccccc12\")\n",
"rdDepictor.Compute2DCoords(naphthalene)\n",
"Chem.MolToMolFile(naphthalene, \"naphthalene.mol\")"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<rdkit.Chem.rdchem.Mol at 0x7fb60e39bd50>"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"benzene"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<rdkit.Chem.rdchem.Mol at 0x7fb60e3b1120>"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"naphthalene"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Then I create an `o3a` object..."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"o3a = rdMolAlign.GetO3A(benzene, naphthalene)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"...and print out the mappings:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[[2, 9], [3, 0], [0, 3], [5, 2], [1, 4], [4, 1]]"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"o3a.Matches()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Calling `o3a.Align()` aligns coordinates and returns the RMSD across mapped atoms:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0.0"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"round(o3a.Align(), 4)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [],
"source": [
"Chem.MolToMolFile(benzene, \"benzene_aligned.mol\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The benzene depicted in green has the original 2D coordinates, while the purple one is aligned to the naphthalene systems.\n",
"You may verify that `o3a.Matches()` reports the correct mappings..."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<img src=\"data:image/png;base64,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\">"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"...and also the aligned coordinates are correct, as shown by the zero RMSD:"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<img src=\"data:image/png;base64,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\">"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.9"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment