Open j-wags opened 3 years ago
Our subclass uses the same molecular skeleton for all "frames" (conformers) in the "trajectory." I think we can rule out the possibilities of atoms being re-ordered between conformers or the base molecule changing between "frames." Maybe something is happening with the PDB conversion within NGLView?
Describe the bug In some cases, switching between multiple conformers using nglview mixes up the bonding of the molecule.
To Reproduce
Initially this looks fine.
But after switching to the second conformer, and then back, the bonds and coordinates are mangled
Output The full error message (may be large, that's fine. Better to paste too much than too little.)
Computing environment (please complete the following information):
conda list
Click to expand
``` # packages in environment at /Users/jeffreywagner/miniconda3/envs/off-dev: # # Name Version Build Channel abseil-cpp 20200225.2 h4a8c4bd_0 conda-forge alabaster 0.7.12 py_0 conda-forge amberlite 16.0 pypi_0 pypi ambertools 20.9 pypi_0 pypi apbs 1.5 h1de35cc_3 schrodinger appdirs 1.4.3 py_1 conda-forge appnope 0.1.0 py37hc8dfbb8_1001 conda-forge arpack 3.7.0 hbb27dc6_1 conda-forge arrow-cpp 0.17.1 py37h898ce22_2_cpu conda-forge attrs 19.3.0 py_0 conda-forge aws-sdk-cpp 1.7.164 h5c602de_1 conda-forge babel 2.8.0 py_0 conda-forge backcall 0.1.0 py_0 conda-forge biopython 1.76 py37h0b31af3_0 conda-forge black 20.8b1 py_1 conda-forge bleach 3.1.4 pyh9f0ad1d_0 conda-forge boost 1.72.0 py37hbf1eeb5_0 conda-forge boost-cpp 1.72.0 hdf9ef73_0 conda-forge brotli 1.0.7 h4a8c4bd_1001 conda-forge brotlipy 0.7.0 py37h9bfed18_1000 conda-forge bson 0.5.9 py_0 conda-forge bzip2 1.0.8 h0b31af3_2 conda-forge c-ares 1.15.0 h01d97ff_1001 conda-forge ca-certificates 2020.6.20 hecda079_0 conda-forge cairo 1.16.0 hec6a9b0_1003 conda-forge certifi 2020.6.20 py37h2987424_2 conda-forge cffi 1.14.0 py37h356ff06_0 conda-forge cftime 1.1.3 py37h10e2902_0 conda-forge chardet 3.0.4 py37hc8dfbb8_1006 conda-forge click 7.1.2 pyh9f0ad1d_0 conda-forge cmiles 0.1.5 pyh9f0ad1d_0 conda-forge codecov 2.1.5 pyh9f0ad1d_0 conda-forge coverage 5.1 py37h9bfed18_0 conda-forge cryptography 2.8 py37he655712_2 conda-forge curl 7.69.1 h2d98d24_0 conda-forge cycler 0.10.0 py_2 conda-forge cython 0.29.16 py37h570ac47_0 conda-forge dataclasses 0.7 pyhb2cacf7_7 conda-forge dbus 1.13.6 h2f22bb5_0 conda-forge decorator 4.4.2 py_0 conda-forge defusedxml 0.6.0 py_0 conda-forge docutils 0.16 py37hc8dfbb8_1 conda-forge entrypoints 0.3 py37hc8dfbb8_1001 conda-forge expat 2.2.9 h4a8c4bd_2 conda-forge fftw 3.3.8 nompi_h44ae4c8_1110 conda-forge fftw3f 3.3.4 2 omnia fontconfig 2.13.1 h6b1039f_1001 conda-forge fragmenter 0.0.4 py37_0 omnia freemol 1.158 py_2 schrodinger freetype 2.10.1 h8da9a1a_0 conda-forge gettext 0.19.8.1 h46ab8bc_1002 conda-forge gflags 2.2.2 h4a8c4bd_1002 conda-forge glew 2.0.0 0 schrodinger glib 2.64.2 h577aef8_0 conda-forge glog 0.4.0 h700f914_3 conda-forge griddataformats 0.5.0 py_0 conda-forge grpc-cpp 1.29.0 h0284957_0 conda-forge gsd 2.1.1 py37h10e2902_0 conda-forge h5py 2.10.0 nompi_py37h28defc4_104 conda-forge hdf4 4.2.13 h84186c3_1003 conda-forge hdf5 1.10.6 nompi_haae91d6_101 conda-forge icu 64.2 h6de7cb9_1 conda-forge idna 2.9 py_1 conda-forge imagesize 1.2.0 py_0 conda-forge importlib-metadata 1.6.0 py37hc8dfbb8_0 conda-forge importlib_metadata 1.6.0 0 conda-forge ipykernel 5.2.1 py37h43977f1_0 conda-forge ipython 7.13.0 py37hc8dfbb8_2 conda-forge ipython_genutils 0.2.0 py_1 conda-forge ipywidgets 7.5.1 py_0 conda-forge jedi 0.17.0 py37hc8dfbb8_0 conda-forge jinja2 2.11.2 pyh9f0ad1d_0 conda-forge joblib 0.15.1 py_0 conda-forge jpeg 9c h1de35cc_1001 conda-forge jsonschema 3.2.0 py37hc8dfbb8_1 conda-forge jupyter_client 6.1.3 py_0 conda-forge jupyter_core 4.6.3 py37hc8dfbb8_1 conda-forge kiwisolver 1.2.0 py37ha1cc60f_0 conda-forge krb5 1.17.1 h1752a42_0 conda-forge libblas 3.8.0 16_openblas conda-forge libcblas 3.8.0 16_openblas conda-forge libcurl 7.69.1 hc0b9707_0 conda-forge libcxx 10.0.1 h5f48129_0 conda-forge libedit 3.1.20191231 hed1e85f_0 conda-forge libevent 2.1.10 hafa8578_0 conda-forge libffi 3.2.1 h4a8c4bd_1007 conda-forge libgfortran 4.0.0 3 conda-forge libgfortran4 7.5.0 h1565451_3 conda-forge libiconv 1.15 h0b31af3_1006 conda-forge liblapack 3.8.0 16_openblas conda-forge libllvm9 9.0.1 h7475705_1 conda-forge libnetcdf 4.7.4 nompi_ha11d67f_104 conda-forge libopenblas 0.3.9 h3d69b6c_0 conda-forge libpng 1.6.37 hbbe82c9_1 conda-forge libpq 12.2 h489d428_1 conda-forge libprotobuf 3.11.4 hd174df1_0 conda-forge libsodium 1.0.17 h01d97ff_0 conda-forge libssh2 1.8.2 hcdc9a53_2 conda-forge libtiff 4.1.0 h2ae36a8_6 conda-forge libwebp-base 1.1.0 h0b31af3_3 conda-forge libxcb 1.13 h1de35cc_1002 conda-forge libxml2 2.9.10 h53d96d6_0 conda-forge libxslt 1.1.33 h320ff13_0 conda-forge llvm-openmp 10.0.1 h28b9765_0 conda-forge lxml 4.5.1 py37heb1707f_0 conda-forge lz4-c 1.9.2 h4a8c4bd_0 conda-forge m2r 0.2.1 py_0 conda-forge m2r2 0.2.5 pyh9f0ad1d_0 conda-forge m2rr 0.2.3 pypi_0 pypi markupsafe 1.1.1 py37h9bfed18_1 conda-forge matplotlib 3.2.1 0 conda-forge matplotlib-base 3.2.1 py37hddda452_0 conda-forge mdanalysis 0.20.1 py37h4a8c4bd_0 conda-forge mengine 1 h1de35cc_1 schrodinger mistune 0.8.4 py37h9bfed18_1001 conda-forge mmpbsa-py 16.0 pypi_0 pypi mmtf-python 1.1.2 py_0 conda-forge more-itertools 8.2.0 py_0 conda-forge mpeg_encode 1 h1de35cc_1 schrodinger msgpack-python 1.0.0 py37ha1cc60f_1 conda-forge mtz2ccp4_px 1.0 hdc02c5d_3 schrodinger mypy_extensions 0.4.3 py37hc8dfbb8_1 conda-forge nbconvert 5.6.1 py37hc8dfbb8_1 conda-forge nbformat 5.0.6 py_0 conda-forge nbsphinx 0.7.0 pyh9f0ad1d_0 conda-forge ncurses 6.1 h0a44026_1002 conda-forge netcdf-fortran 4.5.3 nompi_hcfc364a_100 conda-forge netcdf4 1.5.4 nompi_py37h08081e3_102 conda-forge networkx 2.4 py_1 conda-forge nglview 2.7.5 pyh5ca1d4c_0 conda-forge notebook 6.0.3 py37_0 conda-forge nspr 4.20 h0a44026_1000 conda-forge nss 3.47 hc0980d9_0 conda-forge numpy 1.18.1 py37h7687784_1 conda-forge numpydoc 0.9.2 py_0 conda-forge olefile 0.46 py_0 conda-forge openbabel 3.1.1 py37h311da6c_0 conda-forge openeye-toolkits 2019.10.2 py37_0 openeye openff 0+untagged.4.g3680de3 dev_0Additional context I found this problem in the course of looking into hard-to-parameterize molecules detected in https://github.com/openforcefield/openforcefields/pull/27