openff-toolkit icon indicating copy to clipboard operation
openff-toolkit copied to clipboard

Failing to assign AM1 charges with ambertools on macOS-13

Open lilyminium opened this issue 1 year ago • 2 comments
trafficstars

Issue

I'm seeing a weird issue in NAGL CI where I can't seem to assign AM1 charges to methane using AmberTools on macOS-13. This test passes with macOS-latest and a related test passed with macOS-12 before I updated the CI matrix. It might be a good idea to test across a wider matrix of Mac versions.

I haven't tried with other charge methods like am1bcc as I uncovered this from a failing NAGL test.

Maybe related to #1911?

To Reproduce

The test I'm running at the moment is:

@pytest.mark.skipif(not sum([OPENEYE_AVAILABLE, AMBERTOOLS_AVAILABLE]), reason="requires a charge toolkit")
def test_can_charge_methane():
    # verify we can assign AM1 charges to methane
    # See https://github.com/openforcefield/openff-nagl/issues/152 for more

    mol = Molecule.from_smiles("C")
    mol.assign_partial_charges("am1-mulliken")

Output

E       ValueError: No registered toolkits can provide the capability "assign_partial_charges" for args "()" and kwargs "{'molecule': Molecule with name '' and SMILES '[H][C]([H])([H])[H]', 'partial_charge_method': 'am1-mulliken', 'use_conformers': None, 'strict_n_conformers': False, 'normalize_partial_charges': True, '_cls': <class 'openff.toolkit.topology.molecule.Molecule'>}"
E       Available toolkits are: [ToolkitWrapper around The RDKit version 2024.03.5, ToolkitWrapper around AmberTools version 23.6, ToolkitWrapper around Built-in Toolkit version None]
E        ToolkitWrapper around The RDKit version 2024.03.5 <class 'openff.toolkit.utils.exceptions.ChargeMethodUnavailableError'> : partial_charge_method 'am1-mulliken' is not available from RDKitToolkitWrapper. Available charge methods are {'mmff94': {}, 'gasteiger': {}}
E        ToolkitWrapper around AmberTools version 23.6 <class 'subprocess.CalledProcessError'> : Command '['antechamber', '-i', 'molecule.sdf', '-fi', 'sdf', '-o', 'charged.mol2', '-fo', 'mol2', '-pf', 'yes', '-dr', 'n', '-c', 'mul', '-nc', '0.0']' returned non-zero exit status 1.
E        ToolkitWrapper around Built-in Toolkit version None <class 'openff.toolkit.utils.exceptions.ChargeMethodUnavailableError'> : Partial charge method "am1-mulliken"" is not supported by the Built-in toolkit. Available charge methods are {'zeros': {'rec_confs': 0, 'min_confs': 0, 'max_confs': 0}, 'formal_charge': {'rec_confs': 0, 'min_confs': 0, 'max_confs': 0}}
../../../micromamba/envs/openff-nagl-test/lib/python3.10/site-packages/openff/toolkit/utils/toolkit_registry.py:280: ValueError

Computing environment (please complete the following information):

  • Operating system: macOS-13
  • Output of running conda list

Notable packages:

  • ambertools 23.6 (passes in macOS-latest)
  • RDKit 2024.03.5 (I put in the !=2024.03.6 pin I found in the toolkit in case it was that; if of interest, a related test did fail with 2024.03.6 as well)
  • openff-toolkit-base 0.16.5

Full:


micromamba list
  /Users/runner/micromamba-bin/micromamba list -r /Users/runner/micromamba -n openff-nagl-test
  List of packages in environment: "/Users/runner/micromamba/envs/openff-nagl-test"
  
    Name                       Version       Build                              Channel    
  ───────────────────────────────────────────────────────────────────────────────────────────
    ambertools                 23.6          cuda_None_nompi_py310h496d21a_105  conda-forge
    arpack                     3.9.1         nompi_hf81eadf_101                 conda-forge
    blosc                      1.21.6        h7d75f6d_0                         conda-forge
    brotli                     1.1.0         h00291cd_2                         conda-forge
    brotli-bin                 1.1.0         h00291cd_2                         conda-forge
    brotli-python              1.1.0         py310h53e7c6a_2                    conda-forge
    bson                       0.5.9         py_0                               conda-forge
    bzip2                      1.0.8         hfdf4475_7                         conda-forge
    c-ares                     1.34.2        h32b1619_0                         conda-forge
    ca-certificates            2024.8.30     h8857fd0_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_0                       conda-forge
    cairo                      1.18.0        h37bd5c4_3                         conda-forge
    certifi                    2024.8.30     pyhd8ed1ab_0                       conda-forge
    cffi                       1.17.1        py310hfce808e_0                    conda-forge
    chardet                    5.2.0         py310h2ec42d9_2                    conda-forge
    charset-normalizer         3.4.0         pyhd8ed1ab_0                       conda-forge
    click                      8.1.7         unix_pyh707e725_0                  conda-forge
    click-option-group         0.5.6         pyhd8ed1ab_0                       conda-forge
    cloudpickle                3.1.0         pyhd8ed1ab_1                       conda-forge
    codecov                    2.1.13        pyhd8ed1ab_0                       conda-forge
    colorama                   0.4.6         pyhd8ed1ab_0                       conda-forge
    contourpy                  1.3.0         py310hfa8da69_2                    conda-forge
    coverage                   7.6.3         py310h72eadd2_1                    conda-forge
    cpython                    3.10.15       py310hd8ed1ab_2                    conda-forge
    cycler                     0.12.1        pyhd8ed1ab_0                       conda-forge
    cytoolz                    1.0.0         py310h837254d_1                    conda-forge
    dask-core                  2024.10.0     pyhd8ed1ab_0                       conda-forge
    dask-jobqueue              0.9.0         pyhd8ed1ab_0                       conda-forge
    distributed                2024.10.0     pyhd8ed1ab_0                       conda-forge
    exceptiongroup             1.2.2         pyhd8ed1ab_0                       conda-forge
    execnet                    2.1.1         pyhd8ed1ab_0                       conda-forge
    expat                      2.6.3         hac325c4_0                         conda-forge
    fftw                       3.3.10        nompi_h292e606_110                 conda-forge
    filelock                   3.16.1        pyhd8ed1ab_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          h77eed37_3                         conda-forge
    fontconfig                 2.14.2        h5bb23bf_0                         conda-forge
    fonts-conda-ecosystem      1             0                                  conda-forge
    fonts-conda-forge          1             0                                  conda-forge
    fonttools                  4.54.1        py310h837254d_0                    conda-forge
    freetype                   2.12.1        h60636b9_2                         conda-forge
    freetype-py                2.3.0         pyhd8ed1ab_0                       conda-forge
    fsspec                     2024.9.0      pyhff2d567_0                       conda-forge
    gmp                        6.3.0         hf036a51_2                         conda-forge
    gmpy2                      2.1.5         py310hade44e5_2                    conda-forge
    greenlet                   3.1.1         py310h53e7c6a_0                    conda-forge
    h2                         4.1.0         pyhd8ed1ab_0                       conda-forge
    hdf4                       4.2.15        h8138101_7                         conda-forge
    hdf5                       1.14.4        nompi_h57e3b00_101                 conda-forge
    hpack                      4.0.0         pyh9f0ad1d_0                       conda-forge
    hyperframe                 6.0.1         pyhd8ed1ab_0                       conda-forge
    icu                        75.1          h120a0e1_0                         conda-forge
    idna                       3.10          pyhd8ed1ab_0                       conda-forge
    importlib-metadata         8.5.0         pyha770c72_0                       conda-forge
    importlib_metadata         8.5.0         hd8ed1ab_0                         conda-forge
    importlib_resources        6.4.5         pyhd8ed1ab_0                       conda-forge
    iniconfig                  2.0.0         pyhd8ed1ab_0                       conda-forge
    jinja2                     3.1.4         pyhd8ed1ab_0                       conda-forge
    joblib                     1.4.2         pyhd8ed1ab_0                       conda-forge
    kiwisolver                 1.4.7         py310hfa8da69_0                    conda-forge
    krb5                       1.21.3        h37d8d59_0                         conda-forge
    lcms2                      2.16          ha2f27b4_0                         conda-forge
    lerc                       4.0.0         hb486fe8_0                         conda-forge
    libabseil                  20240722.0    cxx17_hac325c4_1                   conda-forge
    libaec                     1.1.3         h73e2aa4_0                         conda-forge
    libblas                    3.9.0         22_osx64_openblas                  conda-forge
    libboost                   1.84.0        hbe88bda_6                         conda-forge
    libboost-python            1.84.0        py310h767a3e0_6                    conda-forge
    libbrotlicommon            1.1.0         h00291cd_2                         conda-forge
    libbrotlidec               1.1.0         h00291cd_2                         conda-forge
    libbrotlienc               1.1.0         h00291cd_2                         conda-forge
    libcblas                   3.9.0         22_osx64_openblas                  conda-forge
    libcurl                    8.10.1        h58e7537_0                         conda-forge
    libcxx                     19.1.2        hf95d169_0                         conda-forge
    libdeflate                 1.22          h00291cd_0                         conda-forge
    libedit                    3.1.20191231  h0678c8f_2                         conda-forge
    libev                      4.33          h10d778d_2                         conda-forge
    libexpat                   2.6.3         hac325c4_0                         conda-forge
    libffi                     3.4.2         h0d85af4_5                         conda-forge
    libgfortran                5.0.0         13_2_0_h97931a8_3                  conda-forge
    libgfortran5               13.2.0        h2873a65_3                         conda-forge
    libglib                    2.82.2        hb6ef654_0                         conda-forge
    libhwloc                   2.11.1        default_h456cccd_1000              conda-forge
    libiconv                   1.17          hd75f5a5_2                         conda-forge
    libintl                    0.22.5        hdfe23c8_3                         conda-forge
    libjpeg-turbo              3.0.0         h0dc2134_1                         conda-forge
    liblapack                  3.9.0         22_osx64_openblas                  conda-forge
    libnetcdf                  4.9.2         nompi_h976d569_115                 conda-forge
    libnghttp2                 1.58.0        h64cf6d3_1                         conda-forge
    libopenblas                0.3.27        openmp_h8869122_1                  conda-forge
    libpng                     1.6.44        h4b8f8c9_0                         conda-forge
    libpq                      16.4          h365486b_3                         conda-forge
    libprotobuf                5.27.5        h62b0dff_2                         conda-forge
    librdkit                   2024.03.5     hbc19afa_3                         conda-forge
    libsqlite                  3.46.1        h4b8f8c9_0                         conda-forge
    libssh2                    1.11.0        hd019ec5_0                         conda-forge
    libtiff                    4.7.0         h583c2ba_1                         conda-forge
    libtorch                   2.4.1         cpu_mkl_hdb27336_102               conda-forge
    libuv                      1.49.2        hd79239c_0                         conda-forge
    libwebp-base               1.4.0         h10d778d_0                         conda-forge
    libxcb                     1.17.0        hf1f96e2_0                         conda-forge
    libxml2                    2.12.7        heaf3512_4                         conda-forge
    libzip                     1.11.1        h3116616_0                         conda-forge
    libzlib                    1.3.1         hd23fc13_2                         conda-forge
    lightning-utilities        0.11.8        pyhd8ed1ab_0                       conda-forge
    llvm-openmp                19.1.2        hf78d878_0                         conda-forge
    locket                     1.0.0         pyhd8ed1ab_0                       conda-forge
    lz4-c                      1.9.4         hf0c8a7f_0                         conda-forge
    markupsafe                 3.0.2         py310h72eadd2_0                    conda-forge
    matplotlib-base            3.9.2         py310h449bdf7_1                    conda-forge
    mkl                        2023.2.0      h54c2260_50500                     conda-forge
    mpc                        1.3.1         h9d8efa1_1                         conda-forge
    mpfr                       4.2.1         haed47dc_3                         conda-forge
    mpmath                     1.3.0         pyhd8ed1ab_0                       conda-forge
    msgpack-python             1.1.0         py310hfa8da69_0                    conda-forge
    munkres                    1.1.4         pyh9f0ad1d_0                       conda-forge
    ncurses                    6.5           hf036a51_1                         conda-forge
    netcdf-fortran             4.6.1         nompi_h4dd9276_107                 conda-forge
    networkx                   3.4.1         pyhd8ed1ab_0                       conda-forge
    numpy                      1.26.4        py310h4bfa8fc_0                    conda-forge
    openff-amber-ff-ports      0.0.4         pyhca7485f_0                       conda-forge
    openff-forcefields         2024.09.0     pyhff2d567_0                       conda-forge
    openff-interchange-base    0.3.29        pyhd8ed1ab_0                       conda-forge
    openff-models              0.1.2         pyhca7485f_0                       conda-forge
    openff-recharge            0.5.2         pyhd8ed1ab_0                       conda-forge
    openff-toolkit-base        0.16.5        pyhd8ed1ab_0                       conda-forge
    openff-units               0.2.2         pyhca7485f_0                       conda-forge
    openff-utilities           0.1.12        pyhd8ed1ab_0                       conda-forge
    openjpeg                   2.5.2         h7310d3a_0                         conda-forge
    openssl                    3.3.2         hd23fc13_0                         conda-forge
    packaging                  24.1          pyhd8ed1ab_0                       conda-forge
    pandas                     2.2.3         py310ha53a654_1                    conda-forge
    parmed                     4.2.2         py310had63691_1                    conda-forge
    partd                      1.4.2         pyhd8ed1ab_0                       conda-forge
    pcre2                      10.44         h7634a1b_2                         conda-forge
    perl                       5.32.1        7_h10d778d_perl5                   conda-forge
    pillow                     11.0.0        py310h32d1d24_0                    conda-forge
    pint                       0.23          pyhd8ed1ab_1                       conda-forge
    pip                        24.2          pyh8b19718_1                       conda-forge
    pixman                     0.43.4        h73e2aa4_0                         conda-forge
    pluggy                     1.5.0         pyhd8ed1ab_0                       conda-forge
    psutil                     6.0.0         py310hb9d19b6_2                    conda-forge
    pthread-stubs              0.4           h00291cd_1002                      conda-forge
    pycairo                    1.27.0        py310h4d6710c_0                    conda-forge
    pycparser                  2.22          pyhd8ed1ab_0                       conda-forge
    pydantic                   1.10.17       py310h936d840_0                    conda-forge
    pyparsing                  3.2.0         pyhd8ed1ab_1                       conda-forge
    pysocks                    1.7.1         pyha2e5f31_6                       conda-forge
    pytest                     8.3.3         pyhd8ed1ab_0                       conda-forge
    pytest-cov                 5.0.0         pyhd8ed1ab_0                       conda-forge
    pytest-xdist               3.6.1         pyhd8ed1ab_0                       conda-forge
    python                     3.10.15       hd8744da_2_cpython                 conda-forge
    python-constraint          1.4.0         py_0                               conda-forge
    python-dateutil            2.9.0         pyhd8ed1ab_0                       conda-forge
    python-tzdata              2024.2        pyhd8ed1ab_0                       conda-forge
    python_abi                 3.10          5_cp310                            conda-forge
    pytorch                    2.4.1         cpu_mkl_py310h9941b98_102          conda-forge
    pytorch-lightning          2.4.0         pyhd8ed1ab_0                       conda-forge
    pytz                       2024.1        pyhd8ed1ab_0                       conda-forge
    pyyaml                     6.0.2         py310h837254d_1                    conda-forge
    qhull                      2020.2        h3c5361c_5                         conda-forge
    rdkit                      2024.03.5     py310h926f623_3                    conda-forge
    readline                   8.2           h9e318b2_1                         conda-forge
    reportlab                  4.2.5         py310h837254d_0                    conda-forge
    requests                   2.32.3        pyhd8ed1ab_0                       conda-forge
    rlpycairo                  0.2.0         pyhd8ed1ab_0                       conda-forge
    scipy                      1.14.1        py310h9ad1863_1                    conda-forge
    setuptools                 75.1.0        pyhd8ed1ab_0                       conda-forge
    six                        1.16.0        pyh6c4a22f_0                       conda-forge
    sleef                      3.7           h01aa1be_0                         conda-forge
    smirnoff99frosst           1.1.0         pyh44b312d_0                       conda-forge
    snappy                     1.2.1         he1e6707_0                         conda-forge
    sortedcontainers           2.4.0         pyhd8ed1ab_0                       conda-forge
    sqlalchemy                 2.0.36        py310hb9d19b6_0                    conda-forge
    sqlite                     3.46.1        he26b093_0                         conda-forge
    sympy                      1.13.3        pyh2585a3b_104                     conda-forge
    tbb                        2021.13.0     h37c8870_0                         conda-forge
    tblib                      3.0.0         pyhd8ed1ab_0                       conda-forge
    tk                         8.6.13        h1abcd95_1                         conda-forge
    toml                       0.10.2        pyhd8ed1ab_0                       conda-forge
    tomli                      2.0.2         pyhd8ed1ab_0                       conda-forge
    toolz                      1.0.0         pyhd8ed1ab_0                       conda-forge
    torchmetrics               1.4.2         pyhd8ed1ab_0                       conda-forge
    tornado                    6.4.1         py310h837254d_1                    conda-forge
    tqdm                       4.66.5        pyhd8ed1ab_0                       conda-forge
    typing-extensions          4.12.2        hd8ed1ab_0                         conda-forge
    typing_extensions          4.12.2        pyha770c72_0                       conda-forge
    tzdata                     2024b         hc8b5060_0                         conda-forge
    unicodedata2               15.1.0        py310h6729b98_0                    conda-forge
    urllib3                    2.2.3         pyhd8ed1ab_0                       conda-forge
    wheel                      0.44.0        pyhd8ed1ab_0                       conda-forge
    xmltodict                  0.14.2        pyhd8ed1ab_0                       conda-forge
    xorg-libice                1.1.1         h00291cd_1                         conda-forge
    xorg-libsm                 1.2.4         h00291cd_1                         conda-forge
    xorg-libx11                1.8.10        ha6c16c8_0                         conda-forge
    xorg-libxau                1.0.11        h00291cd_1                         conda-forge
    xorg-libxdmcp              1.1.5         h00291cd_0                         conda-forge
    xorg-libxext               1.3.6         h00291cd_0                         conda-forge
    xorg-libxt                 1.3.0         h00291cd_2                         conda-forge
    xorg-xorgproto             2024.1        h00291cd_1                         conda-forge
    xz                         5.2.6         h775f41a_0                         conda-forge
    yaml                       0.2.5         h0d85af4_2                         conda-forge
    zict                       3.0.0         pyhd8ed1ab_0                       conda-forge
    zipp                       3.20.2        pyhd8ed1ab_0                       conda-forge
    zlib                       1.3.1         hd23fc13_2                         conda-forge
    zstandard                  0.23.0        py310h41d873f_1                    conda-forge

Additional context

lilyminium avatar Oct 21 '24 12:10 lilyminium

Parent issue (I think) https://github.com/conda-forge/ambertools-feedstock/issues/140

j-wags avatar Nov 15 '24 16:11 j-wags

Is this going to get fixed? Perhaps we should just drop support for versions older than 15

mattwthompson avatar Feb 07 '25 17:02 mattwthompson