diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6644066..f77e213 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,6 +34,11 @@ jobs: runs-on: ubuntu-latest pytest: "-k 'examples or (121-nwchem_psi4 and 4b)'" + - label: QCSk-next + python-version: "3.12" + runs-on: ubuntu-latest + pytest: "-k '((not (he4 and (3b or 4b) and not sio)) or supersys) and not vmfc'" + name: "🐍 ${{ matrix.cfg.python-version }} • ${{ matrix.cfg.label }} • ${{ matrix.cfg.runs-on }}" runs-on: ${{ matrix.cfg.runs-on }} @@ -78,6 +83,10 @@ jobs: sed -i "s;#- dummy1;- psi4=1.9.1;g" export.yaml sed -i "s;#- dummy2;- nwchem;g" export.yaml fi + if [[ "${{ matrix.cfg.label }}" == "QCSk-next" ]]; then + sed -i "s;pydantic;pydantic=2;g" export.yaml + sed -i "s;#- dummy1;- psi4=1.9.1;g" export.yaml + fi # model sed for L/W # sed -i "s;;;g" export.yaml # model sed for M @@ -107,6 +116,13 @@ jobs: run: | conda remove qcengine --force + - name: Special Config - QCSchema Next Deps + if: "(startsWith(matrix.cfg.label, 'QCSk-next'))" + run: | + conda remove qcelemental qcengine --force + python -m pip install 'git+https://github.com/MolSSI/QCElemental.git@next2025' --no-deps + python -m pip install 'git+https://github.com/MolSSI/QCEngine.git@master' --no-deps + - name: Environment Information run: | conda info @@ -191,7 +207,8 @@ jobs: auto-activate-base: false show-channel-urls: true add-pip-as-python-dependency: true - channels: conda-forge,nodefaults + channels: conda-forge + conda-remove-defaults: true - name: Environment Information run: | diff --git a/CITATION.cff b/CITATION.cff index 5ab0123..302bd60 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -14,17 +14,17 @@ authors: Chemistry Department, King Fahd University of Petroleum and Minerals orcid: 'https://orcid.org/0000-0002-0871-664X' - - given-names: Lori A + - given-names: "Lori A." family-names: Burns affiliation: >- - Center for Computational Molecular Science and + Center for Computational Molecular Science and Technology, Georgia Institute of Technology orcid: 'https://orcid.org/0000-0003-2852-5864' - - given-names: Benjamin P. + - given-names: "Benjamin P." family-names: Pritchard affiliation: The Molecular Sciences Software Institute orcid: 'https://orcid.org/0000-0003-2136-0606' - - given-names: Daniel G. A. + - given-names: "Daniel G. A." family-names: Smith affiliation: The Molecular Sciences Software Institute orcid: 'https://orcid.org/0000-0001-8626-0900' @@ -32,6 +32,9 @@ identifiers: - type: url value: 'https://github.com/MolSSI/QCManyBody' description: Software Repository + - type: doi + value: 10.1063/5.0231843 + description: JCP article repository-code: 'https://github.com/MolSSI/QCManyBody' url: 'https://molssi.github.io/QCManyBody/' repository-artifact: 'https://anaconda.org/conda-forge/qcmanybody/files' @@ -41,5 +44,25 @@ keywords: - mbe - schema license: BSD-3-Clause -version: 0.3.0 -date-released: '2024-07-21' +version: 0.4.0 +date-released: '2025-01-16' +preferred-citation: + type: article + authors: + - family-names: "Lori A." + given-names: "Burns" + orcid: "https://orcid.org/0000-0003-2852-5864" + - family-names: "C. David" + given-names: "Sherrill" + orcid: "https://orcid.org/0000-0002-5570-7666" + - family-names: "Benjamin P." + given-names: "Pritchard" + orcid: "https://orcid.org/0000-0003-2136-0606" + doi: "10.1063/5.0231843" + journal: "The Journal of Chemical Physics" + month: 10 + start: 152501 + title: "QCManyBody: A flexible implementation of the many-body expansion" + issue: 15 + volume: 161 + year: 2024 diff --git a/README.md b/README.md index 6808c77..cf81205 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,14 @@ Full documentation is available at [https://molssi.github.io/QCManyBody/](https: * Benjamin P. Pritchard, [@bennybp](https://github.com/bennybp), core interface and QCArchive integration * Daniel G. A. Smith, [@dgasmith](https://github.com/dgasmith), original Psi4 implementations of nocp, cp, and vmfc single-level e/g/H and distributed driver integration +## Citation [![doi](https://img.shields.io/badge/doi-10.1063/5.0231843-5077AB.svg)](https://doi.org/10.1063/5.0231843) + +The journal article reference describing QCManyBody is: + +L. A. Burns, C. D. Sherrill, B. P. Pritchard, +"QCManyBody: A Flexible Implementation of the Many-Body Expansion", +J. Chem. Phys. 161(15) 152501 (2024). + ## Demonstration An example of the core and high-level interfaces can be found in [test_examples](qcmanybody/tests/test_examples.py) with diff --git a/docs/changelog.md b/docs/changelog.md index 2fbb80e..0c3394d 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,7 +1,7 @@ # Changelog -## v0.4.0 / 2024-MM-DD (Unreleased) +## v0.4.0 / 2025-01-16 #### Breaking Changes * [\#36](https://github.com/MolSSI/QCManyBody/pull/36) Feature -- as the embedded point charges aren't fully validated @@ -35,11 +35,7 @@ #### Bug Fixes #### Misc. - -#### MUST (Unmerged) - -#### WIP (Unmerged) - + * Maint -- pinned to QCElemental <0.70 to use only QCSchema v1. ## v0.3.0 / 2024-07-21 diff --git a/pyproject.toml b/pyproject.toml index 9b19f87..897569d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,7 +23,7 @@ classifiers = [ dependencies = [ "numpy", "pydantic", - "qcelemental", + "qcelemental>=0.28.0,<0.70.0", ] [project.optional-dependencies] diff --git a/qcmanybody/computer.py b/qcmanybody/computer.py index 9600b6c..b6e91eb 100644 --- a/qcmanybody/computer.py +++ b/qcmanybody/computer.py @@ -47,6 +47,7 @@ def plan(self): pass # TODO can remove? + # # v2: model_config = ConfigDict( # v2: extra="allow", # v2: frozen=False,