Skip to content

Commit a56feff

Browse files
authored
Update our Jupyter Notebooks (#884)
As spotted by @LeenFahoum, some imports were outs=dated in our Jupyter notebooks. This PR updates them
2 parents 0d80785 + 96893fc commit a56feff

6 files changed

Lines changed: 52 additions & 1615 deletions

File tree

arc/reaction/reaction.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -561,13 +561,16 @@ def determine_family(self,
561561
):
562562
"""
563563
Determine the RMG reaction family.
564-
Populates the .family, and .family_own_reverse attributes.
565564
566565
Args:
567566
rmg_family_set (str, optional): The RMG family set to use.
568567
consider_rmg_families (bool, optional): Whether to consider RMG's families in addition to ARC's.
569568
consider_arc_families (bool, optional): Whether to consider ARC's families in addition to RMG's.
570569
discover_own_reverse_rxns_in_reverse (bool, optional): Whether to discover own reverse reactions in reverse.
570+
571+
Returns:
572+
tuple[str | None, bool | None]: The reaction family label,
573+
and whether the family's template also represents its own reverse.
571574
"""
572575
if rmg_family_set == 'default' and consider_rmg_families and consider_arc_families and not discover_own_reverse_rxns_in_reverse:
573576
# these are the default values, don't bother generating a new product_dicts list, use the property

ipython/Tools/External symmetry and optical isomers.ipynb

Lines changed: 7 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -19,28 +19,14 @@
1919
},
2020
{
2121
"cell_type": "code",
22-
"execution_count": 1,
22+
"execution_count": null,
2323
"metadata": {},
24-
"outputs": [
25-
{
26-
"name": "stderr",
27-
"output_type": "stream",
28-
"text": [
29-
"RDKit WARNING: [13:53:02] Enabling RDKit 2019.09.3 jupyter extensions\n"
30-
]
31-
}
32-
],
33-
"source": [
34-
"from arc.molecule import Molecule\n",
35-
"from arc.species import ARCSpecies\n",
36-
"from IPython.display import display\n",
37-
"from arc.plotter import show_sticks\n",
38-
"from arc.species.converter import molecules_from_xyz, check_xyz_dict"
39-
]
24+
"outputs": [],
25+
"source": "from arc.molecule import Molecule\nfrom arc.species import ARCSpecies\nfrom IPython.display import display\nfrom arc.plotter import show_sticks\nfrom arc.species.converter import check_xyz_dict\nfrom arc.species.perceive import perceive_molecule_from_xyz"
4026
},
4127
{
4228
"cell_type": "code",
43-
"execution_count": 2,
29+
"execution_count": null,
4430
"metadata": {},
4531
"outputs": [],
4632
"source": [
@@ -90,100 +76,10 @@
9076
},
9177
{
9278
"cell_type": "code",
93-
"execution_count": 3,
79+
"execution_count": null,
9480
"metadata": {},
95-
"outputs": [
96-
{
97-
"name": "stderr",
98-
"output_type": "stream",
99-
"text": [
100-
"WARNING:pint.util:Could not resolve planks_constant: UndefinedUnitError()\n",
101-
"WARNING:pint.util:Could not resolve plank_constant: UndefinedUnitError()\n"
102-
]
103-
},
104-
{
105-
"name": "stdout",
106-
"output_type": "stream",
107-
"text": [
108-
"SMILES: [O]OC(c1cc(ccc1OC)C(C)C)NC(C)C\n",
109-
"External symmetry: 1\n",
110-
"Optical isomers: 2\n"
111-
]
112-
},
113-
{
114-
"data": {
115-
"image/png": "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\n",
116-
"text/plain": [
117-
"Molecule(smiles=\"[O]OC(c1cc(ccc1OC)C(C)C)NC(C)C\")"
118-
]
119-
},
120-
"metadata": {},
121-
"output_type": "display_data"
122-
},
123-
{
124-
"data": {
125-
"application/3dmoljs_load.v0": "<div id=\"3dmolviewer_15931954791471632\" style=\"position: relative; width: 400px; height: 400px\">\n <p id=\"3dmolwarning_15931954791471632\" style=\"background-color:#ffcccc;color:black\">You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension: <br>\n <tt>jupyter labextension install jupyterlab_3dmol</tt></p>\n </div>\n<script>\n\nvar loadScriptAsync = function(uri){\n return new Promise((resolve, reject) => {\n var tag = document.createElement('script');\n tag.src = uri;\n tag.async = true;\n tag.onload = () => {\n resolve();\n };\n var firstScriptTag = document.getElementsByTagName('script')[0];\n firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\n});\n};\n\nif(typeof $3Dmolpromise === 'undefined') {\n$3Dmolpromise = null;\n $3Dmolpromise = loadScriptAsync('https://3dmol.csb.pitt.edu/build/3Dmol.js');\n}\n\nvar viewer_15931954791471632 = null;\nvar warn = document.getElementById(\"3dmolwarning_15931954791471632\");\nif(warn) {\n warn.parentNode.removeChild(warn);\n}\n$3Dmolpromise.then(function() {\nviewer_15931954791471632 = $3Dmol.createViewer($(\"#3dmolviewer_15931954791471632\"),{backgroundColor:\"white\"});\n\tviewer_15931954791471632.addModel(\"\\n RDKit 3D\\n\\n 40 40 0 0 0 0 0 0 0 0999 V2000\\n -1.2234 2.3879 -0.3134 O 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.1480 -0.1944 2.3919 O 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2458 -0.4645 3.0320 O 0 0 0 0 0 1 0 0 0 0 0 0\\n -1.7224 -1.4210 0.4870 N 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.4775 -0.8093 -0.0681 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.8681 -1.5928 -0.9629 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.3923 -0.0964 0.9409 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.8991 -1.0677 1.3827 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.2789 -2.1263 -0.8273 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2076 -3.0540 -1.2315 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.8957 -0.6518 -1.6013 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.2112 3.6664 -0.9107 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 2.2407 0.0642 -0.1407 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.1181 0.4201 0.3389 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.0655 1.6772 -0.2774 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 1.0265 -0.3608 0.3959 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 2.2687 1.3137 -0.7474 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 1.1360 2.1193 -0.8224 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 4.2890 -0.2602 -0.5594 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.8888 -1.3820 -1.4044 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2001 0.6353 0.8529 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 4.8237 -1.6513 1.4178 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 4.0633 -0.1294 1.9182 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.1290 -1.6289 1.9207 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.0030 -1.9430 -1.8689 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 4.1963 -2.7220 -0.8140 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 2.4858 -2.7261 -0.3701 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -3.1825 -3.3114 -0.8023 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2564 -3.2473 -2.3058 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.4556 -3.7105 -0.7894 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.6229 0.3977 -1.4624 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -3.8865 -0.8091 -1.1605 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.9707 -0.8388 -2.6762 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2250 4.0514 -0.8151 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.5186 4.3405 -0.3952 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.9445 3.6090 -1.9718 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.5758 -1.7118 0.9554 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 0.9441 -1.3333 0.8707 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 1.2057 3.0841 -1.3071 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.1963 1.6777 -1.1788 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 1 12 1 0\\n 1 15 1 0\\n 2 7 1 0\\n 2 3 1 0\\n 4 6 1 0\\n 4 7 1 0\\n 4 37 1 0\\n 5 8 1 0\\n 5 9 1 0\\n 5 13 1 0\\n 5 19 1 0\\n 6 10 1 0\\n 6 11 1 0\\n 6 20 1 0\\n 7 14 1 0\\n 7 21 1 0\\n 8 22 1 0\\n 8 23 1 0\\n 8 24 1 0\\n 9 25 1 0\\n 9 26 1 0\\n 9 27 1 0\\n 10 28 1 0\\n 10 29 1 0\\n 10 30 1 0\\n 11 31 1 0\\n 11 32 1 0\\n 11 33 1 0\\n 12 34 1 0\\n 12 35 1 0\\n 12 36 1 0\\n 13 17 2 0\\n 13 16 1 0\\n 14 16 2 0\\n 14 15 1 0\\n 15 18 2 0\\n 16 38 1 0\\n 17 18 1 0\\n 17 40 1 0\\n 18 39 1 0\\nM RAD 1 3 2\\nM END\\n\",\"sdf\");\n\tviewer_15931954791471632.setStyle({\"stick\": {}});\n\tviewer_15931954791471632.zoomTo();\nviewer_15931954791471632.render();\n});\n</script>",
126-
"text/html": [
127-
"<div id=\"3dmolviewer_15931954791471632\" style=\"position: relative; width: 400px; height: 400px\">\n",
128-
" <p id=\"3dmolwarning_15931954791471632\" style=\"background-color:#ffcccc;color:black\">You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension: <br>\n",
129-
" <tt>jupyter labextension install jupyterlab_3dmol</tt></p>\n",
130-
" </div>\n",
131-
"<script>\n",
132-
"\n",
133-
"var loadScriptAsync = function(uri){\n",
134-
" return new Promise((resolve, reject) => {\n",
135-
" var tag = document.createElement('script');\n",
136-
" tag.src = uri;\n",
137-
" tag.async = true;\n",
138-
" tag.onload = () => {\n",
139-
" resolve();\n",
140-
" };\n",
141-
" var firstScriptTag = document.getElementsByTagName('script')[0];\n",
142-
" firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\n",
143-
"});\n",
144-
"};\n",
145-
"\n",
146-
"if(typeof $3Dmolpromise === 'undefined') {\n",
147-
"$3Dmolpromise = null;\n",
148-
" $3Dmolpromise = loadScriptAsync('https://3dmol.csb.pitt.edu/build/3Dmol.js');\n",
149-
"}\n",
150-
"\n",
151-
"var viewer_15931954791471632 = null;\n",
152-
"var warn = document.getElementById(\"3dmolwarning_15931954791471632\");\n",
153-
"if(warn) {\n",
154-
" warn.parentNode.removeChild(warn);\n",
155-
"}\n",
156-
"$3Dmolpromise.then(function() {\n",
157-
"viewer_15931954791471632 = $3Dmol.createViewer($(\"#3dmolviewer_15931954791471632\"),{backgroundColor:\"white\"});\n",
158-
"\tviewer_15931954791471632.addModel(\"\\n RDKit 3D\\n\\n 40 40 0 0 0 0 0 0 0 0999 V2000\\n -1.2234 2.3879 -0.3134 O 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.1480 -0.1944 2.3919 O 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2458 -0.4645 3.0320 O 0 0 0 0 0 1 0 0 0 0 0 0\\n -1.7224 -1.4210 0.4870 N 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.4775 -0.8093 -0.0681 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.8681 -1.5928 -0.9629 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.3923 -0.0964 0.9409 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.8991 -1.0677 1.3827 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.2789 -2.1263 -0.8273 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2076 -3.0540 -1.2315 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.8957 -0.6518 -1.6013 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.2112 3.6664 -0.9107 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 2.2407 0.0642 -0.1407 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.1181 0.4201 0.3389 C 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.0655 1.6772 -0.2774 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 1.0265 -0.3608 0.3959 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 2.2687 1.3137 -0.7474 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 1.1360 2.1193 -0.8224 C 0 0 0 0 0 0 0 0 0 0 0 0\\n 4.2890 -0.2602 -0.5594 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.8888 -1.3820 -1.4044 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2001 0.6353 0.8529 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 4.8237 -1.6513 1.4178 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 4.0633 -0.1294 1.9182 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.1290 -1.6289 1.9207 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.0030 -1.9430 -1.8689 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 4.1963 -2.7220 -0.8140 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 2.4858 -2.7261 -0.3701 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -3.1825 -3.3114 -0.8023 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2564 -3.2473 -2.3058 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -1.4556 -3.7105 -0.7894 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.6229 0.3977 -1.4624 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -3.8865 -0.8091 -1.1605 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.9707 -0.8388 -2.6762 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.2250 4.0514 -0.8151 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.5186 4.3405 -0.3952 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -0.9445 3.6090 -1.9718 H 0 0 0 0 0 0 0 0 0 0 0 0\\n -2.5758 -1.7118 0.9554 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 0.9441 -1.3333 0.8707 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 1.2057 3.0841 -1.3071 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 3.1963 1.6777 -1.1788 H 0 0 0 0 0 0 0 0 0 0 0 0\\n 1 12 1 0\\n 1 15 1 0\\n 2 7 1 0\\n 2 3 1 0\\n 4 6 1 0\\n 4 7 1 0\\n 4 37 1 0\\n 5 8 1 0\\n 5 9 1 0\\n 5 13 1 0\\n 5 19 1 0\\n 6 10 1 0\\n 6 11 1 0\\n 6 20 1 0\\n 7 14 1 0\\n 7 21 1 0\\n 8 22 1 0\\n 8 23 1 0\\n 8 24 1 0\\n 9 25 1 0\\n 9 26 1 0\\n 9 27 1 0\\n 10 28 1 0\\n 10 29 1 0\\n 10 30 1 0\\n 11 31 1 0\\n 11 32 1 0\\n 11 33 1 0\\n 12 34 1 0\\n 12 35 1 0\\n 12 36 1 0\\n 13 17 2 0\\n 13 16 1 0\\n 14 16 2 0\\n 14 15 1 0\\n 15 18 2 0\\n 16 38 1 0\\n 17 18 1 0\\n 17 40 1 0\\n 18 39 1 0\\nM RAD 1 3 2\\nM END\\n\",\"sdf\");\n",
159-
"\tviewer_15931954791471632.setStyle({\"stick\": {}});\n",
160-
"\tviewer_15931954791471632.zoomTo();\n",
161-
"viewer_15931954791471632.render();\n",
162-
"});\n",
163-
"</script>"
164-
]
165-
},
166-
"metadata": {},
167-
"output_type": "display_data"
168-
}
169-
],
170-
"source": [
171-
"\n",
172-
"if smiles is None:\n",
173-
" mol = molecules_from_xyz(check_xyz_dict(xyz))[1]\n",
174-
" smiles = mol.to_smiles()\n",
175-
"\n",
176-
"rmg_mol = Molecule(smiles=smiles)\n",
177-
"arc_spc = ARCSpecies(label='test', smiles=smiles, xyz=xyz)\n",
178-
"arc_spc.determine_symmetry()\n",
179-
"\n",
180-
"print('SMILES: ', smiles)\n",
181-
"print('External symmetry: ', arc_spc.external_symmetry)\n",
182-
"print('Optical isomers: ', arc_spc.optical_isomers)\n",
183-
"\n",
184-
"display(rmg_mol)\n",
185-
"success = show_sticks(xyz=xyz)"
186-
]
81+
"outputs": [],
82+
"source": "\nif smiles is None:\n mol = perceive_molecule_from_xyz(check_xyz_dict(xyz))\n smiles = mol.to_smiles()\n\nrmg_mol = Molecule(smiles=smiles)\narc_spc = ARCSpecies(label='test', smiles=smiles, xyz=xyz)\narc_spc.determine_symmetry()\n\nprint('SMILES: ', smiles)\nprint('External symmetry: ', arc_spc.external_symmetry)\nprint('Optical isomers: ', arc_spc.optical_isomers)\n\ndisplay(rmg_mol)\nsuccess = show_sticks(xyz=xyz)"
18783
},
18884
{
18985
"cell_type": "code",

0 commit comments

Comments
 (0)