Description
Describe the bug
When using the Molecule.from_dict
method, molecule_dict["conformers"][0]
cannot be a numpy array.
To Reproduce
import numpy as np
from openff.toolkit import Molecule
test = {'atoms': [{'atomic_number': 17,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 7,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 16,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 7,
'formal_charge': 0,
'is_aromatic': True,
'stereochemistry': None},
{'atomic_number': 16,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 7,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 7,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': True,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': True,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': True,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': True,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': True,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 6,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 29,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': 'R'},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None},
{'atomic_number': 1,
'formal_charge': 0,
'is_aromatic': False,
'stereochemistry': None}],
'bonds': [{'atom1': 0,
'atom2': 20,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 1,
'atom2': 4,
'bond_order': 2,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 1,
'atom2': 2,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 4,
'atom2': 7,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 20,
'atom2': 2,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 20,
'atom2': 3,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 20,
'atom2': 8,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 2,
'atom2': 11,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 7,
'atom2': 9,
'bond_order': 2,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 3,
'atom2': 18,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 11,
'atom2': 9,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 11,
'atom2': 12,
'bond_order': 2,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 8,
'atom2': 12,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 8,
'atom2': 10,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 18,
'atom2': 10,
'bond_order': 2,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 18,
'atom2': 6,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 12,
'atom2': 13,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 6,
'atom2': 19,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 14,
'atom2': 13,
'bond_order': 2,
'is_aromatic': True,
'stereochemistry': None},
{'atom1': 14,
'atom2': 15,
'bond_order': 1,
'is_aromatic': True,
'stereochemistry': None},
{'atom1': 13,
'atom2': 5,
'bond_order': 1,
'is_aromatic': True,
'stereochemistry': None},
{'atom1': 15,
'atom2': 16,
'bond_order': 2,
'is_aromatic': True,
'stereochemistry': None},
{'atom1': 5,
'atom2': 17,
'bond_order': 2,
'is_aromatic': True,
'stereochemistry': None},
{'atom1': 16,
'atom2': 17,
'bond_order': 1,
'is_aromatic': True,
'stereochemistry': None},
{'atom1': 1,
'atom2': 21,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 4,
'atom2': 22,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 7,
'atom2': 23,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 9,
'atom2': 24,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 14,
'atom2': 25,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 15,
'atom2': 26,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 16,
'atom2': 27,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 17,
'atom2': 28,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 19,
'atom2': 29,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 19,
'atom2': 30,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None},
{'atom1': 19,
'atom2': 31,
'bond_order': 1,
'is_aromatic': False,
'stereochemistry': None}],
'conformers': [np.array([[1.032, -1.316, -2.215],
[-0.521, -3.197, 0.611],
[-0.433, -1.89, 0.232],
[2.289, -0.98, 0.702],
[-1.7, -3.715, 1.009],
[-3.487, 1.084, 0.136],
[3.983, 1.697, 0.757],
[-2.855, -2.905, 1.036],
[0.18, 0.5, -0.023],
[-2.777, -1.592, 0.714],
[1.312, 1.288, 0.12],
[-1.525, -1.028, 0.346],
[-1.197, 0.293, 0.106],
[-2.189, 1.365, -0.001],
[-1.77, 2.681, -0.246],
[-2.719, 3.678, -0.344],
[-4.061, 3.339, -0.194],
[-4.408, 2.023, 0.046],
[2.498, 0.788, 0.494],
[3.492, 3.401, 0.372],
[0.716, -1.001, -0.41],
[0.359, -3.823, 0.588],
[-1.761, -4.752, 1.307],
[-3.805, -3.334, 1.315],
[-3.664, -0.975, 0.736],
[-0.721, 2.911, -0.357],
[-2.427, 4.701, -0.532],
[-4.825, 4.098, -0.266],
[-5.449, 1.761, 0.161],
[4.347, 4.064, 0.502],
[3.145, 3.454, -0.66],
[2.689, 3.708, 1.041]])],
'conformers_unit': 'angstrom',
'hierarchy_schemes': {},
'name': 'data_0TE',
'partial_charges': None,
'properties': {}}
test["conformers"][0] = np.array(test["conformers"][0])
mol = Molecule.from_dict(
test,
)
Output
UnboundLocalError Traceback (most recent call last)
Cell In[64], [line 13](vscode-notebook-cell:?execution_count=64&line=13)
[11](vscode-notebook-cell:?execution_count=64&line=11) print(test)
[12](vscode-notebook-cell:?execution_count=64&line=12) test["conformers"][0] = np.array(test["conformers"][0])
---> [13](vscode-notebook-cell:?execution_count=64&line=13) mol = Molecule.from_dict(
[14](vscode-notebook-cell:?execution_count=64&line=14) test,
[15](vscode-notebook-cell:?execution_count=64&line=15) )
File ~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1252, in FrozenMolecule.from_dict(cls, molecule_dict)
[1250](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1250) # This implementation is a compromise to let this remain as a classmethod
[1251](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1251) mol = cls()
-> [1252](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1252) mol._initialize_from_dict(molecule_dict)
[1253](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1253) return mol
File ~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1291, in FrozenMolecule._initialize_from_dict(self, molecule_dict)
[1288](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1288) else:
[1289](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1289) from openff.toolkit.utils.utils import deserialize_numpy
-> [1291](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1291) self._conformers = [
[1292](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1292) Quantity(
[1293](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1293) deserialize_numpy(ser_conf, (self.n_atoms, 3)),
[1294](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1294) unit.Unit(molecule_dict["conformers_unit"]),
[1295](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1295) )
[1296](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1296) for ser_conf in molecule_dict["conformers"]
[1297](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/topology/molecule.py:1297) ]
...
[442](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/utils/utils.py:442) np_array = np.frombuffer(serialized_np, dtype=dt)
--> [443](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/utils/utils.py:443) np_array = np_array.reshape(shape)
[444](https://file+.vscode-resource.vscode-cdn.net/Users/jenniferclark/OMSF/OpenFF/Organometallics/Datasets/DS1-CCD/~/bin/openff-toolkit/openff/toolkit/utils/utils.py:444) return np_array
UnboundLocalError: cannot access local variable 'np_array' where it is not associated with a value
Computing environment (please complete the following information):
- Operating system: MacOS
- Output of running
conda list
:
List of packages in environment: "/Users/jenniferclark/.local/share/mamba/envs/qca"
Name Version Build Channel
──────────────────────────────────────────────────────────────────────────────────────────────────────────
alabaster 1.0.0 pyhd8ed1ab_1 conda-forge
ambertools 23.6 cuda_None_nompi_py311h486627a_105 conda-forge
annotated-types 0.7.0 pyhd8ed1ab_1 conda-forge
anyio 4.8.0 pyhd8ed1ab_0 conda-forge
appnope 0.1.4 pyhd8ed1ab_1 conda-forge
apsw 3.47.0.0 py311hde754ab_0 conda-forge
argcomplete 3.5.2 pyhd8ed1ab_0 conda-forge
argon2-cffi 23.1.0 pyhd8ed1ab_1 conda-forge
argon2-cffi-bindings 21.2.0 py311h460d6c5_5 conda-forge
arpack 3.9.1 nompi_h1f29f7c_102 conda-forge
arrow 1.3.0 pyhd8ed1ab_1 conda-forge
asttokens 3.0.0 pyhd8ed1ab_1 conda-forge
async-lru 2.0.4 pyhd8ed1ab_1 conda-forge
attrs 24.3.0 pyh71513ae_0 conda-forge
autodoc-pydantic 2.1.0 pyh3cfb1c2_1 conda-forge
babel 2.16.0 pyhd8ed1ab_1 conda-forge
basis_set_exchange 0.10 pyhd8ed1ab_1 conda-forge
beautifulsoup4 4.12.3 pyha770c72_1 conda-forge
bleach 6.2.0 pyhd8ed1ab_3 conda-forge
blosc 1.21.6 h7dd00d9_1 conda-forge
brotli 1.1.0 hd74edd7_2 conda-forge
brotli-bin 1.1.0 hd74edd7_2 conda-forge
brotli-python 1.1.0 py311h3f08180_2 conda-forge
bson 0.5.9 pyhd8ed1ab_1 conda-forge
bzip2 1.0.8 h99b78c6_7 conda-forge
c-ares 1.34.4 h5505292_0 conda-forge
c-blosc2 2.15.2 h9cbb436_1 conda-forge
ca-certificates 2024.12.14 hf0a4a13_0 conda-forge
cached-property 1.5.2 hd8ed1ab_1 conda-forge
cached_property 1.5.2 pyha770c72_1 conda-forge
cachetools 5.5.0 pyhd8ed1ab_1 conda-forge
cairo 1.18.2 h6a3b0d2_1 conda-forge
certifi 2024.12.14 pyhd8ed1ab_0 conda-forge
cffi 1.17.1 py311h3a79f62_0 conda-forge
chardet 5.2.0 py311h267d04e_2 conda-forge
charset-normalizer 3.4.1 pyhd8ed1ab_0 conda-forge
click 8.1.8 pyh707e725_0 conda-forge
click-option-group 0.5.6 pyhd8ed1ab_0 conda-forge
colorama 0.4.6 pyhd8ed1ab_1 conda-forge
comm 0.2.2 pyhd8ed1ab_1 conda-forge
commonmark 0.9.1 py_0 conda-forge
contourpy 1.3.1 py311h210dab8_0 conda-forge
coverage 7.6.10 py311h4921393_0 conda-forge
cpython 3.11.11 py311hd8ed1ab_1 conda-forge
cycler 0.12.1 pyhd8ed1ab_1 conda-forge
debugpy 1.8.11 py311h155a34a_0 conda-forge
decorator 5.1.1 pyhd8ed1ab_1 conda-forge
deepdiff 8.1.1 pyhd8ed1ab_0 conda-forge
defusedxml 0.7.1 pyhd8ed1ab_0 conda-forge
docutils 0.21.2 pyhd8ed1ab_1 conda-forge
entrypoints 0.4 pyhd8ed1ab_1 conda-forge
exceptiongroup 1.2.2 pyhd8ed1ab_1 conda-forge
execnet 2.1.1 pyhd8ed1ab_1 conda-forge
executing 2.1.0 pyhd8ed1ab_1 conda-forge
fftw 3.3.10 nompi_h6637ab6_110 conda-forge
filelock 3.16.1 pyhd8ed1ab_1 conda-forge
font-ttf-dejavu-sans-mono 2.37 hab24e00_0 conda-forge
font-ttf-inconsolata 3.000 h77eed37_0 conda-forge
font-ttf-source-code-pro 2.038 h77eed37_0 conda-forge
font-ttf-ubuntu 0.83 h77eed37_3 conda-forge
fontconfig 2.15.0 h1383a14_1 conda-forge
fonts-conda-ecosystem 1 0 conda-forge
fonts-conda-forge 1 0 conda-forge
fonttools 4.55.3 py311h4921393_1 conda-forge
fqdn 1.5.1 pyhd8ed1ab_1 conda-forge
freetype 2.12.1 hadb7bae_2 conda-forge
freetype-py 2.3.0 pyhd8ed1ab_0 conda-forge
fsspec 2024.12.0 pyhd8ed1ab_0 conda-forge
future 1.0.0 pyhd8ed1ab_1 conda-forge
gemmi 0.7.0 pypi_0 pypi
geometric 1.0.2 pyhd8ed1ab_0 conda-forge
gmp 6.3.0 h7bae524_2 conda-forge
gmpy2 2.1.5 py311hb5d9ff4_3 conda-forge
greenlet 3.1.1 py311h155a34a_1 conda-forge
h11 0.14.0 pyhd8ed1ab_1 conda-forge
h2 4.1.0 pyhd8ed1ab_1 conda-forge
hdf4 4.2.15 h2ee6834_7 conda-forge
hdf5 1.14.3 nompi_ha698983_108 conda-forge
hpack 4.0.0 pyhd8ed1ab_1 conda-forge
httpcore 1.0.7 pyh29332c3_1 conda-forge
httpx 0.28.1 pyhd8ed1ab_0 conda-forge
hyperframe 6.0.1 pyhd8ed1ab_1 conda-forge
icu 75.1 hfee45f7_0 conda-forge
idna 3.10 pyhd8ed1ab_1 conda-forge
imagesize 1.4.1 pyhd8ed1ab_0 conda-forge
importlib-metadata 8.5.0 pyha770c72_1 conda-forge
importlib_resources 6.4.5 pyhd8ed1ab_1 conda-forge
iniconfig 2.0.0 pyhd8ed1ab_1 conda-forge
ipykernel 6.29.5 pyh57ce528_0 conda-forge
ipython 8.31.0 pyh707e725_0 conda-forge
ipywidgets 8.1.5 pyhd8ed1ab_1 conda-forge
isoduration 20.11.0 pyhd8ed1ab_1 conda-forge
jedi 0.19.2 pyhd8ed1ab_1 conda-forge
jinja2 3.1.5 pyhd8ed1ab_0 conda-forge
joblib 1.4.2 pyhd8ed1ab_1 conda-forge
json5 0.10.0 pyhd8ed1ab_1 conda-forge
jsonpointer 3.0.0 py311h267d04e_1 conda-forge
jsonschema 4.23.0 pyhd8ed1ab_1 conda-forge
jsonschema-specifications 2024.10.1 pyhd8ed1ab_1 conda-forge
jsonschema-with-format-nongpl 4.23.0 hd8ed1ab_1 conda-forge
jupyter 1.1.1 pyhd8ed1ab_1 conda-forge
jupyter-lsp 2.2.5 pyhd8ed1ab_1 conda-forge
jupyter_client 8.6.3 pyhd8ed1ab_1 conda-forge
jupyter_console 6.6.3 pyhd8ed1ab_1 conda-forge
jupyter_core 5.7.2 pyh31011fe_1 conda-forge
jupyter_events 0.11.0 pyhd8ed1ab_0 conda-forge
jupyter_server 2.15.0 pyhd8ed1ab_0 conda-forge
jupyter_server_terminals 0.5.3 pyhd8ed1ab_1 conda-forge
jupyterlab 4.3.4 pyhd8ed1ab_0 conda-forge
jupyterlab_pygments 0.3.0 pyhd8ed1ab_2 conda-forge
jupyterlab_server 2.27.3 pyhd8ed1ab_1 conda-forge
jupyterlab_widgets 3.0.13 pyhd8ed1ab_1 conda-forge
khronos-opencl-icd-loader 2024.10.24 h5505292_1 conda-forge
kiwisolver 1.4.7 py311h2c37856_0 conda-forge
krb5 1.21.3 h237132a_0 conda-forge
latexcodec 2.0.1 pyh9f0ad1d_0 conda-forge
lcms2 2.16 ha0e7c42_0 conda-forge
lerc 4.0.0 h9a09cb3_0 conda-forge
libabseil 20240722.0 cxx17_h07bc746_4 conda-forge
libaec 1.1.3 hebf3989_0 conda-forge
libblas 3.9.0 26_osxarm64_openblas conda-forge
libboost 1.84.0 hc9fb7c5_7 conda-forge
libboost-python 1.84.0 py311h8fc16d6_7 conda-forge
libbrotlicommon 1.1.0 hd74edd7_2 conda-forge
libbrotlidec 1.1.0 hd74edd7_2 conda-forge
libbrotlienc 1.1.0 hd74edd7_2 conda-forge
libcblas 3.9.0 26_osxarm64_openblas conda-forge
libcurl 8.11.1 h73640d1_0 conda-forge
libcxx 19.1.6 ha82da77_1 conda-forge
libdeflate 1.23 hec38601_0 conda-forge
libedit 3.1.20191231 hc8eb9b7_2 conda-forge
libev 4.33 h93a5062_2 conda-forge
libexpat 2.6.4 h286801f_0 conda-forge
libffi 3.4.2 h3422bc3_5 conda-forge
libgfortran 5.0.0 13_2_0_hd922786_3 conda-forge
libgfortran5 13.2.0 hf226fd6_3 conda-forge
libglib 2.82.2 h07bd6cf_0 conda-forge
libiconv 1.17 h0d3ecfb_2 conda-forge
libintl 0.22.5 h8414b35_3 conda-forge
libjpeg-turbo 3.0.0 hb547adb_1 conda-forge
liblapack 3.9.0 26_osxarm64_openblas conda-forge
liblzma 5.6.3 h39f12f2_1 conda-forge
libnetcdf 4.9.2 nompi_h610d594_116 conda-forge
libnghttp2 1.64.0 h6d7220d_0 conda-forge
libopenblas 0.3.28 openmp_hf332438_1 conda-forge
libpng 1.6.44 hc14010f_0 conda-forge
libpq 16.6 hb008251_1 conda-forge
libprotobuf 5.28.3 h3bd63a1_1 conda-forge
librdkit 2024.03.6 h3cc9767_0 conda-forge
libsodium 1.0.20 h99b78c6_0 conda-forge
libsqlite 3.47.0 hbaaea75_1 conda-forge
libssh2 1.11.1 h9cc3647_0 conda-forge
libtiff 4.7.0 h551f018_3 conda-forge
libtorch 2.5.1 cpu_generic_h326f772_8 conda-forge
libuv 1.49.2 h7ab814d_0 conda-forge
libwebp-base 1.5.0 h2471fea_0 conda-forge
libxcb 1.17.0 hdb1d25a_0 conda-forge
libxml2 2.13.5 h178c5d8_1 conda-forge
libxslt 1.1.39 h223e5b9_0 conda-forge
libzip 1.11.2 h1336266_0 conda-forge
libzlib 1.3.1 h8359307_2 conda-forge
lightning-utilities 0.11.9 pyhd8ed1ab_1 conda-forge
llvm-openmp 19.1.6 hdb05f8b_0 conda-forge
lxml 5.3.0 py311h96511b9_2 conda-forge
lz4-c 1.10.0 h286801f_1 conda-forge
m2r2 0.3.3.post2 pyhd8ed1ab_0 conda-forge
markdown-it-py 3.0.0 pyhd8ed1ab_1 conda-forge
markupsafe 3.0.2 py311h4921393_1 conda-forge
matplotlib 3.10.0 py311ha1ab1f8_0 conda-forge
matplotlib-base 3.10.0 py311h031da69_0 conda-forge
matplotlib-inline 0.1.7 pyhd8ed1ab_1 conda-forge
mdit-py-plugins 0.4.2 pyhd8ed1ab_1 conda-forge
mdtraj 1.10.2 py311he9eb210_0 conda-forge
mdurl 0.1.2 pyhd8ed1ab_1 conda-forge
mistune 0.8.4 pyh1a96a4e_1006 conda-forge
mpc 1.3.1 h8f1351a_1 conda-forge
mpfr 4.2.1 hb693164_3 conda-forge
mpmath 1.3.0 pyhd8ed1ab_1 conda-forge
msgpack-python 1.1.0 py311h2c37856_0 conda-forge
munkres 1.1.4 pyh9f0ad1d_0 conda-forge
mypy 1.14.1 py311h917b07b_0 conda-forge
mypy_extensions 1.0.0 pyha770c72_1 conda-forge
myst-parser 4.0.0 pyhd8ed1ab_1 conda-forge
nbclient 0.10.2 pyhd8ed1ab_0 conda-forge
nbconvert 6.5.3 pyhd8ed1ab_0 conda-forge
nbconvert-core 6.5.3 pyhd8ed1ab_0 conda-forge
nbconvert-pandoc 6.5.3 pyhd8ed1ab_0 conda-forge
nbformat 5.10.4 pyhd8ed1ab_1 conda-forge
nbsphinx 0.9.6 pyhd8ed1ab_0 conda-forge
nbsphinx-link 1.3.0 pyh9f0ad1d_0 conda-forge
nbval 0.11.0 pyhd8ed1ab_1 conda-forge
ncurses 6.5 h7bae524_1 conda-forge
nest-asyncio 1.6.0 pyhd8ed1ab_1 conda-forge
netcdf-fortran 4.6.1 nompi_hb61fc8b_108 conda-forge
networkx 3.4.2 pyh267e887_2 conda-forge
nglview 3.1.4 pyhcc81805_0 conda-forge
nomkl 1.0 h5ca1d4c_0 conda-forge
notebook 7.3.2 pyhd8ed1ab_0 conda-forge
notebook-shim 0.2.4 pyhd8ed1ab_1 conda-forge
numexpr 2.10.2 py311h7469182_0 conda-forge
numpy 1.26.4 py311h7125741_0 conda-forge
ocl_icd_wrapper_apple 1.0.0 h27ca646_0 conda-forge
opencl-headers 2024.10.24 h286801f_0 conda-forge
openeye-toolkits 2024.2.0 py311_0 openeye
openff-amber-ff-ports 0.0.4 pyhca7485f_0 conda-forge
openff-forcefields 2024.09.0 pyhff2d567_0 conda-forge
openff-interchange-base 0.4.0 pyhd8ed1ab_0 conda-forge
openff-nagl-base 0.5.0 pyhd8ed1ab_0 conda-forge
openff-nagl-models 0.3.0 pyhd8ed1ab_1 conda-forge
openff-qcsubmit 0.54.0.post2+gafbbc66 pypi_0 pypi
openff-toolkit 0.16.7.post37+ge327e05e pypi_0 pypi
openff-toolkit-base 0.16.7 pyhd8ed1ab_0 conda-forge
openff-units 0.2.2 pyhd8ed1ab_1 conda-forge
openff-utilities 0.1.13 pyhd8ed1ab_0 conda-forge
openjpeg 2.5.3 h8a3d83b_0 conda-forge
openmm 8.2.0 py311h63f3cee_0_khronos conda-forge
openssl 3.4.0 h81ee809_1 conda-forge
orderly-set 5.2.3 pyh29332c3_1 conda-forge
overrides 7.7.0 pyhd8ed1ab_1 conda-forge
packaging 24.2 pyhd8ed1ab_2 conda-forge
pandas 2.2.3 py311h9cb3ce9_1 conda-forge
pandoc 2.19.2 hce30654_2 conda-forge
pandocfilters 1.5.0 pyhd8ed1ab_0 conda-forge
parmed 4.3.0 py311he826523_0 conda-forge
parso 0.8.4 pyhd8ed1ab_1 conda-forge
pcre2 10.44 h297a79d_2 conda-forge
periodictable 2.0.2 pypi_0 pypi
perl 5.32.1 7_h4614cfb_perl5 conda-forge
pexpect 4.9.0 pyhd8ed1ab_1 conda-forge
pickleshare 0.7.5 pyhd8ed1ab_1004 conda-forge
pillow 11.1.0 py311hb9ba9e9_0 conda-forge
pint 0.23 pyhd8ed1ab_1 conda-forge
pip 24.3.1 pyh8b19718_2 conda-forge
pixman 0.44.2 h2f9eb0b_0 conda-forge
pkgutil-resolve-name 1.3.10 pyhd8ed1ab_2 conda-forge
platformdirs 4.3.6 pyhd8ed1ab_1 conda-forge
pluggy 1.5.0 pyhd8ed1ab_1 conda-forge
pockets 0.9.1 pyhd8ed1ab_1 conda-forge
prometheus_client 0.21.1 pyhd8ed1ab_0 conda-forge
prompt-toolkit 3.0.48 pyha770c72_1 conda-forge
prompt_toolkit 3.0.48 hd8ed1ab_1 conda-forge
psutil 6.1.1 py311h917b07b_0 conda-forge
pthread-stubs 0.4 hd74edd7_1002 conda-forge
ptyprocess 0.7.0 pyhd8ed1ab_1 conda-forge
pure_eval 0.2.3 pyhd8ed1ab_1 conda-forge
py-cpuinfo 9.0.0 pyhd8ed1ab_1 conda-forge
pybtex 0.24.0 pyhd8ed1ab_3 conda-forge
pybtex-docutils 1.0.3 py311h267d04e_2 conda-forge
pycairo 1.27.0 py311h84a5a08_0 conda-forge
pycalverter 1.6.1 pyhd8ed1ab_2 conda-forge
pycparser 2.22 pyh29332c3_1 conda-forge
pydantic 2.10.4 pyh3cfb1c2_0 conda-forge
pydantic-core 2.27.2 py311h3ff9189_0 conda-forge
pydantic-settings 2.7.1 pyh3cfb1c2_0 conda-forge
pygments 2.18.0 pyhd8ed1ab_1 conda-forge
pyjwt 2.10.1 pyhd8ed1ab_0 conda-forge
pyobjc-core 10.3.2 py311hab620ed_0 conda-forge
pyobjc-framework-cocoa 10.3.2 py311hab620ed_0 conda-forge
pyparsing 3.2.1 pyhd8ed1ab_0 conda-forge
pysocks 1.7.1 pyha55dd90_7 conda-forge
pytables 3.10.2 py311hd0690c4_0 conda-forge
pytest 8.3.4 pyhd8ed1ab_1 conda-forge
pytest-cov 6.0.0 pyhd8ed1ab_1 conda-forge
pytest-rerunfailures 15.0 pyhd8ed1ab_1 conda-forge
pytest-timeout 2.3.1 pyhd8ed1ab_2 conda-forge
pytest-xdist 3.6.1 pyhd8ed1ab_1 conda-forge
python 3.11.11 hc22306f_1_cpython conda-forge
python-constraint 1.4.0 pyhff2d567_1 conda-forge
python-dateutil 2.9.0.post0 pyhff2d567_1 conda-forge
python-dotenv 1.0.1 pyhd8ed1ab_1 conda-forge
python-fastjsonschema 2.21.1 pyhd8ed1ab_0 conda-forge
python-json-logger 2.0.7 pyhd8ed1ab_0 conda-forge
python-tzdata 2024.2 pyhd8ed1ab_1 conda-forge
python_abi 3.11 5_cp311 conda-forge
pytorch 2.5.1 cpu_generic_py311_h0ba074a_8 conda-forge
pytorch-lightning 2.5.0.post0 pyh101cb37_0 conda-forge
pytz 2024.1 pyhd8ed1ab_0 conda-forge
pyyaml 6.0.2 py311h460d6c5_1 conda-forge
pyzmq 26.2.0 py311h730b646_3 conda-forge
qcaide 1.0.0+10.g2054cf4.dirty pypi_0 pypi
qcelemental 0.28.0 pyhd8ed1ab_1 conda-forge
qcengine 0.30.0 pyhd8ed1ab_0 conda-forge
qcportal 0.57 pyhd8ed1ab_0 conda-forge
qhull 2020.2 h420ef59_5 conda-forge
rdkit 2024.03.6 py311h4a48902_0 conda-forge
readline 8.2 h92ec313_1 conda-forge
referencing 0.35.1 pyhd8ed1ab_1 conda-forge
regex 2024.11.6 py311h917b07b_0 conda-forge
reportlab 4.2.5 py311h460d6c5_0 conda-forge
requests 2.32.3 pyhd8ed1ab_1 conda-forge
rfc3339-validator 0.1.4 pyhd8ed1ab_1 conda-forge
rfc3986-validator 0.1.1 pyh9f0ad1d_0 conda-forge
rich 13.9.4 pyhd8ed1ab_1 conda-forge
rlpycairo 0.2.0 pyhd8ed1ab_0 conda-forge
rpds-py 0.22.3 py311h3ff9189_0 conda-forge
scipy 1.13.1 py311hceeca8c_0 conda-forge
send2trash 1.8.3 pyh31c8845_1 conda-forge
setuptools 75.6.0 pyhff2d567_1 conda-forge
six 1.17.0 pyhd8ed1ab_0 conda-forge
sleef 3.7 h8391f65_2 conda-forge
smirnoff99frosst 1.1.0 pyh44b312d_0 conda-forge
snappy 1.2.1 h98b9ce2_1 conda-forge
sniffio 1.3.1 pyhd8ed1ab_1 conda-forge
snowballstemmer 2.2.0 pyhd8ed1ab_0 conda-forge
soupsieve 2.5 pyhd8ed1ab_1 conda-forge
sphinx 8.1.3 pyhd8ed1ab_1 conda-forge
sphinx-argparse 0.5.2 pyhd8ed1ab_1 conda-forge
sphinx-notfound-page 1.0.4 pyhd8ed1ab_1 conda-forge
sphinx_rtd_theme 3.0.1 pyha770c72_0 conda-forge
sphinxcontrib-applehelp 2.0.0 pyhd8ed1ab_1 conda-forge
sphinxcontrib-bibtex 2.6.3 pyhd8ed1ab_1 conda-forge
sphinxcontrib-devhelp 2.0.0 pyhd8ed1ab_1 conda-forge
sphinxcontrib-htmlhelp 2.1.0 pyhd8ed1ab_1 conda-forge
sphinxcontrib-jquery 4.1 pyhd8ed1ab_1 conda-forge
sphinxcontrib-jsmath 1.0.1 pyhd8ed1ab_1 conda-forge
sphinxcontrib-napoleon 0.7 pyhd8ed1ab_1 conda-forge
sphinxcontrib-qthelp 2.0.0 pyhd8ed1ab_1 conda-forge
sphinxcontrib-serializinghtml 1.1.10 pyhd8ed1ab_1 conda-forge
sqlalchemy 2.0.36 py311hae2e1ce_0 conda-forge
sqlite 3.47.0 hcd14bea_1 conda-forge
stack_data 0.6.3 pyhd8ed1ab_1 conda-forge
sympy 1.13.3 pyh2585a3b_104 conda-forge
tabulate 0.9.0 pyhd8ed1ab_2 conda-forge
terminado 0.18.1 pyh31c8845_0 conda-forge
tinycss2 1.4.0 pyhd8ed1ab_0 conda-forge
tk 8.6.13 h5083fa2_1 conda-forge
toml 0.10.2 pyhd8ed1ab_1 conda-forge
tomli 2.2.1 pyhd8ed1ab_1 conda-forge
torchmetrics 1.6.1 pyhd8ed1ab_0 conda-forge
tornado 6.4.2 py311h917b07b_0 conda-forge
torsiondrive 1.1.0 pyhd8ed1ab_0 conda-forge
tqdm 4.67.1 pyhd8ed1ab_1 conda-forge
traitlets 5.14.3 pyhd8ed1ab_1 conda-forge
types-python-dateutil 2.9.0.20241206 pyhd8ed1ab_0 conda-forge
typing-extensions 4.12.2 hd8ed1ab_1 conda-forge
typing_extensions 4.12.2 pyha770c72_1 conda-forge
typing_utils 0.1.0 pyhd8ed1ab_1 conda-forge
tzdata 2024b hc8b5060_0 conda-forge
unicodedata2 15.1.0 py311hae2e1ce_1 conda-forge
unidecode 1.3.8 pyh29332c3_1 conda-forge
uri-template 1.3.0 pyhd8ed1ab_1 conda-forge
urllib3 2.3.0 pyhd8ed1ab_0 conda-forge
wcwidth 0.2.13 pyhd8ed1ab_1 conda-forge
webcolors 24.11.1 pyhd8ed1ab_0 conda-forge
webencodings 0.5.1 pyhd8ed1ab_3 conda-forge
websocket-client 1.8.0 pyhd8ed1ab_1 conda-forge
wheel 0.45.1 pyhd8ed1ab_1 conda-forge
widgetsnbextension 4.0.13 pyhd8ed1ab_1 conda-forge
xmltodict 0.14.2 pyhd8ed1ab_1 conda-forge
xorg-libice 1.1.2 h5505292_0 conda-forge
xorg-libsm 1.2.5 h5505292_0 conda-forge
xorg-libx11 1.8.10 h6a5fb8c_1 conda-forge
xorg-libxau 1.0.12 h5505292_0 conda-forge
xorg-libxdmcp 1.1.5 hd74edd7_0 conda-forge
xorg-libxext 1.3.6 hd74edd7_0 conda-forge
xorg-libxt 1.3.1 h5505292_0 conda-forge
yaml 0.2.5 h3422bc3_2 conda-forge
zeromq 4.3.5 hc1bb282_7 conda-forge
zipp 3.21.0 pyhd8ed1ab_1 conda-forge
zlib 1.3.1 h8359307_2 conda-forge
zlib-ng 2.2.3 h13dfb9a_0 conda-forge
zstandard 0.23.0 py311ha60cc69_1 conda-forge
zstd 1.5.6 hb46c0d2_0 conda-forge
Additional context
removing np.array() from the conformers key (so a list of lists) will allow the example to run as expected.