openforcefield / openff-bespokefit

Automated tools for the generation of bespoke SMIRNOFF format parameters for individual molecules.
https://docs.openforcefield.org/bespokefit
MIT License
61 stars 9 forks source link

Error with linear angle during QC generation within a torsion drive #294

Open eva-not opened 1 year ago

eva-not commented 1 year ago

Hi, I am trying to get bespoke torsions for the molecule CNC(=O)[C@H](CCC\C=C/CCC[C@H](NC(C)=O)C(=O)NC)NC(C)=O. However, the QC generation step exits with the following message:

3. running the fitting pipeline

[✓] fragmentation successful
[x] qc-generation failed

 [null, null, null, null, null, {"type": "ValueError", "message": "TorsionDrive error at -135:\ngeomeTRIC run_json error:\nTraceback (most recent
 call last):\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/run_json.py\", line 269, in
 geometric_run_json\n    geometric.optimize.Optimize(coords, M, IC, engine, dirname, params, print_info = (ic==0))\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 779, in Optimize\n    return
 optimizer.optimizeGeometry()\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 697, in
 optimizeGeometry\n    self.calcEnergyForce()\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 278, in calcEnergyForce\n
 self.checkStructure()\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 730, in
 checkStructure\n    raise LinearTorsionError(\"A constrained torsion has three consecutive atoms\\n\"\ngeometric.errors.LinearTorsionError: A
 constrained torsion has three consecutive atoms\nforming a nearly linear angle, making the torsion angle poorly defined.\n> Atoms Angle\n> 8-10-12
 179.90\n\n", "traceback": "Traceback (most recent call last):\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/celery/app/trace.py\", line 477, in trace_task\n    R = retval = fun(*args,
 **kwargs)\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/celery/app/trace.py\", line 760, in __protected_call__\n
 return self.run(*args, **kwargs)\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/openff/bespokefit/executor/services/qcgenerator/worker.py\", line 150, in
 compute_torsion_drive\n    return_value = qcengine.compute_procedure(\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/qcengine/compute.py\", line 178, in compute_procedure\n    return
 handle_output_metadata(output_data, metadata, raise_error=raise_error, return_dict=return_dict)\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/qcengine/util.py\", line 183, in handle_output_metadata\n    raise
 ValueError(output_fusion[\"error\"][\"error_message\"])\nValueError: TorsionDrive error at -135:\ngeomeTRIC run_json error:\nTraceback (most
 recent call last):\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/run_json.py\", line 269, in
 geometric_run_json\n    geometric.optimize.Optimize(coords, M, IC, engine, dirname, params, print_info = (ic==0))\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 779, in Optimize\n    return
 optimizer.optimizeGeometry()\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 697, in
 optimizeGeometry\n    self.calcEnergyForce()\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 278, in calcEnergyForce\n
 self.checkStructure()\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 730, in
 checkStructure\n    raise LinearTorsionError(\"A constrained torsion has three consecutive atoms\\n\"\ngeometric.errors.LinearTorsionError: A
 constrained torsion has three consecutive atoms\nforming a nearly linear angle, making the torsion angle poorly defined.\n> Atoms Angle\n> 8-10-12
 179.90\n\n\n"}, null, null, null]

Is there a way to see which atoms these are and which fragment is causing the error? I suspect it's atoms around the C=C double bond, since I ran bespokefit on the same molecule with a single bond instead CNC([C@@H](NC(C)=O)CCCCCCCC[C@@H](C(NC)=O)NC(C)=O)=O and the calculations finished fine (I got a .offxml file).

I also tested bespokefit on a smaller molecule with a C=C double bond O=C(O)/C=C/C(O)=O and I got a similar error:

3. running the fitting pipeline

[✓] fragmentation successful
[x] qc-generation failed

 [{"type": "ValueError", "message": "TorsionDrive error at -75:\ngeomeTRIC run_json error:\nTraceback (most recent call last):\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/run_json.py\", line 269, in geometric_run_json\n
 geometric.optimize.Optimize(coords, M, IC, engine, dirname, params, print_info = (ic==0))\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 779, in Optimize\n    return
 optimizer.optimizeGeometry()\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 697, in
 optimizeGeometry\n    self.calcEnergyForce()\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 278, in calcEnergyForce\n
 self.checkStructure()\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 730, in
 checkStructure\n    raise LinearTorsionError(\"A constrained torsion has three consecutive atoms\\n\"\ngeometric.errors.LinearTorsionError: A
 constrained torsion has three consecutive atoms\nforming a nearly linear angle, making the torsion angle poorly defined.\n> Atoms Angle\n> 5-7-9
 179.94\n\n", "traceback": "Traceback (most recent call last):\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/celery/app/trace.py\", line 477, in trace_task\n    R = retval = fun(*args,
 **kwargs)\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/celery/app/trace.py\", line 760, in __protected_call__\n
 return self.run(*args, **kwargs)\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/openff/bespokefit/executor/services/qcgenerator/worker.py\", line 150, in
 compute_torsion_drive\n    return_value = qcengine.compute_procedure(\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/qcengine/compute.py\", line 178, in compute_procedure\n    return
 handle_output_metadata(output_data, metadata, raise_error=raise_error, return_dict=return_dict)\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/qcengine/util.py\", line 183, in handle_output_metadata\n    raise
 ValueError(output_fusion[\"error\"][\"error_message\"])\nValueError: TorsionDrive error at -75:\ngeomeTRIC run_json error:\nTraceback (most recent
 call last):\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/run_json.py\", line 269, in
 geometric_run_json\n    geometric.optimize.Optimize(coords, M, IC, engine, dirname, params, print_info = (ic==0))\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 779, in Optimize\n    return
 optimizer.optimizeGeometry()\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 697, in
 optimizeGeometry\n    self.calcEnergyForce()\n  File
 \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 278, in calcEnergyForce\n
 self.checkStructure()\n  File \"/home/eva/anaconda3/envs/bespokefit-env/lib/python3.9/site-packages/geometric/optimize.py\", line 730, in
 checkStructure\n    raise LinearTorsionError(\"A constrained torsion has three consecutive atoms\\n\"\ngeometric.errors.LinearTorsionError: A
 constrained torsion has three consecutive atoms\nforming a nearly linear angle, making the torsion angle poorly defined.\n> Atoms Angle\n> 5-7-9
 179.94\n\n\n"}, null]

Bespokefit is ran via the CLI:

BEFLOW_OPTIMIZER_KEEP_FILES=True openff-bespoke executor run --smiles "CNC(=O)[C@H](CCC\C=C/CCC[C@H](NC(C)=O)C(=O)NC)NC(C)=O" --workflow-file "factory.json" --output-force-field "ff.offxml" --n-fragmenter-workers 6 --n-qc-compute-workers 12 --qc-compute-n-cores 4 --n-optimizer-workers 6 --directory ./fitting

The workflow file is: factory.json

Any help with this would be greatly appreciated!

Software versions

Output of conda list

# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
amberlite                 16.0                     pypi_0    pypi
ambertools                20.9                     pypi_0    pypi
ambit                     0.6              py39h53dec33_2    psi4
amqp                      5.1.1              pyhd8ed1ab_0    conda-forge
anyio                     3.7.1              pyhd8ed1ab_0    conda-forge
argcomplete               3.1.2              pyhd8ed1ab_0    conda-forge
argon2-cffi               23.1.0             pyhd8ed1ab_0    conda-forge
argon2-cffi-bindings      21.2.0           py39hd1e30aa_4    conda-forge
arpack                    3.7.0                hc6cf775_2    conda-forge
arrow                     1.3.0              pyhd8ed1ab_0    conda-forge
asttokens                 2.4.0              pyhd8ed1ab_0    conda-forge
astunparse                1.6.3              pyhd8ed1ab_0    conda-forge
async-lru                 2.0.4              pyhd8ed1ab_0    conda-forge
async-timeout             4.0.3              pyhd8ed1ab_0    conda-forge
attrs                     23.1.0             pyh71513ae_1    conda-forge
aws-c-auth                0.7.4                hc8144f4_1    conda-forge
aws-c-cal                 0.6.2                h09139f6_2    conda-forge
aws-c-common              0.9.3                hd590300_0    conda-forge
aws-c-compression         0.2.17               h184a658_3    conda-forge
aws-c-event-stream        0.3.2                hd6ebb48_1    conda-forge
aws-c-http                0.7.13               hc690213_1    conda-forge
aws-c-io                  0.13.32              h63140e9_5    conda-forge
aws-c-mqtt                0.9.6                h32970c0_2    conda-forge
aws-c-s3                  0.3.17               hb5e3142_3    conda-forge
aws-c-sdkutils            0.1.12               h184a658_2    conda-forge
aws-checksums             0.1.17               h184a658_2    conda-forge
aws-crt-cpp               0.23.1               h94c364a_5    conda-forge
aws-sdk-cpp               1.11.156             h6600424_3    conda-forge
babel                     2.12.1             pyhd8ed1ab_1    conda-forge
backcall                  0.2.0              pyh9f0ad1d_0    conda-forge
backports                 1.0                pyhd8ed1ab_3    conda-forge
backports.functools_lru_cache 1.6.5              pyhd8ed1ab_0    conda-forge
backports.zoneinfo        0.2.1            py39hf3d152e_8    conda-forge
basis_set_exchange        0.9.1              pyhd8ed1ab_0    conda-forge
beautifulsoup4            4.12.2             pyha770c72_0    conda-forge
billiard                  4.1.0            py39hd1e30aa_1    conda-forge
blas                      1.0                         mkl    conda-forge
bleach                    6.0.0              pyhd8ed1ab_0    conda-forge
blosc                     1.21.5               h0f2a231_0    conda-forge
boltons                   23.0.0             pyhd8ed1ab_0    conda-forge
boost                     1.74.0           py39h5472131_5    conda-forge
boost-cpp                 1.74.0               h75c5d50_8    conda-forge
brotli                    1.1.0                hd590300_1    conda-forge
brotli-bin                1.1.0                hd590300_1    conda-forge
brotli-python             1.1.0            py39h3d6467e_1    conda-forge
bzip2                     1.0.8                h7f98852_4    conda-forge
c-ares                    1.19.1               hd590300_0    conda-forge
ca-certificates           2023.7.22            hbcca054_0    conda-forge
cached-property           1.5.2                hd8ed1ab_1    conda-forge
cached_property           1.5.2              pyha770c72_1    conda-forge
cachetools                5.3.1              pyhd8ed1ab_0    conda-forge
cairo                     1.16.0            ha61ee94_1014    conda-forge
celery                    5.3.4              pyhd8ed1ab_1    conda-forge
certifi                   2023.7.22          pyhd8ed1ab_0    conda-forge
cffi                      1.16.0           py39h7a31438_0    conda-forge
charset-normalizer        3.3.0              pyhd8ed1ab_0    conda-forge
chemper                   1.0.1              pyhd8ed1ab_0    conda-forge
chemps2                   1.8.11               hbe8a562_0    psi4
click                     8.1.7           unix_pyh707e725_0    conda-forge
click-didyoumean          0.3.0              pyhd8ed1ab_0    conda-forge
click-option-group        0.5.6              pyhd8ed1ab_0    conda-forge
click-plugins             1.1.1                      py_0    conda-forge
click-repl                0.3.0              pyhd8ed1ab_0    conda-forge
colorama                  0.4.6              pyhd8ed1ab_0    conda-forge
comm                      0.1.4              pyhd8ed1ab_0    conda-forge
conda                     23.7.4           py39hf3d152e_0    conda-forge
conda-package-handling    2.2.0              pyh38be061_0    conda-forge
conda-package-streaming   0.9.0              pyhd8ed1ab_0    conda-forge
contourpy                 1.1.1            py39h7633fee_1    conda-forge
cryptography              41.0.4           py39hd4f0224_0    conda-forge
cuda-cudart               12.0.107             h59595ed_6    conda-forge
cuda-cudart_linux-64      12.0.107             h59595ed_6    conda-forge
cuda-nvrtc                12.0.76              h59595ed_1    conda-forge
cuda-version              12.0                 hffde075_2    conda-forge
curl                      8.3.0                hca28451_0    conda-forge
cycler                    0.12.0             pyhd8ed1ab_0    conda-forge
cython                    3.0.3            py39h3d6467e_0    conda-forge
debugpy                   1.8.0            py39h3d6467e_1    conda-forge
decorator                 5.1.1              pyhd8ed1ab_0    conda-forge
defusedxml                0.7.1              pyhd8ed1ab_0    conda-forge
dftd3                     3.2.1                h84218bc_2    psi4
dkh                       1.2                  h173d85e_2    psi4
entrypoints               0.4                pyhd8ed1ab_0    conda-forge
exceptiongroup            1.1.3              pyhd8ed1ab_0    conda-forge
executing                 1.2.0              pyhd8ed1ab_0    conda-forge
expat                     2.5.0                hcb278e6_1    conda-forge
fastapi                   0.86.0             pyhd8ed1ab_0    conda-forge
fftw                      3.3.8           nompi_hfc0cae8_1114    conda-forge
fmt                       10.1.1               h00ab1b0_0    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                 hab24e00_0    conda-forge
fontconfig                2.14.2               h14ed4e7_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
fonttools                 4.43.1           py39hd1e30aa_0    conda-forge
forcebalance              1.9.5            py39h0354152_0    conda-forge
fqdn                      1.5.1              pyhd8ed1ab_0    conda-forge
freetype                  2.12.1               h267a509_2    conda-forge
freetype-py               2.3.0              pyhd8ed1ab_0    conda-forge
future                    0.18.3             pyhd8ed1ab_0    conda-forge
gau2grid                  2.0.7                hd18ef5c_0    psi4
gcp                       2.0.2                he991be0_2    psi4
gdma                      2.2.6                h0e1e685_6    psi4
geometric                 1.0                pyhd8ed1ab_1    conda-forge
gettext                   0.21.1               h27087fc_0    conda-forge
gflags                    2.2.2             he1b5a44_1004    conda-forge
glog                      0.6.0                h6f12383_0    conda-forge
greenlet                  3.0.0            py39h3d6467e_1    conda-forge
h11                       0.14.0             pyhd8ed1ab_0    conda-forge
h2                        4.1.0              pyhd8ed1ab_0    conda-forge
h5py                      3.7.0            py39h737f45e_0
hdf4                      4.2.15               h9772cbc_5    conda-forge
hdf5                      1.10.6          nompi_h3c11f04_101    conda-forge
hpack                     4.0.0              pyh9f0ad1d_0    conda-forge
httpcore                  0.18.0             pyhd8ed1ab_0    conda-forge
httpx                     0.25.0             pyhd8ed1ab_0    conda-forge
hyperframe                6.0.1              pyhd8ed1ab_0    conda-forge
icu                       70.1                 h27087fc_0    conda-forge
idna                      3.4                pyhd8ed1ab_0    conda-forge
importlib-metadata        6.8.0              pyha770c72_0    conda-forge
importlib-resources       6.1.0              pyhd8ed1ab_0    conda-forge
importlib_metadata        6.8.0                hd8ed1ab_0    conda-forge
importlib_resources       6.1.0              pyhd8ed1ab_0    conda-forge
iniconfig                 2.0.0              pyhd8ed1ab_0    conda-forge
intel-openmp              2021.4.0          h06a4308_3561
ipykernel                 6.25.2             pyh2140261_0    conda-forge
ipython                   8.16.1             pyh0d859eb_0    conda-forge
ipython_genutils          0.2.0                      py_1    conda-forge
ipywidgets                7.8.0              pyhd8ed1ab_0    conda-forge
isoduration               20.11.0            pyhd8ed1ab_0    conda-forge
jedi                      0.19.1             pyhd8ed1ab_0    conda-forge
jinja2                    3.1.2              pyhd8ed1ab_1    conda-forge
jpeg                      9e                   h0b41bf4_3    conda-forge
json5                     0.9.14             pyhd8ed1ab_0    conda-forge
jsonpatch                 1.33               pyhd8ed1ab_0    conda-forge
jsonpointer               2.4              py39hf3d152e_3    conda-forge
jsonschema                4.19.1             pyhd8ed1ab_0    conda-forge
jsonschema-specifications 2023.7.1           pyhd8ed1ab_0    conda-forge
jsonschema-with-format-nongpl 4.19.1             pyhd8ed1ab_0    conda-forge
jupyter-lsp               2.2.0              pyhd8ed1ab_0    conda-forge
jupyter_client            8.3.1              pyhd8ed1ab_0    conda-forge
jupyter_core              5.3.2            py39hf3d152e_0    conda-forge
jupyter_events            0.7.0              pyhd8ed1ab_2    conda-forge
jupyter_server            2.7.3              pyhd8ed1ab_1    conda-forge
jupyter_server_terminals  0.4.4              pyhd8ed1ab_1    conda-forge
jupyterlab                4.0.6              pyhd8ed1ab_0    conda-forge
jupyterlab_pygments       0.2.2              pyhd8ed1ab_0    conda-forge
jupyterlab_server         2.25.0             pyhd8ed1ab_0    conda-forge
jupyterlab_widgets        1.1.7              pyhd8ed1ab_0    conda-forge
keyutils                  1.6.1                h166bdaf_0    conda-forge
kiwisolver                1.4.5            py39h7633fee_1    conda-forge
kombu                     5.3.2            py39hf3d152e_1    conda-forge
krb5                      1.21.2               h659d440_0    conda-forge
lcms2                     2.15                 hfd0df8a_0    conda-forge
ld_impl_linux-64          2.40                 h41732ed_0    conda-forge
lerc                      4.0.0                h27087fc_0    conda-forge
libabseil                 20230802.1      cxx17_h59595ed_0    conda-forge
libarchive                3.6.2                h3d51595_0    conda-forge
libarrow                  13.0.0           hc3189b8_6_cpu    conda-forge
libblas                   3.9.0            12_linux64_mkl    conda-forge
libbrotlicommon           1.1.0                hd590300_1    conda-forge
libbrotlidec              1.1.0                hd590300_1    conda-forge
libbrotlienc              1.1.0                hd590300_1    conda-forge
libcblas                  3.9.0            12_linux64_mkl    conda-forge
libcrc32c                 1.1.2                h9c3ff4c_0    conda-forge
libcufft                  11.0.0.21            hcb278e6_1    conda-forge
libcurl                   8.3.0                hca28451_0    conda-forge
libdeflate                1.17                 h0b41bf4_0    conda-forge
libecpint                 1.0.7                hfebba4c_0    psi4
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libev                     4.33                 h516909a_1    conda-forge
libevent                  2.1.12               hf998b51_1    conda-forge
libexpat                  2.5.0                hcb278e6_1    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-ng                 13.2.0               h807b86a_2    conda-forge
libgfortran-ng            7.5.0               h14aa051_20    conda-forge
libgfortran4              7.5.0               h14aa051_20    conda-forge
libglib                   2.78.0               hebfc3b9_0    conda-forge
libgomp                   13.2.0               h807b86a_2    conda-forge
libgoogle-cloud           2.12.0               h8d7e28b_2    conda-forge
libgrpc                   1.57.0               ha4d0f93_1    conda-forge
libiconv                  1.17                 h166bdaf_0    conda-forge
libint2                   2.7.1               h2fe1556_15    psi4
liblapack                 3.9.0            12_linux64_mkl    conda-forge
libmamba                  1.5.1                h744094f_0    conda-forge
libmambapy                1.5.1            py39h10defb6_0    conda-forge
libnetcdf                 4.7.4           nompi_h56d31a8_107    conda-forge
libnghttp2                1.52.0               h61bc06f_0    conda-forge
libnsl                    2.0.0                hd590300_1    conda-forge
libnuma                   2.0.16               h0b41bf4_1    conda-forge
libpng                    1.6.39               h753d276_0    conda-forge
libprotobuf               4.23.4               hf27288f_6    conda-forge
libsodium                 1.0.18               h36c2ea0_1    conda-forge
libsolv                   0.7.25               hfc55251_0    conda-forge
libsqlite                 3.43.0               h2797004_0    conda-forge
libssh2                   1.11.0               h0841786_0    conda-forge
libstdcxx-ng              13.2.0               h7e041cc_2    conda-forge
libthrift                 0.19.0               hb90f79a_1    conda-forge
libtiff                   4.5.0                h6adf6a1_2    conda-forge
libutf8proc               2.8.0                h166bdaf_0    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libwebp-base              1.3.2                hd590300_0    conda-forge
libxc                     5.2.3                hfebba4c_0    psi4
libxcb                    1.13              h7f98852_1004    conda-forge
libxml2                   2.10.3               hca2bb57_4    conda-forge
libxslt                   1.1.37               h873f0b0_0    conda-forge
libzlib                   1.2.13               hd590300_5    conda-forge
lxml                      4.9.2            py39h14694de_0    conda-forge
lz4-c                     1.9.4                hcb278e6_0    conda-forge
lzo                       2.10              h516909a_1000    conda-forge
mamba                     1.5.1            py39hc5d2bb1_0    conda-forge
markdown-it-py            3.0.0              pyhd8ed1ab_0    conda-forge
markupsafe                2.1.3            py39hd1e30aa_1    conda-forge
matplotlib-base           3.8.0            py39he9076e7_1    conda-forge
matplotlib-inline         0.1.6              pyhd8ed1ab_0    conda-forge
mda-xdrlib                0.2.0              pyhd8ed1ab_0    conda-forge
mdtraj                    1.9.9            py39h031bd0f_0    conda-forge
mdurl                     0.1.0              pyhd8ed1ab_0    conda-forge
mistune                   3.0.1              pyhd8ed1ab_0    conda-forge
mkl                       2021.4.0           h06a4308_640
mkl-service               2.4.0            py39h7e14d7c_0    conda-forge
mmpbsa-py                 16.0                     pypi_0    pypi
mock                      5.1.0              pyhd8ed1ab_0    conda-forge
msgpack-python            1.0.6            py39h7633fee_0    conda-forge
munkres                   1.1.4              pyh9f0ad1d_0    conda-forge
nbclient                  0.8.0              pyhd8ed1ab_0    conda-forge
nbconvert-core            7.9.2              pyhd8ed1ab_0    conda-forge
nbformat                  5.9.2              pyhd8ed1ab_0    conda-forge
ncurses                   6.4                  hcb278e6_0    conda-forge
nest-asyncio              1.5.6              pyhd8ed1ab_0    conda-forge
netcdf-fortran            4.5.3           nompi_hfef6a68_101    conda-forge
networkx                  3.1                pyhd8ed1ab_0    conda-forge
nglview                   3.0.8              pyh1da8cd4_0    conda-forge
notebook                  7.0.4              pyhd8ed1ab_0    conda-forge
notebook-shim             0.2.3              pyhd8ed1ab_0    conda-forge
numexpr                   2.7.3            py39hde0f152_1    conda-forge
numpy                     1.25.2           py39h6183b62_0    conda-forge
ocl-icd                   2.3.1                h7f98852_0    conda-forge
ocl-icd-system            1.0.0                         1    conda-forge
openff-amber-ff-ports     0.0.3              pyh6c4a22f_0    conda-forge
openff-bespokefit         0.2.2              pyhd8ed1ab_5    conda-forge
openff-forcefields        2023.08.0          pyh1a96a4e_0    conda-forge
openff-fragmenter-base    0.2.0              pyhd8ed1ab_0    conda-forge
openff-interchange        0.3.1              pyhd8ed1ab_1    conda-forge
openff-interchange-base   0.3.1              pyhd8ed1ab_1    conda-forge
openff-models             0.1.0              pyh1a96a4e_1    conda-forge
openff-qcsubmit           0.5.0              pyhd8ed1ab_0    conda-forge
openff-toolkit            0.12.1             pyhd8ed1ab_0    conda-forge
openff-toolkit-base       0.12.1             pyhd8ed1ab_0    conda-forge
openff-units              0.2.1              pyh1a96a4e_0    conda-forge
openff-utilities          0.1.10             pyhd8ed1ab_0    conda-forge
openjpeg                  2.5.0                hfec8fc6_2    conda-forge
openmm                    8.0.0            py39h5d72b6b_3    conda-forge
openssl                   3.1.3                hd590300_0    conda-forge
optking                   0.2.1              pyhbc12335_1    psi4
orc                       1.9.0                h52d3b3c_2    conda-forge
overrides                 7.4.0              pyhd8ed1ab_0    conda-forge
packaging                 23.2               pyhd8ed1ab_0    conda-forge
packmol-memgen            1.1.0rc0                 pypi_0    pypi
pandas                    1.4.4            py39h1832856_0    conda-forge
pandocfilters             1.5.0              pyhd8ed1ab_0    conda-forge
panedr                    0.7.2              pyhd8ed1ab_0    conda-forge
parmed                    at20RC5+54.g5702a232fe.dirty          pypi_0    pypi
parso                     0.8.3              pyhd8ed1ab_0    conda-forge
pbr                       5.11.1             pyhd8ed1ab_0    conda-forge
pcmsolver                 1.2.1.1          py39h92d4acf_3    psi4
pcre2                     10.40                hc3806b6_0    conda-forge
pdb4amber                 1.7.dev0                 pypi_0    pypi
perl                      5.32.1          4_hd590300_perl5    conda-forge
pexpect                   4.8.0              pyh1a96a4e_2    conda-forge
pickleshare               0.7.5                   py_1003    conda-forge
pillow                    9.4.0            py39h2320bf1_1    conda-forge
pint                      0.21               pyhd8ed1ab_0    conda-forge
pip                       23.2.1             pyhd8ed1ab_0    conda-forge
pixman                    0.42.2               h59595ed_0    conda-forge
pkgutil-resolve-name      1.3.10             pyhd8ed1ab_1    conda-forge
platformdirs              3.11.0             pyhd8ed1ab_0    conda-forge
plotly                    5.17.0             pyhd8ed1ab_0    conda-forge
pluggy                    1.3.0              pyhd8ed1ab_0    conda-forge
prometheus_client         0.17.1             pyhd8ed1ab_0    conda-forge
prompt-toolkit            3.0.39             pyha770c72_0    conda-forge
prompt_toolkit            3.0.39               hd8ed1ab_0    conda-forge
psi4                      1.7+6ce35a5      py39hb8090b1_1    psi4
psutil                    5.9.5            py39hd1e30aa_1    conda-forge
pthread-stubs             0.4               h36c2ea0_1001    conda-forge
ptyprocess                0.7.0              pyhd3deb0d_0    conda-forge
pure_eval                 0.2.2              pyhd8ed1ab_0    conda-forge
py-cpuinfo                9.0.0              pyhd8ed1ab_0    conda-forge
pyarrow                   13.0.0          py39h6925388_6_cpu    conda-forge
pybind11-abi              4                    hd8ed1ab_3    conda-forge
pycairo                   1.25.0           py39hc92de75_1    conda-forge
pycosat                   0.6.6            py39hd1e30aa_0    conda-forge
pycparser                 2.21               pyhd8ed1ab_0    conda-forge
pydantic                  1.10.13          py39hd1e30aa_0    conda-forge
pyedr                     0.7.2              pyhd8ed1ab_0    conda-forge
pygments                  2.16.1             pyhd8ed1ab_0    conda-forge
pymbar                    3.1.1            py39h2ae25f5_2    conda-forge
pyopenssl                 23.2.0             pyhd8ed1ab_1    conda-forge
pyparsing                 3.1.1              pyhd8ed1ab_0    conda-forge
pysocks                   1.7.1              pyha2e5f31_6    conda-forge
pytables                  3.6.1            py39hf6dc253_3    conda-forge
pytest                    7.4.2              pyhd8ed1ab_0    conda-forge
python                    3.9.18          h0755675_0_cpython    conda-forge
python-constraint         1.4.0                      py_0    conda-forge
python-dateutil           2.8.2              pyhd8ed1ab_0    conda-forge
python-fastjsonschema     2.18.1             pyhd8ed1ab_0    conda-forge
python-json-logger        2.0.7              pyhd8ed1ab_0    conda-forge
python-tzdata             2023.3             pyhd8ed1ab_0    conda-forge
python_abi                3.9                      4_cp39    conda-forge
pytraj                    2.0.5                    pypi_0    pypi
pytz                      2023.3.post1       pyhd8ed1ab_0    conda-forge
pyyaml                    6.0.1            py39hd1e30aa_1    conda-forge
pyzmq                     25.1.1           py39hb257651_1    conda-forge
qcelemental               0.25.1             pyhd8ed1ab_1    psi4
qcengine                  0.26.0             pyhd8ed1ab_0    psi4
qcportal                  0.15.8             pyhd8ed1ab_1    conda-forge
rdkit                     2022.09.1        py39h79face8_0    conda-forge
rdma-core                 28.9                 h59595ed_1    conda-forge
re2                       2023.03.02           h8c504da_0    conda-forge
readline                  8.2                  h8228510_1    conda-forge
redis-py                  5.0.1              pyhd8ed1ab_0    conda-forge
redis-server              7.2.1                h06160fa_0    conda-forge
referencing               0.30.2             pyhd8ed1ab_0    conda-forge
regex                     2023.10.3        py39hd1e30aa_0    conda-forge
reportlab                 4.0.4            py39hd1e30aa_0    conda-forge
reproc                    14.2.4.post0         hd590300_0    conda-forge
reproc-cpp                14.2.4.post0         h59595ed_0    conda-forge
requests                  2.31.0             pyhd8ed1ab_0    conda-forge
rfc3339-validator         0.1.4              pyhd8ed1ab_0    conda-forge
rfc3986-validator         0.1.1              pyh9f0ad1d_0    conda-forge
rich                      13.6.0             pyhd8ed1ab_0    conda-forge
rlpycairo                 0.2.0              pyhd8ed1ab_0    conda-forge
rpds-py                   0.10.4           py39h9fdd4d6_0    conda-forge
ruamel.yaml               0.17.35          py39hd1e30aa_0    conda-forge
ruamel.yaml.clib          0.2.7            py39hd1e30aa_2    conda-forge
s2n                       1.3.52               h06160fa_0    conda-forge
sander                    16.0                     pypi_0    pypi
scipy                     1.5.3            py39hf3f25e7_0    conda-forge
send2trash                1.8.2              pyh41d4057_0    conda-forge
setuptools                68.2.2             pyhd8ed1ab_0    conda-forge
simint                    0.7                  h642920c_1    psi4
six                       1.16.0             pyh6c4a22f_0    conda-forge
smirnoff99frosst          1.1.0              pyh44b312d_0    conda-forge
snappy                    1.1.10               h9fff704_0    conda-forge
sniffio                   1.3.0              pyhd8ed1ab_0    conda-forge
soupsieve                 2.5                pyhd8ed1ab_1    conda-forge
sqlalchemy                2.0.21           py39hd1e30aa_1    conda-forge
stack_data                0.6.2              pyhd8ed1ab_0    conda-forge
starlette                 0.20.4             pyhd8ed1ab_1    conda-forge
tenacity                  8.2.3              pyhd8ed1ab_0    conda-forge
terminado                 0.17.1             pyh41d4057_0    conda-forge
tinycss2                  1.2.1              pyhd8ed1ab_0    conda-forge
tk                        8.6.13               h2797004_0    conda-forge
tomli                     2.0.1              pyhd8ed1ab_0    conda-forge
toolz                     0.12.0             pyhd8ed1ab_0    conda-forge
tornado                   6.3.3            py39hd1e30aa_1    conda-forge
torsiondrive              1.1.0              pyhd8ed1ab_0    conda-forge
tqdm                      4.66.1             pyhd8ed1ab_0    conda-forge
traitlets                 5.11.2             pyhd8ed1ab_0    conda-forge
types-python-dateutil     2.8.19.14          pyhd8ed1ab_0    conda-forge
typing-extensions         4.8.0                hd8ed1ab_0    conda-forge
typing_extensions         4.8.0              pyha770c72_0    conda-forge
typing_utils              0.1.0              pyhd8ed1ab_0    conda-forge
tzdata                    2023c                h71feb2d_0    conda-forge
ucx                       1.15.0               h195a15c_0    conda-forge
unicodedata2              15.1.0           py39hd1e30aa_0    conda-forge
unidecode                 1.3.7              pyhd8ed1ab_0    conda-forge
uri-template              1.3.0              pyhd8ed1ab_0    conda-forge
urllib3                   2.0.6              pyhd8ed1ab_0    conda-forge
uvicorn                   0.23.2           py39hf3d152e_1    conda-forge
vine                      5.0.0              pyhd8ed1ab_1    conda-forge
wcwidth                   0.2.8              pyhd8ed1ab_0    conda-forge
webcolors                 1.13               pyhd8ed1ab_0    conda-forge
webencodings              0.5.1              pyhd8ed1ab_2    conda-forge
websocket-client          1.6.3              pyhd8ed1ab_0    conda-forge
wheel                     0.41.2             pyhd8ed1ab_0    conda-forge
widgetsnbextension        3.6.6              pyhd8ed1ab_0    conda-forge
xmltodict                 0.13.0             pyhd8ed1ab_0    conda-forge
xorg-kbproto              1.0.7             h7f98852_1002    conda-forge
xorg-libice               1.0.10               h7f98852_0    conda-forge
xorg-libsm                1.2.3             hd9c2040_1000    conda-forge
xorg-libx11               1.8.4                h0b41bf4_0    conda-forge
xorg-libxau               1.0.11               hd590300_0    conda-forge
xorg-libxdmcp             1.1.3                h7f98852_0    conda-forge
xorg-libxext              1.3.4                h0b41bf4_2    conda-forge
xorg-libxrender           0.9.10            h7f98852_1003    conda-forge
xorg-libxt                1.3.0                hd590300_0    conda-forge
xorg-renderproto          0.11.1            h7f98852_1002    conda-forge
xorg-xextproto            7.3.0             h0b41bf4_1003    conda-forge
xorg-xproto               7.0.31            h7f98852_1007    conda-forge
xz                        5.2.6                h166bdaf_0    conda-forge
yaml                      0.2.5                h7f98852_2    conda-forge
yaml-cpp                  0.7.0                h59595ed_3    conda-forge
zeromq                    4.3.4                h9c3ff4c_1    conda-forge
zipp                      3.17.0             pyhd8ed1ab_0    conda-forge
zlib                      1.2.13               hd590300_5    conda-forge
zstandard                 0.21.0           py39h6e5214e_1    conda-forge
zstd                      1.5.5                hfc55251_0    conda-forge

mattwthompson commented 11 months ago

Hi, sorry for the delay. This looks pretty tricky - thanks for all the info, it really helps track stuff down.

My first idea is to capture errors in the function call to QCEngine and re-raise the error with extra info about the fragment. That wouldn't fix it, but it would provide more information about the specific fragment that's causing the failure. Since geomeTRIC is already providing a decent amount of information about the failure, I don't think it's reasonable to ask it to provide more info ("and here is the mapped SMILES of the full molecule:" etc.)

A more robust solution would probably be https://github.com/openforcefield/openff-bespokefit/issues/295; I figure you shouldn't normally have linear triplets around a double bond, so this is just a funky chemistry forced by driving the torsion, so skipping that one particular structure is justified.

We recently released a new version (0.2.3) with a couple of improvements related to torsion drives (parallelization #277 and re-starting failed jobs #279) but if I understand the issue correctly, neither of these really address the root cause. It still might be worth a shot.

eva-not commented 10 months ago

Hi, thank you very much for the reply. Unfortunately I can't skip this particular structure as it's one of the few I would like to optimise. I will probably have to resort to manual torsion scans.