From 8c7a9bc99506090210273c56021ccbd3da9fec6b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 16 Aug 2024 21:49:20 -0700 Subject: [PATCH 01/79] Bump boto3 from 1.34.160 to 1.34.162 (#323) Bumps [boto3](https://github.com/boto/boto3) from 1.34.160 to 1.34.162. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.34.160...1.34.162) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index dc4dbb09..04030937 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.8.2 torchdata==0.8.0 -boto3==1.34.160 +boto3==1.34.162 numpy==1.26.4 sympy==1.13.2 From 38159eb0a0f79dd7e547701924463810a9a16bb4 Mon Sep 17 00:00:00 2001 From: "Andrew S. Rosen" Date: Sat, 17 Aug 2024 11:40:16 -0400 Subject: [PATCH 02/79] Create py.typed (#324) * Create py.typed As recommended in [pep 0561](https://peps.python.org/pep-0561/), a blank `py.typed` marker should be included when type hints are used so downstream codes can type check with `mypy` and similar tools. Signed-off-by: Andrew S. Rosen * Update pyproject.toml Signed-off-by: Andrew S. Rosen --------- Signed-off-by: Andrew S. Rosen --- pyproject.toml | 1 + src/matgl/py.typed | 1 + 2 files changed, 2 insertions(+) create mode 100644 src/matgl/py.typed diff --git a/pyproject.toml b/pyproject.toml index 73c38354..6d40b501 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -71,6 +71,7 @@ mgl = "matgl.cli:main" where = ["src"] [tool.setuptools.package-data] +matgl = ["py.typed"] "matgl.utils" = ["sb_roots.npy"] diff --git a/src/matgl/py.typed b/src/matgl/py.typed new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/src/matgl/py.typed @@ -0,0 +1 @@ + From fd9dd065a94b5154f666654284b158419a323bfb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 Aug 2024 20:03:52 -0700 Subject: [PATCH 03/79] Bump boto3 from 1.34.162 to 1.35.0 (#325) Bumps [boto3](https://github.com/boto/boto3) from 1.34.162 to 1.35.0. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.34.162...1.35.0) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 04030937..a4a138e1 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.8.2 torchdata==0.8.0 -boto3==1.34.162 +boto3==1.35.0 numpy==1.26.4 sympy==1.13.2 From c2d69b00a00588a8cb3d5a72438470606e34ea0e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 09:46:09 -0700 Subject: [PATCH 04/79] Bump boto3 from 1.35.0 to 1.35.1 (#327) Bumps [boto3](https://github.com/boto/boto3) from 1.35.0 to 1.35.1. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.0...1.35.1) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index a4a138e1..afb0af7a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.8.2 torchdata==0.8.0 -boto3==1.35.0 +boto3==1.35.1 numpy==1.26.4 sympy==1.13.2 From c6088ce2c9065e4469b4f4d7bb706eb2048c3730 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 13:17:49 -0700 Subject: [PATCH 05/79] Bump dgl from 2.1.0 to 2.2.1 (#302) Bumps [dgl](https://github.com/dmlc/dgl) from 2.1.0 to 2.2.1. - [Release notes](https://github.com/dmlc/dgl/releases) - [Changelog](https://github.com/dmlc/dgl/blob/master/NEWS.md) - [Commits](https://github.com/dmlc/dgl/compare/v2.1.0...v2.2.1) --- updated-dependencies: - dependency-name: dgl dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong --- pyproject.toml | 2 +- requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 6d40b501..0bfde7e0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -50,7 +50,7 @@ classifiers = [ ] dependencies = [ "ase", - "dgl<=2.1.0", + "dgl<=2.2.1", "pymatgen", "lightning<=2.4.0", "torch<=2.2.1", diff --git a/requirements.txt b/requirements.txt index afb0af7a..f772959f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -dgl==2.1.0 +dgl==2.2.1 torch==2.4.0 lightning==2.4.0 pymatgen==2024.8.9 From 469648016558b2a1239564800d348d0197ba696b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 11:33:19 -0700 Subject: [PATCH 06/79] Bump boto3 from 1.35.1 to 1.35.3 (#329) Bumps [boto3](https://github.com/boto/boto3) from 1.35.1 to 1.35.3. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.1...1.35.3) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index f772959f..8dd3c870 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.8.2 torchdata==0.8.0 -boto3==1.35.1 +boto3==1.35.3 numpy==1.26.4 sympy==1.13.2 From 634d4b8b21b3f5663d458d43ff259a278877c8f8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 14:04:28 -0700 Subject: [PATCH 07/79] Bump rexml from 3.3.3 to 3.3.6 in /docs (#330) Bumps [rexml](https://github.com/ruby/rexml) from 3.3.3 to 3.3.6. - [Release notes](https://github.com/ruby/rexml/releases) - [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md) - [Commits](https://github.com/ruby/rexml/compare/v3.3.3...v3.3.6) --- updated-dependencies: - dependency-name: rexml dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock index b65d6021..436a4008 100644 --- a/docs/Gemfile.lock +++ b/docs/Gemfile.lock @@ -224,7 +224,7 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - rexml (3.3.3) + rexml (3.3.6) strscan rouge (3.26.0) ruby2_keywords (0.0.5) From bf4e18850637dc00f0d4b031682dcb01c268ff1e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Aug 2024 21:12:21 -0700 Subject: [PATCH 08/79] Bump boto3 from 1.35.3 to 1.35.4 (#331) Bumps [boto3](https://github.com/boto/boto3) from 1.35.3 to 1.35.4. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.3...1.35.4) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 8dd3c870..9896f09d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.8.2 torchdata==0.8.0 -boto3==1.35.3 +boto3==1.35.4 numpy==1.26.4 sympy==1.13.2 From 37dcefce4c91f51be8c6f9b83812f963230d671a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 13:15:58 -0700 Subject: [PATCH 09/79] Bump boto3 from 1.35.4 to 1.35.6 (#333) Bumps [boto3](https://github.com/boto/boto3) from 1.35.4 to 1.35.6. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.4...1.35.6) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 9896f09d..a3e707c9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.8.2 torchdata==0.8.0 -boto3==1.35.4 +boto3==1.35.6 numpy==1.26.4 sympy==1.13.2 From 15e8a9fe59a800525f7b991bbdf1d2c05f909185 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 30 Aug 2024 09:13:01 -0700 Subject: [PATCH 10/79] Bump boto3 from 1.35.6 to 1.35.9 (#337) Bumps [boto3](https://github.com/boto/boto3) from 1.35.6 to 1.35.9. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.6...1.35.9) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index a3e707c9..f7880f7a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.8.2 torchdata==0.8.0 -boto3==1.35.6 +boto3==1.35.9 numpy==1.26.4 sympy==1.13.2 From 402fe1484f419370f1b815754582e96fa4b76474 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Sep 2024 10:20:23 -0700 Subject: [PATCH 11/79] Bump boto3 from 1.35.9 to 1.35.10 (#338) Bumps [boto3](https://github.com/boto/boto3) from 1.35.9 to 1.35.10. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.9...1.35.10) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index f7880f7a..4d7b143d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.8.2 torchdata==0.8.0 -boto3==1.35.9 +boto3==1.35.10 numpy==1.26.4 sympy==1.13.2 From 5c027946927f5111b03cf9451ad052c1ca1df4ba Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Wed, 4 Sep 2024 11:40:47 -0700 Subject: [PATCH 12/79] Update README.md for including CHGNet (#341) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- README.md | 19 +++++++++++++++++++ docs/index.md | 1 + 2 files changed, 20 insertions(+) diff --git a/README.md b/README.md index 4a012972..dfc2a308 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,7 @@ Nassar, Carmelo Gonzales). Major milestones are summarized below. Please refer to the [changelog] for details. +- v1.1.0 (May 7 2024): Implementation of [CHGNet] + pre-trained models. - v1.0.0 (Feb 14 2024): Implementation of [TensorNet] and [SO3Net]. - v0.5.1 (Jun 9 2023): Model versioning implemented. - v0.5.0 (Jun 8 2023): Simplified saving and loading of models. Now models can be loaded with one line of code! @@ -87,6 +88,8 @@ We have implemented other models in matgl as well. A non-exhaustive list is give - [TensorNet], an O(3)-equivariant message-passing neural network architecture that leverages Cartesian tensor representations. - [SO3Net], a minimalist SO(3)-equivariant neural network. +- [CHGNet], an invariant message-passing neural network architecture that can predict + PES properties and magmoms. ## Installation @@ -226,6 +229,21 @@ information. If you are using any of the pretrained models, please cite the rele > Chen, C., Ong, S.P. *A universal graph deep learning interatomic potential for the periodic table.* Nature > Computational Science, 2023, 2, 718–728. DOI: [10.1038/s43588-022-00349-3][m3gnet]. +>**CHGNet** +> +> Deng, B., Zhong, P., Jun, K. et al. *CHGNet: as a pretrained universal neural network potential for charge-informed atomistic modelling.* +> Nat Mach Intell 5, 1031–1041 (2023). DOI:[10.1038/s42256-023-00716-3][chgnet] + +>**TensorNet** +> +> Simeon, G. De Fabritiis, G. *Tensornet: Cartesian tensor representations for efficient learning of molecular potentials.* +> Adv. Neural Info. Process. Syst. 36, (2024). DOI: [10.48550/arXiv.2306.06482][tensornet] + +>**SO3Net** +> +> Schütt, K. T., Hessmann, S. S. P., Gebauer, N. W. A., Lederer, J., Gastegger, M. *SchNetPack 2.0: A neural network toolbox for atomistic machine learning.* +> J. Chem. Phys. 158, 144801 (2023). DOI: [10.1063/5.0138367][so3net] + ## FAQs 1. **The `M3GNet-MP-2021.2.8-PES` differs from the original TensorFlow (TF) implementation!** @@ -296,3 +314,4 @@ ACI-1548562. [tutorials]: https://matgl.ai/tutorials "Tutorials" [tensornet]: https://arxiv.org/abs/2306.06482 "TensorNet" [so3net]: https://pubs.aip.org/aip/jcp/article-abstract/158/14/144801/2877924/SchNetPack-2-0-A-neural-network-toolbox-for "SO3Net" +[chgnet]: https://www.nature.com/articles/s42256-023-00716-3 "CHGNet" diff --git a/docs/index.md b/docs/index.md index 06a0d566..d72c5aeb 100644 --- a/docs/index.md +++ b/docs/index.md @@ -304,3 +304,4 @@ ACI-1548562. [tutorials]: https://matgl.ai/tutorials "Tutorials" [tensornet]: https://arxiv.org/abs/2306.06482 "TensorNet" [so3net]: https://pubs.aip.org/aip/jcp/article-abstract/158/14/144801/2877924/SchNetPack-2-0-A-neural-network-toolbox-for "SO3Net" +[chgnet]: https://www.nature.com/articles/s42256-023-00716-3 "CHGNet" From ffeba21f1c8a1812572b428de73c2e771ccc9dea Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Wed, 4 Sep 2024 16:25:39 -0700 Subject: [PATCH 13/79] Adding more descriptions for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb (#342) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- ...ations using the M3GNet Universal Potential.ipynb | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/examples/Relaxations and Simulations using the M3GNet Universal Potential.ipynb b/examples/Relaxations and Simulations using the M3GNet Universal Potential.ipynb index fbb49856..4d67babb 100644 --- a/examples/Relaxations and Simulations using the M3GNet Universal Potential.ipynb +++ b/examples/Relaxations and Simulations using the M3GNet Universal Potential.ipynb @@ -7,7 +7,7 @@ "source": [ "# Introduction\n", "\n", - "This notebook demonstrates the use of the pre-trained M3GNet model to perform structural relaxations, molecular dynamics simulations and single-point calculations.\n", + "This notebook demonstrates the use of the pre-trained universal potentials to perform structural relaxations, molecular dynamics simulations and single-point calculations.\n", "\n", "Author: Tsz Wai Ko (Kenko)\n", "Email: t1ko@ucsd.edu" @@ -42,7 +42,7 @@ "source": [ "# Loading the pre-trained M3GNet PES model\n", "\n", - "We will first load the M3GNet PES model, which is trained on the MP-2021.2.8 dataset. This can be done with a single line of code." + "We will first load the M3GNet PES model, which is trained on the MP-2021.2.8 dataset. This can be done with a single line of code. Here we only use M3GNet for demonstration and users can choose other available models." ] }, { @@ -52,7 +52,9 @@ "metadata": {}, "outputs": [], "source": [ - "pot = matgl.load_model(\"M3GNet-MP-2021.2.8-PES\")" + "# You can load any pretrained potentials such as CHGNet ('CHGNet-MPtrj-2023.12.1-PES-2.7M', 'CHGNet-MPtrj-2024.2.13-PES-11M')\n", + "# To see availabe models, use get_available_pretrained_models()\n", + "pot = matgl.load_model(\"M3GNet-MP-2021.2.8-PES\") " ] }, { @@ -120,7 +122,7 @@ "source": [ "# Single point energy calculation\n", "\n", - "Perform a single-point calculation for final structure using M3GNetCalculator." + "Perform a single-point calculation for final structure using PESCalculator." ] }, { @@ -154,7 +156,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.14" + "version": "3.10.9" } }, "nbformat": 4, From 86ba27521aced7f751543164962c02d7c7027e00 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Sep 2024 13:36:15 -0700 Subject: [PATCH 14/79] Bump boto3 from 1.35.10 to 1.35.12 (#344) Bumps [boto3](https://github.com/boto/boto3) from 1.35.10 to 1.35.12. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.10...1.35.12) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 4d7b143d..5e8f8c64 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.8.2 torchdata==0.8.0 -boto3==1.35.10 +boto3==1.35.12 numpy==1.26.4 sympy==1.13.2 From c00902bf6c709cd88f5d379d5c6c2e0a622bde1e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Sep 2024 09:11:24 -0700 Subject: [PATCH 15/79] Bump pydantic from 2.8.2 to 2.9.0 (#346) Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.8.2 to 2.9.0. - [Release notes](https://github.com/pydantic/pydantic/releases) - [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md) - [Commits](https://github.com/pydantic/pydantic/compare/v2.8.2...v2.9.0) --- updated-dependencies: - dependency-name: pydantic dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 5e8f8c64..18cdf110 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,7 +3,7 @@ torch==2.4.0 lightning==2.4.0 pymatgen==2024.8.9 ase==3.23.0 -pydantic==2.8.2 +pydantic==2.9.0 torchdata==0.8.0 boto3==1.35.12 numpy==1.26.4 From 0e41820d65021efecf833501f4175207f6fc2d50 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Sep 2024 11:55:07 -0700 Subject: [PATCH 16/79] Bump boto3 from 1.35.12 to 1.35.13 (#345) Bumps [boto3](https://github.com/boto/boto3) from 1.35.12 to 1.35.13. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.12...1.35.13) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 18cdf110..d0c8f3e0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.9.0 torchdata==0.8.0 -boto3==1.35.12 +boto3==1.35.13 numpy==1.26.4 sympy==1.13.2 From 19fb21646155363064ae53adcf4b2ed3f67e1a27 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Sep 2024 08:51:15 -0700 Subject: [PATCH 17/79] Bump pydantic from 2.9.0 to 2.9.1 (#348) Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.9.0 to 2.9.1. - [Release notes](https://github.com/pydantic/pydantic/releases) - [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md) - [Commits](https://github.com/pydantic/pydantic/compare/v2.9.0...v2.9.1) --- updated-dependencies: - dependency-name: pydantic dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index d0c8f3e0..62a99deb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,7 +3,7 @@ torch==2.4.0 lightning==2.4.0 pymatgen==2024.8.9 ase==3.23.0 -pydantic==2.9.0 +pydantic==2.9.1 torchdata==0.8.0 boto3==1.35.13 numpy==1.26.4 From 7d49ec0a703aabab8e9087087f708e9549cf73b2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Sep 2024 08:51:34 -0700 Subject: [PATCH 18/79] Bump boto3 from 1.35.13 to 1.35.14 (#347) Bumps [boto3](https://github.com/boto/boto3) from 1.35.13 to 1.35.14. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.13...1.35.14) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 62a99deb..f28c6384 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.9.1 torchdata==0.8.0 -boto3==1.35.13 +boto3==1.35.14 numpy==1.26.4 sympy==1.13.2 From e6a89e56988f30b55f2d9ed95a606f3f2d3dfb59 Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Tue, 10 Sep 2024 10:34:40 -0700 Subject: [PATCH 19/79] Update DGL version for torch v2.4.1 (#351) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb * Update the version of dgl in pyproject.toml for torch v2.4.1 Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Update dgl version in requirements.txt for torch v2.4.1 Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- pyproject.toml | 2 +- requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 0bfde7e0..1e184f39 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -50,7 +50,7 @@ classifiers = [ ] dependencies = [ "ase", - "dgl<=2.2.1", + "dgl<=2.4.0", "pymatgen", "lightning<=2.4.0", "torch<=2.2.1", diff --git a/requirements.txt b/requirements.txt index f28c6384..f82aad86 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -dgl==2.2.1 +dgl==2.4.0 torch==2.4.0 lightning==2.4.0 pymatgen==2024.8.9 From 919cabd98b33fb9eeec1041ff951b994f5daaca8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 11 Sep 2024 11:35:20 -0700 Subject: [PATCH 20/79] Bump boto3 from 1.35.14 to 1.35.16 (#353) Bumps [boto3](https://github.com/boto/boto3) from 1.35.14 to 1.35.16. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.14...1.35.16) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index f82aad86..09e9b8c5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.8.9 ase==3.23.0 pydantic==2.9.1 torchdata==0.8.0 -boto3==1.35.14 +boto3==1.35.16 numpy==1.26.4 sympy==1.13.2 From 334f3aec55178a5a187dadc006511fd6721ed375 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 11 Sep 2024 12:20:50 -0700 Subject: [PATCH 21/79] Bump pymatgen from 2024.8.9 to 2024.9.10 (#352) Bumps [pymatgen](https://github.com/materialsproject/pymatgen) from 2024.8.9 to 2024.9.10. - [Release notes](https://github.com/materialsproject/pymatgen/releases) - [Changelog](https://github.com/materialsproject/pymatgen/blob/master/docs/CHANGES.md) - [Commits](https://github.com/materialsproject/pymatgen/compare/v2024.8.9...v2024.9.10) --- updated-dependencies: - dependency-name: pymatgen dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 09e9b8c5..51abb6ad 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ dgl==2.4.0 torch==2.4.0 lightning==2.4.0 -pymatgen==2024.8.9 +pymatgen==2024.9.10 ase==3.23.0 pydantic==2.9.1 torchdata==0.8.0 From cae0ec13642bb3d3cc9162cdf58064c154f09524 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Sep 2024 20:50:26 -0700 Subject: [PATCH 22/79] Bump boto3 from 1.35.16 to 1.35.19 (#356) Bumps [boto3](https://github.com/boto/boto3) from 1.35.16 to 1.35.19. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.16...1.35.19) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 51abb6ad..f3fd441c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.10 ase==3.23.0 pydantic==2.9.1 torchdata==0.8.0 -boto3==1.35.16 +boto3==1.35.19 numpy==1.26.4 sympy==1.13.2 From e441e2b6fffe6cd7a0d193136de38ee370da2f77 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Sep 2024 15:37:20 -0700 Subject: [PATCH 23/79] Bump boto3 from 1.35.19 to 1.35.20 (#357) Bumps [boto3](https://github.com/boto/boto3) from 1.35.19 to 1.35.20. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.19...1.35.20) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index f3fd441c..323c9873 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.10 ase==3.23.0 pydantic==2.9.1 torchdata==0.8.0 -boto3==1.35.19 +boto3==1.35.20 numpy==1.26.4 sympy==1.13.2 From 8489e11eede64ef1f543821e1aa02c284a994a3f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 09:11:41 -0700 Subject: [PATCH 24/79] Bump pymatgen from 2024.9.10 to 2024.9.17.1 (#359) Bumps [pymatgen](https://github.com/materialsproject/pymatgen) from 2024.9.10 to 2024.9.17.1. - [Release notes](https://github.com/materialsproject/pymatgen/releases) - [Changelog](https://github.com/materialsproject/pymatgen/blob/master/docs/CHANGES.md) - [Commits](https://github.com/materialsproject/pymatgen/compare/v2024.9.10...v2024.9.17.1) --- updated-dependencies: - dependency-name: pymatgen dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 323c9873..a8a27811 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ dgl==2.4.0 torch==2.4.0 lightning==2.4.0 -pymatgen==2024.9.10 +pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.1 torchdata==0.8.0 From 03d2d32c88a9cb6445db8d1a41a62c0d49441eb4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 09:11:52 -0700 Subject: [PATCH 25/79] Bump boto3 from 1.35.20 to 1.35.21 (#360) Bumps [boto3](https://github.com/boto/boto3) from 1.35.20 to 1.35.21. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.20...1.35.21) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index a8a27811..291af217 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.1 torchdata==0.8.0 -boto3==1.35.20 +boto3==1.35.21 numpy==1.26.4 sympy==1.13.2 From 5186acec18b9b3ff1592b3f4069486033cf6ba35 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Sep 2024 09:12:02 -0700 Subject: [PATCH 26/79] Bump pydantic from 2.9.1 to 2.9.2 (#361) Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.9.1 to 2.9.2. - [Release notes](https://github.com/pydantic/pydantic/releases) - [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md) - [Commits](https://github.com/pydantic/pydantic/compare/v2.9.1...v2.9.2) --- updated-dependencies: - dependency-name: pydantic dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 291af217..064fd142 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,7 +3,7 @@ torch==2.4.0 lightning==2.4.0 pymatgen==2024.9.17.1 ase==3.23.0 -pydantic==2.9.1 +pydantic==2.9.2 torchdata==0.8.0 boto3==1.35.21 numpy==1.26.4 From 961195551373a14af7d264eb2cc11d0bd7504464 Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Wed, 18 Sep 2024 10:12:16 -0700 Subject: [PATCH 27/79] A command-line interface for performing ASE MD simulations is added. (#362) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb * A command-line interface for performing ASE MD simulations is added * added back py.typed --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- README.md | 4 +- ...using the M3GNet Universal Potential.ipynb | 2 +- src/matgl/cli.py | 202 +++++++++++++++++- src/matgl/py.typed | 1 - tests/test_cli.py | 5 +- 5 files changed, 208 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index dfc2a308..25b7d6f5 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ Nassar, Carmelo Gonzales). Major milestones are summarized below. Please refer to the [changelog] for details. -- v1.1.0 (May 7 2024): Implementation of [CHGNet] + pre-trained models. +- v1.1.0 (May 7 2024): Implementation of [CHGNet] + pre-trained models. - v1.0.0 (Feb 14 2024): Implementation of [TensorNet] and [SO3Net]. - v0.5.1 (Jun 9 2023): Model versioning implemented. - v0.5.0 (Jun 8 2023): Simplified saving and loading of models. Now models can be loaded with one line of code! @@ -89,7 +89,7 @@ We have implemented other models in matgl as well. A non-exhaustive list is give leverages Cartesian tensor representations. - [SO3Net], a minimalist SO(3)-equivariant neural network. - [CHGNet], an invariant message-passing neural network architecture that can predict - PES properties and magmoms. + PES properties and magmoms. ## Installation diff --git a/examples/Relaxations and Simulations using the M3GNet Universal Potential.ipynb b/examples/Relaxations and Simulations using the M3GNet Universal Potential.ipynb index 4d67babb..ff67b55a 100644 --- a/examples/Relaxations and Simulations using the M3GNet Universal Potential.ipynb +++ b/examples/Relaxations and Simulations using the M3GNet Universal Potential.ipynb @@ -53,7 +53,7 @@ "outputs": [], "source": [ "# You can load any pretrained potentials such as CHGNet ('CHGNet-MPtrj-2023.12.1-PES-2.7M', 'CHGNet-MPtrj-2024.2.13-PES-11M')\n", - "# To see availabe models, use get_available_pretrained_models()\n", + "# To see available models, use get_available_pretrained_models()\n", "pot = matgl.load_model(\"M3GNet-MP-2021.2.8-PES\") " ] }, diff --git a/src/matgl/cli.py b/src/matgl/cli.py index 3fb551ca..821fb513 100644 --- a/src/matgl/cli.py +++ b/src/matgl/cli.py @@ -9,11 +9,13 @@ import numpy as np import torch +from ase.md.velocitydistribution import MaxwellBoltzmannDistribution from pymatgen.core.structure import Structure from pymatgen.ext.matproj import MPRester +from pymatgen.io.ase import AseAtomsAdaptor import matgl -from matgl.ext.ase import Relaxer +from matgl.ext.ase import MolecularDynamics, Relaxer warnings.simplefilter("ignore") logger = logging.getLogger("MGL") @@ -95,6 +97,49 @@ def predict_structure(args): print(f"{args.model} prediction for {mid} ({structure.composition.reduced_formula}): {val}.") +def molecular_dynamics(args): + """ + Use MaGL models to perform MD simulations on structures. + + Args: + args: Args from CLI. + """ + for file in args.infile: + name = file.split(".")[0] + structure = Structure.from_file(file) + adaptor = AseAtomsAdaptor() + atoms = adaptor.get_atoms(structure) + + logger.info(f"Initial structure\n{structure}") + logger.info("Loading model...") + pot = matgl.load_model(args.model) + logger.info("Running MD...") + MaxwellBoltzmannDistribution(atoms, temperature_K=args.temp) + md = MolecularDynamics( + atoms, + potential=pot, + ensemble=args.ensemble, + pressure=args.pressure, + timestep=args.stepsize, + trajectory=name + ".traj", + logfile=name + ".log", + temperature=args.temp, + taut=args.taut, + taup=args.taup, + friction=args.friction, + andersen_prob=args.andersen_prob, + ttime=args.ttime, + pfactor=args.pfactor, + external_stress=args.external_stress, + compressibility_au=args.compressibility_au, + loginterval=args.loginterval, + append_trajectory=args.append_trajectory, + mask=args.mask, + ) + md.run(args.nsteps) + return 0 + + def clear_cache(args): """ Clear cache command. @@ -200,6 +245,161 @@ def main(): p_predict.set_defaults(func=predict_structure) + # MD simulations + p_md = subparsers.add_parser("md", help="Perform MD simulations with pre-trained and customized models.") + + p_md.add_argument( + "-i", + "--infile", + nargs="+", + dest="infile", + required=True, + help="Input files containing structure. Any format supported by pymatgen Structure.from_file method.", + ) + + p_md.add_argument( + "-m", + "--model", + dest="model", + # choices=[m for m in matgl.get_available_pretrained_models() if m.endswith("PES")], + default="M3GNet-MP-2021.2.8-DIRECT-PES", + help="Path for loading MLIPs trained from MatGL. Default='M3GNet-MP-2021.2.8-DIRECT-PES'.", + ) + + p_md.add_argument( + "-e", + "--ensemble", + dest="ensemble", + choices=["nve", "nvt", "nvt_langevin", "nvt_andersen", "npt", "npt_berendsen", "npt_nose_hoover"], + default="nve", + help="Ensemble used for MD simulation. Default='nve'.", + ) + + p_md.add_argument( + "-n", + "--nsteps", + dest="nsteps", + type=int, + default=100, + help="Number of steps used for MD simulation. Default=100.", + ) + + p_md.add_argument( + "--stepsize", + dest="stepsize", + type=float, + default=1.0, + help="Step size used for MD simulation. Default=1.0 fs.", + ) + + p_md.add_argument( + "-t", + "--temp", + dest="temp", + type=float, + default=300.0, + help="Temperature used for MD simulation. Default=300.0 in K.", + ) + + p_md.add_argument( + "-p", + "--pressure", + dest="pressure", + type=float, + default=1.01325, + help="Pressure used for MD simulation. Default=1.01325 in Bar.", + ) + + p_md.add_argument( + "--taut", + dest="taut", + type=float, + default=None, + help="Time constant for Berendsen temperature coupling. Default is None.", + ) + + p_md.add_argument( + "--taup", + dest="taup", + type=float, + default=None, + help="Time constant for Berendsen pressure coupling. Default is None.", + ) + + p_md.add_argument( + "--andersen_prob", + dest="andersen_prob", + type=float, + default=0.01, + help="Random collision probability for nvt_andersen. Default is 0.01.", + ) + + p_md.add_argument( + "--friction", + dest="friction", + type=float, + default=0.001, + help="Friction coefficient for nvt_langevin. Default is 0.001.", + ) + + p_md.add_argument( + "--ttime", + dest="ttime", + type=float, + default=25.0, + help="Characteristic timescale of the thermostat in ASE internal units. Default is 25.0.", + ) + + p_md.add_argument( + "--pfactor", + dest="pfactor", + type=float, + default=75.0**2.0, + help="A constant in the barostat differential equation. Default is 25.0 in eV/A$^{3}$.", + ) + + p_md.add_argument( + "--external_stress", + dest="external_stress", + type=float, + default=None, + help="The external stress either 3x3 tensor, 6-vector or a scalar in eV/A$^{3}$. Default is None.", + ) + + p_md.add_argument( + "--compressibility_au", + dest="compressibility_au", + type=float, + default=None, + help="Compressibility of the material in eV/A^{3}. Default is None.", + ) + + p_md.add_argument( + "--loginterval", + dest="loginterval", + type=int, + default=1, + help="Write to log file every interval steps. Default is 1.", + ) + + p_md.add_argument( + "--append_trajectory", + dest="append_trajectory", + type=bool, + default=False, + help="Whether to append to prev trajectory. Default is False.", + ) + + p_md.add_argument( + "--mask", + dest="mask", + type=np.array, + default=None, + help="a symmetric 3x3 array indicating, which strain values may change for NPT simulations", + ) + + p_md.set_defaults(func=molecular_dynamics) + p_clear = subparsers.add_parser("clear", help="Clear cache.") p_clear.add_argument( diff --git a/src/matgl/py.typed b/src/matgl/py.typed index 8b137891..e69de29b 100644 --- a/src/matgl/py.typed +++ b/src/matgl/py.typed @@ -1 +0,0 @@ - diff --git a/tests/test_cli.py b/tests/test_cli.py index f2efb2ae..b438fd10 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -20,7 +20,8 @@ def test_entrypoint(Mo): assert exit_status == 0 exit_status = os.system("mgl predict -i Mo.cif -m MEGNet-MP-2018.6.1-Eform") assert exit_status == 0 - + exit_status = os.system("mgl md -i Mo.cif -e nve -t 300.0 -n 10 --stepsize=1.0") + assert exit_status == 0 # if "PMG_MAPI_KEY" in SETTINGS: # exit_status = os.system("mgl predict -p mp-19017 -m MEGNet-MP-2018.6.1-Eform") # assert exit_status == 0 @@ -30,3 +31,5 @@ def test_entrypoint(Mo): os.remove("Mo.cif") os.remove("Mo_relaxed.cif") os.remove("Mo_hello.cif") + os.remove("Mo.traj") + os.remove("Mo.log") From a6e0e1e18c2f615ad06d40f0896c1726bfd5229b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 16:46:01 -0700 Subject: [PATCH 28/79] Bump boto3 from 1.35.21 to 1.35.22 (#364) Bumps [boto3](https://github.com/boto/boto3) from 1.35.21 to 1.35.22. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.21...1.35.22) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 064fd142..0752360e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.21 +boto3==1.35.22 numpy==1.26.4 sympy==1.13.2 From 3a2f91ac58a64850af5c197fd44942ec74dd63c3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Sep 2024 11:04:48 -0700 Subject: [PATCH 29/79] Bump boto3 from 1.35.22 to 1.35.23 (#365) Bumps [boto3](https://github.com/boto/boto3) from 1.35.22 to 1.35.23. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.22...1.35.23) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 0752360e..8a32696d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.22 +boto3==1.35.23 numpy==1.26.4 sympy==1.13.2 From 8326e7ceae49cbbf6f6b1402f1d655a1d6d51ab7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Sep 2024 12:16:50 -0700 Subject: [PATCH 30/79] Bump sympy from 1.13.2 to 1.13.3 (#363) Bumps [sympy](https://github.com/sympy/sympy) from 1.13.2 to 1.13.3. - [Release notes](https://github.com/sympy/sympy/releases) - [Commits](https://github.com/sympy/sympy/compare/sympy-1.13.2...sympy-1.13.3) --- updated-dependencies: - dependency-name: sympy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 8a32696d..05b6baad 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,4 +7,4 @@ pydantic==2.9.2 torchdata==0.8.0 boto3==1.35.23 numpy==1.26.4 -sympy==1.13.2 +sympy==1.13.3 From 3a4f26d68cbd3379f0800152297ae0c9514d4b77 Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Sun, 22 Sep 2024 14:37:32 -0700 Subject: [PATCH 31/79] clean up united tests in test_basis.py Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- tests/layers/test_basis.py | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/tests/layers/test_basis.py b/tests/layers/test_basis.py index 81504564..cd0afbec 100644 --- a/tests/layers/test_basis.py +++ b/tests/layers/test_basis.py @@ -57,17 +57,6 @@ def test_spherical_bessel_function(): assert [rbf.size(dim=0), rbf.size(dim=1)] == [11, 3] -def test_spherical_bessel_function_smooth(): - r = torch.linspace(1.0, 5.0, 11) - rbf_sb = SphericalBesselFunction(max_n=3, max_l=3, cutoff=5.0, smooth=False) - rbf = rbf_sb(r) - assert [rbf.size(dim=0), rbf.size(dim=1)] == [11, 9] - - rbf_sb = SphericalBesselFunction(max_n=3, max_l=3, cutoff=5.0, smooth=True) - rbf = rbf_sb(r) - assert [rbf.size(dim=0), rbf.size(dim=1)] == [11, 3] - - def test_spherical_harmonic_function(): theta = torch.linspace(-1, 1, 10) phi = torch.linspace(0, 2 * np.pi, 10) @@ -80,15 +69,6 @@ def test_spherical_bessel_harmonics_function(): r = torch.empty(10).normal_() sbf = SphericalBesselFunction(max_l=3, cutoff=5.0, max_n=3, smooth=False) res = sbf(r) - res2 = sbf.rbf_j0(r, cutoff=5.0, max_n=3) - assert np.allclose(res[:, :3].numpy().ravel(), res2.numpy().ravel(), atol=1e-07) - - assert res.numpy().shape == (10, 9) - - sbf2 = SphericalBesselFunction(max_l=3, cutoff=5.0, max_n=3, smooth=True) - - res2 = sbf2(r) - assert tuple(res2.shape) == (10, 3) shf = SphericalHarmonicsFunction(max_l=3, use_phi=True) res_shf = shf(cos_theta=torch.linspace(-1, 1, 10), phi=torch.linspace(0, 2 * np.pi, 10)) From 3bc8467b5a280b3316a7a86a74bf062f34e39e42 Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Sun, 22 Sep 2024 20:43:55 -0700 Subject: [PATCH 32/79] Added Exponent Normal Smearing for radial basis functions (#366) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb * A command-line interface for performing ASE MD simulations is added * added back py.typed * ExpNormal Smearing for radial basis functions is added * Changed deprecated torch.scalar_tensor into torch.Tensor Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Converted the float number into tensor Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- src/matgl/layers/_basis.py | 56 ++++++++++++++++++++++++++++++++++++++ src/matgl/layers/_bond.py | 8 ++++-- tests/layers/test_basis.py | 12 ++++++++ tests/layers/test_bond.py | 7 +++++ 4 files changed, 80 insertions(+), 3 deletions(-) diff --git a/src/matgl/layers/_basis.py b/src/matgl/layers/_basis.py index 247275c2..f9018acc 100644 --- a/src/matgl/layers/_basis.py +++ b/src/matgl/layers/_basis.py @@ -9,6 +9,7 @@ import matgl from matgl.layers._three_body import combine_sbf_shf +from matgl.utils.cutoff import cosine_cutoff from matgl.utils.maths import SPHERICAL_BESSEL_ROOTS, _get_lambda_func @@ -360,3 +361,58 @@ def forward(self, line_graph): sbf = self.sbf(line_graph.edata["triple_bond_lengths"]) shf = self.shf(line_graph.edata["cos_theta"], line_graph.edata["phi"]) return combine_sbf_shf(sbf, shf, max_n=self.max_n, max_l=self.max_l, use_phi=self.use_phi) + + +class ExpNormalFunction(nn.Module): + """Implementation of radial basis function using exponential normal smearing.""" + + def __init__(self, cutoff: float = 5.0, num_rbf: int = 50, learnable: bool = True): + """ + Initialize ExpNormalSmearing. + + Args: + cutoff (float): The cutoff distance beyond which interactions are considered negligible. Default is 5.0. + num_rbf (int): The number of radial basis functions (RBF) to use. Default is 50. + learnable (bool): If True, the means and betas parameters are learnable. + If False, they are fixed. Default is True. + """ + super().__init__() + self.cutoff = cutoff + self.num_rbf = num_rbf + self.learnable = learnable + + self.alpha = 5.0 / cutoff + + means, betas = self._initial_params() + if learnable: + self.register_parameter("means", nn.Parameter(means)) + self.register_parameter("betas", nn.Parameter(betas)) + else: + self.register_buffer("means", means) + self.register_buffer("betas", betas) + + def _initial_params(self): + """Initialize the means and betas parameters.""" + start_value = torch.exp(torch.tensor(-self.cutoff, dtype=matgl.float_th)) + means = torch.linspace(start_value, 1, self.num_rbf) + betas = torch.tensor([(2 / self.num_rbf * (1 - start_value)) ** -2] * self.num_rbf) + return means, betas + + def reset_parameters(self): + """Reset the means and betas to their initial values.""" + means, betas = self._initial_params() + self.means.data.copy_(means) + self.betas.data.copy_(betas) + + def forward(self, r: torch.Tensor): + """ + Compute the radial basis function for the input distances. + + Args: + r (torch.Tensor): Input distances. + + Returns: + torch.Tensor: Smearing function applied to the input distances. + """ + r = r.unsqueeze(-1) + return cosine_cutoff(r, self.cutoff) * torch.exp(-self.betas * (torch.exp(self.alpha * (-r)) - self.means) ** 2) diff --git a/src/matgl/layers/_bond.py b/src/matgl/layers/_bond.py index 1a739af6..938d0083 100644 --- a/src/matgl/layers/_bond.py +++ b/src/matgl/layers/_bond.py @@ -7,7 +7,7 @@ import torch from torch import nn -from matgl.layers._basis import GaussianExpansion, SphericalBesselFunction +from matgl.layers._basis import ExpNormalFunction, GaussianExpansion, SphericalBesselFunction class BondExpansion(nn.Module): @@ -18,7 +18,7 @@ def __init__( max_l: int = 3, max_n: int = 3, cutoff: float = 5.0, - rbf_type: Literal["SphericalBessel", "Gaussian"] = "SphericalBessel", + rbf_type: Literal["SphericalBessel", "Gaussian", "ExpNorm"] = "SphericalBessel", smooth: bool = False, initial: float = 0.0, final: float = 5.0, @@ -30,7 +30,7 @@ def __init__( max_l (int): order of angular part max_n (int): order of radial part cutoff (float): cutoff radius - rbf_type (str): type of radial basis function .i.e. either "SphericalBessel" or 'Gaussian' + rbf_type (str): type of radial basis function .i.e. either "SphericalBessel", "ExpNorm" or 'Gaussian' smooth (bool): whether apply the smooth version of spherical bessel functions or not initial (float): initial point for gaussian expansion final (float): final point for gaussian expansion @@ -53,6 +53,8 @@ def __init__( self.rbf = SphericalBesselFunction(max_l, max_n, cutoff, smooth) # type: ignore elif rbf_type.lower() == "gaussian": self.rbf = GaussianExpansion(initial, final, num_centers, width) # type: ignore + elif rbf_type.lower() == "expnorm": + self.rbf = ExpNormalFunction(cutoff, num_centers, True) else: raise ValueError("Undefined rbf_type, please use SphericalBessel or Gaussian instead.") diff --git a/tests/layers/test_basis.py b/tests/layers/test_basis.py index cd0afbec..59115fc0 100644 --- a/tests/layers/test_basis.py +++ b/tests/layers/test_basis.py @@ -8,6 +8,7 @@ create_line_graph, ) from matgl.layers._basis import ( + ExpNormalFunction, FourierExpansion, GaussianExpansion, RadialBesselFunction, @@ -57,6 +58,17 @@ def test_spherical_bessel_function(): assert [rbf.size(dim=0), rbf.size(dim=1)] == [11, 3] +def test_exp_normal_function(): + r = torch.linspace(1.0, 5.0, 11) + rbf = ExpNormalFunction(cutoff=5.0, num_rbf=3, learnable=False) + res = rbf(r) + assert [res.size(dim=0), res.size(dim=1)] == [11, 3] + + rbf = ExpNormalFunction(cutoff=5.0, num_rbf=3, learnable=True) + res = rbf(r) + assert [res.size(dim=0), res.size(dim=1)] == [11, 3] + + def test_spherical_harmonic_function(): theta = torch.linspace(-1, 1, 10) phi = torch.linspace(0, 2 * np.pi, 10) diff --git a/tests/layers/test_bond.py b/tests/layers/test_bond.py index 4d1e0bb4..6c7113c8 100644 --- a/tests/layers/test_bond.py +++ b/tests/layers/test_bond.py @@ -35,6 +35,13 @@ def test_spherical_bessel(self, graph_MoS, graph_CO): bond_basis = bond_expansion(g2.edata["bond_dist"]) assert bond_basis.shape == (2, 9) + def test_exp_normal(self, graph_MoS, graph_CO): + _, g1, _ = graph_MoS + _, g2, _ = graph_CO + bond_expansion = BondExpansion(rbf_type="ExpNorm", cutoff=4.0, num_centers=9) + bond_basis = bond_expansion(g1.edata["bond_dist"]) + assert bond_basis.shape == (28, 9) + def test_exception(self): with pytest.raises(ValueError, match="Undefined rbf_type"): BondExpansion(rbf_type="nonsense") From e5ebebc7312f352d63c4dd716455e589098f794f Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Sun, 22 Sep 2024 21:51:37 -0700 Subject: [PATCH 33/79] Remove unnecessary reset_parameters in ExpNormFunction class Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- src/matgl/layers/_basis.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/matgl/layers/_basis.py b/src/matgl/layers/_basis.py index f9018acc..81fb7129 100644 --- a/src/matgl/layers/_basis.py +++ b/src/matgl/layers/_basis.py @@ -398,12 +398,6 @@ def _initial_params(self): betas = torch.tensor([(2 / self.num_rbf * (1 - start_value)) ** -2] * self.num_rbf) return means, betas - def reset_parameters(self): - """Reset the means and betas to their initial values.""" - means, betas = self._initial_params() - self.means.data.copy_(means) - self.betas.data.copy_(betas) - def forward(self, r: torch.Tensor): """ Compute the radial basis function for the input distances. From 00dd1e1ba14112bed210389e42a746bc10cbad5b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Sep 2024 17:58:44 -0700 Subject: [PATCH 34/79] Bump boto3 from 1.35.23 to 1.35.24 (#367) Bumps [boto3](https://github.com/boto/boto3) from 1.35.23 to 1.35.24. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.23...1.35.24) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 05b6baad..fc5c07e9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.23 +boto3==1.35.24 numpy==1.26.4 sympy==1.13.3 From 4e48fa27dff5bdd370b36b36178963886d492c13 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Sep 2024 21:05:14 -0700 Subject: [PATCH 35/79] Bump boto3 from 1.35.24 to 1.35.25 (#368) Bumps [boto3](https://github.com/boto/boto3) from 1.35.24 to 1.35.25. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.24...1.35.25) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index fc5c07e9..e6d152b1 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.24 +boto3==1.35.25 numpy==1.26.4 sympy==1.13.3 From f30b560cc398f2384f72798965088ca078bbe62f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Sep 2024 23:14:47 -0700 Subject: [PATCH 36/79] Bump webrick from 1.8.1 to 1.8.2 in /docs (#369) Bumps [webrick](https://github.com/ruby/webrick) from 1.8.1 to 1.8.2. - [Release notes](https://github.com/ruby/webrick/releases) - [Commits](https://github.com/ruby/webrick/compare/v1.8.1...v1.8.2) --- updated-dependencies: - dependency-name: webrick dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock index 436a4008..26c8b11c 100644 --- a/docs/Gemfile.lock +++ b/docs/Gemfile.lock @@ -251,7 +251,7 @@ GEM unf_ext unf_ext (0.0.8.2) unicode-display_width (1.8.0) - webrick (1.8.1) + webrick (1.8.2) PLATFORMS arm64-darwin-22 From 698d0fce4caae98d30d3da5f1c6bbb73920c7e10 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Sep 2024 11:05:24 -0700 Subject: [PATCH 37/79] Bump boto3 from 1.35.25 to 1.35.26 (#370) Bumps [boto3](https://github.com/boto/boto3) from 1.35.25 to 1.35.26. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.25...1.35.26) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index e6d152b1..c2a2b21a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.25 +boto3==1.35.26 numpy==1.26.4 sympy==1.13.3 From 4c99cbfc839049dd609967fbb7a434e6ed0fded1 Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Wed, 25 Sep 2024 23:45:13 -0700 Subject: [PATCH 38/79] change the intro in layer/__init__.py MatGL supports more different GNN architectures and the intro needs to be changed. Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- src/matgl/layers/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/matgl/layers/__init__.py b/src/matgl/layers/__init__.py index 466b5906..5bf11142 100644 --- a/src/matgl/layers/__init__.py +++ b/src/matgl/layers/__init__.py @@ -1,4 +1,4 @@ -"""This package implements the layers for M*GNet.""" +"""This package implements the layers for different Graph Neural Networks.""" from __future__ import annotations From 41879c125578b26be84866be08848568d0d53f3f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 26 Sep 2024 08:55:43 -0700 Subject: [PATCH 39/79] Bump boto3 from 1.35.26 to 1.35.27 (#373) Bumps [boto3](https://github.com/boto/boto3) from 1.35.26 to 1.35.27. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.26...1.35.27) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index c2a2b21a..7a2f9d07 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.26 +boto3==1.35.27 numpy==1.26.4 sympy==1.13.3 From 6232235dc7b542e98b42bdad666f919ffdc9e15c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 27 Sep 2024 09:51:07 -0700 Subject: [PATCH 40/79] Bump boto3 from 1.35.27 to 1.35.28 (#375) Bumps [boto3](https://github.com/boto/boto3) from 1.35.27 to 1.35.28. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.27...1.35.28) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 7a2f9d07..57a05053 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.27 +boto3==1.35.28 numpy==1.26.4 sympy==1.13.3 From ad9bbe253279fd1d3f2936d2652201a18434682b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Sep 2024 10:12:17 -0700 Subject: [PATCH 41/79] Bump boto3 from 1.35.28 to 1.35.29 (#376) Bumps [boto3](https://github.com/boto/boto3) from 1.35.28 to 1.35.29. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.28...1.35.29) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 57a05053..66ead57e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.28 +boto3==1.35.29 numpy==1.26.4 sympy==1.13.3 From abbad80791e319220e8a4537748bdd9beed5d92f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Oct 2024 11:09:11 -0700 Subject: [PATCH 42/79] Bump boto3 from 1.35.29 to 1.35.30 (#377) Bumps [boto3](https://github.com/boto/boto3) from 1.35.29 to 1.35.30. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.29...1.35.30) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 66ead57e..e55da725 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.29 +boto3==1.35.30 numpy==1.26.4 sympy==1.13.3 From 7d143fd3c165745491ef1a8089dc87cd9755a24f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Oct 2024 10:38:51 -0700 Subject: [PATCH 43/79] Bump boto3 from 1.35.30 to 1.35.31 (#378) Bumps [boto3](https://github.com/boto/boto3) from 1.35.30 to 1.35.31. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.30...1.35.31) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index e55da725..e8bec381 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.30 +boto3==1.35.31 numpy==1.26.4 sympy==1.13.3 From cc13b15da8bf35790ec35b88ad6600af964003be Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Wed, 2 Oct 2024 22:17:16 -0700 Subject: [PATCH 44/79] adding back .cpu() before .numpy() in get_feature_matrix.py Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- src/matgl/layers/_atom_ref.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/matgl/layers/_atom_ref.py b/src/matgl/layers/_atom_ref.py index cc77de79..eb717cd9 100644 --- a/src/matgl/layers/_atom_ref.py +++ b/src/matgl/layers/_atom_ref.py @@ -41,7 +41,7 @@ def get_feature_matrix(self, graphs: list[dgl.DGLGraph]) -> torch.Tensor: for i, graph in enumerate(graphs): atomic_numbers = graph.ndata["node_type"] features[i] = torch.bincount(atomic_numbers, minlength=self.max_z) - return features.numpy() + return features.cpu().numpy() def fit(self, graphs: list[dgl.DGLGraph], properties: torch.Tensor) -> None: """Fit the elemental reference values for the properties. From f547253d28040be7cdd5f250ba9def388d353096 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Oct 2024 17:33:19 -0700 Subject: [PATCH 45/79] Bump boto3 from 1.35.31 to 1.35.32 (#379) Bumps [boto3](https://github.com/boto/boto3) from 1.35.31 to 1.35.32. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.31...1.35.32) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index e8bec381..32717258 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.9.17.1 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.31 +boto3==1.35.32 numpy==1.26.4 sympy==1.13.3 From 362f93e78af977e603291395a391d36e88a98d9c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 4 Oct 2024 13:28:27 -0700 Subject: [PATCH 46/79] Bump pymatgen from 2024.9.17.1 to 2024.10.3 (#381) Bumps [pymatgen](https://github.com/materialsproject/pymatgen) from 2024.9.17.1 to 2024.10.3. - [Release notes](https://github.com/materialsproject/pymatgen/releases) - [Changelog](https://github.com/materialsproject/pymatgen/blob/master/docs/CHANGES.md) - [Commits](https://github.com/materialsproject/pymatgen/compare/v2024.9.17.1...v2024.10.3) --- updated-dependencies: - dependency-name: pymatgen dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 32717258..d2990054 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ dgl==2.4.0 torch==2.4.0 lightning==2.4.0 -pymatgen==2024.9.17.1 +pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 From fede110edf9cc1d20bfe60675c97d0dc0c4b81c2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 4 Oct 2024 17:24:49 -0700 Subject: [PATCH 47/79] Bump boto3 from 1.35.32 to 1.35.33 (#380) Bumps [boto3](https://github.com/boto/boto3) from 1.35.32 to 1.35.33. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.32...1.35.33) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index d2990054..d29652a7 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.32 +boto3==1.35.33 numpy==1.26.4 sympy==1.13.3 From f8fb2a54206b372e401b21e18ec98ff17cef843e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 7 Oct 2024 23:16:27 -0700 Subject: [PATCH 48/79] Bump boto3 from 1.35.33 to 1.35.34 (#383) Bumps [boto3](https://github.com/boto/boto3) from 1.35.33 to 1.35.34. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.33...1.35.34) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index d29652a7..275c6833 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.33 +boto3==1.35.34 numpy==1.26.4 sympy==1.13.3 From 9ea6165c5e7496c726aea5e6dc12dfbce11befb0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 9 Oct 2024 14:16:14 -0700 Subject: [PATCH 49/79] Bump boto3 from 1.35.34 to 1.35.36 (#385) Bumps [boto3](https://github.com/boto/boto3) from 1.35.34 to 1.35.36. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.34...1.35.36) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 275c6833..fef698b2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.34 +boto3==1.35.36 numpy==1.26.4 sympy==1.13.3 From 9368a3095576a973e18490e113141358842f0f54 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 10 Oct 2024 09:14:15 -0700 Subject: [PATCH 50/79] Bump boto3 from 1.35.36 to 1.35.37 (#387) Bumps [boto3](https://github.com/boto/boto3) from 1.35.36 to 1.35.37. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.36...1.35.37) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index fef698b2..bd7a3d4c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.36 +boto3==1.35.37 numpy==1.26.4 sympy==1.13.3 From 56f30b01203e114b26fba6da43942559f2119e27 Mon Sep 17 00:00:00 2001 From: Shyue Ping Ong Date: Thu, 10 Oct 2024 11:15:32 -0500 Subject: [PATCH 51/79] Drop 3.9 supprot. --- .github/workflows/testing.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 4f02f30e..4a96c0e4 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -20,7 +20,7 @@ jobs: strategy: max-parallel: 20 matrix: - python-version: ["3.9", "3.11"] + python-version: ["3.10", "3.12"] os: [ "ubuntu-latest", "macos-latest" ] runs-on: ${{ matrix.os }} From 2f378bf385cae64a250646f72e14c4c779a6a80b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 11 Oct 2024 09:27:10 -0700 Subject: [PATCH 52/79] Bump boto3 from 1.35.37 to 1.35.38 (#389) Bumps [boto3](https://github.com/boto/boto3) from 1.35.37 to 1.35.38. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.37...1.35.38) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index bd7a3d4c..3c4d9ba3 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.8.0 -boto3==1.35.37 +boto3==1.35.38 numpy==1.26.4 sympy==1.13.3 From 9dcf616b1968d34b17deff8d0e4f5af16d3eb08a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Oct 2024 15:34:21 -0700 Subject: [PATCH 53/79] Bump boto3 from 1.35.38 to 1.35.39 (#390) * Bump boto3 from 1.35.38 to 1.35.39 Bumps [boto3](https://github.com/boto/boto3) from 1.35.38 to 1.35.39. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.38...1.35.39) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Downgrade Pytorch and DGL version (#392) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb * A command-line interface for performing ASE MD simulations is added * added back py.typed * ExpNormal Smearing for radial basis functions is added * Changed deprecated torch.scalar_tensor into torch.Tensor Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Converted the float number into tensor Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * fix the united test in test_bond.py * fix the error from the upgrade of boto3 * Downgrade DGL to 2.2.1 * Downgrade pytorch * fix mypy by adding self.norm_layers is not None --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong * correct the downgrade for torch (#393) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb * A command-line interface for performing ASE MD simulations is added * added back py.typed * ExpNormal Smearing for radial basis functions is added * Changed deprecated torch.scalar_tensor into torch.Tensor Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Converted the float number into tensor Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * fix the united test in test_bond.py * fix the error from the upgrade of boto3 * Downgrade DGL to 2.2.1 * Downgrade pytorch * fix mypy by adding self.norm_layers is not None * correct the downgrade for torch --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong * Correct the version of torch.data (#394) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb * A command-line interface for performing ASE MD simulations is added * added back py.typed * ExpNormal Smearing for radial basis functions is added * Changed deprecated torch.scalar_tensor into torch.Tensor Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Converted the float number into tensor Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * fix the united test in test_bond.py * fix the error from the upgrade of boto3 * Downgrade DGL to 2.2.1 * Downgrade pytorch * fix mypy by adding self.norm_layers is not None * correct the downgrade for torch * fix the version of torchdata --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong * Downgrade torch to 2.2.1 (#395) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb * A command-line interface for performing ASE MD simulations is added * added back py.typed * ExpNormal Smearing for radial basis functions is added * Changed deprecated torch.scalar_tensor into torch.Tensor Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Converted the float number into tensor Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * fix the united test in test_bond.py * fix the error from the upgrade of boto3 * Downgrade DGL to 2.2.1 * Downgrade pytorch * fix mypy by adding self.norm_layers is not None * correct the downgrade for torch * fix the version of torchdata * downgrade torch to 2.2.1 --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong --------- Signed-off-by: dependabot[bot] Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong --- pyproject.toml | 2 +- requirements.txt | 8 ++++---- src/matgl/layers/_core.py | 14 ++++++++------ tests/layers/test_bond.py | 3 +++ 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 1e184f39..0bfde7e0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -50,7 +50,7 @@ classifiers = [ ] dependencies = [ "ase", - "dgl<=2.4.0", + "dgl<=2.2.1", "pymatgen", "lightning<=2.4.0", "torch<=2.2.1", diff --git a/requirements.txt b/requirements.txt index 3c4d9ba3..4b1680f1 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,10 +1,10 @@ -dgl==2.4.0 -torch==2.4.0 +dgl==2.2.1 +torch==2.2.1 lightning==2.4.0 pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 -torchdata==0.8.0 -boto3==1.35.38 +torchdata==0.7.1 +boto3==1.35.39 numpy==1.26.4 sympy==1.13.3 diff --git a/src/matgl/layers/_core.py b/src/matgl/layers/_core.py index 201d8632..a2dc57ed 100644 --- a/src/matgl/layers/_core.py +++ b/src/matgl/layers/_core.py @@ -2,7 +2,7 @@ from __future__ import annotations -from typing import TYPE_CHECKING, Any, Callable, Literal +from typing import TYPE_CHECKING, Any, Callable, Literal, cast import dgl import torch @@ -130,21 +130,23 @@ def __init__( self.activate_last = activate_last self.normalize_hidden = normalize_hidden norm_kwargs = norm_kwargs or {} + norm_kwargs = cast(dict, norm_kwargs) for i, (in_dim, out_dim) in enumerate(zip(dims[:-1], dims[1:])): if i < self._depth - 1: self.layers.append(Linear(in_dim, out_dim, bias=use_bias)) - if normalize_hidden: + if normalize_hidden and self.norm_layers is not None: if normalization == "graph": self.norm_layers.append(GraphNorm(out_dim, **norm_kwargs)) elif normalization == "layer": self.norm_layers.append(LayerNorm(out_dim, **norm_kwargs)) else: self.layers.append(Linear(in_dim, out_dim, bias=use_bias and bias_last)) - if normalization == "graph": - self.norm_layers.append(GraphNorm(out_dim, **norm_kwargs)) - elif normalization == "layer": - self.norm_layers.append(LayerNorm(out_dim, **norm_kwargs)) + if self.norm_layers is not None: + if normalization == "graph": + self.norm_layers.append(GraphNorm(out_dim, **norm_kwargs)) + elif normalization == "layer": + self.norm_layers.append(LayerNorm(out_dim, **norm_kwargs)) def forward(self, inputs: torch.Tensor, g: dgl.Graph | None = None) -> torch.Tensor: """Applies all layers in turn. diff --git a/tests/layers/test_bond.py b/tests/layers/test_bond.py index 6c7113c8..a0ba0418 100644 --- a/tests/layers/test_bond.py +++ b/tests/layers/test_bond.py @@ -42,6 +42,9 @@ def test_exp_normal(self, graph_MoS, graph_CO): bond_basis = bond_expansion(g1.edata["bond_dist"]) assert bond_basis.shape == (28, 9) + bond_basis = bond_expansion(g2.edata["bond_dist"]) + assert bond_basis.shape == (2, 9) + def test_exception(self): with pytest.raises(ValueError, match="Undefined rbf_type"): BondExpansion(rbf_type="nonsense") From 3fbdc4613c466ebb7d817fb46885548f5195e741 Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Mon, 14 Oct 2024 18:03:06 -0700 Subject: [PATCH 54/79] remove unused variable self.potential in Relaxer class Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- src/matgl/ext/ase.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/matgl/ext/ase.py b/src/matgl/ext/ase.py index a4ac38b0..b5ae0631 100644 --- a/src/matgl/ext/ase.py +++ b/src/matgl/ext/ase.py @@ -243,7 +243,6 @@ def __init__( stress_weight=stress_weight, # type: ignore ) self.relax_cell = relax_cell - self.potential = potential self.ase_adaptor = AseAtomsAdaptor() def relax( From 5228694d6c3deaa8d103b616334dacfd2d3f03e3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Oct 2024 10:01:52 -0700 Subject: [PATCH 55/79] Bump boto3 from 1.35.39 to 1.35.40 (#396) Bumps [boto3](https://github.com/boto/boto3) from 1.35.39 to 1.35.40. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.39...1.35.40) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 4b1680f1..7a61d330 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.39 +boto3==1.35.40 numpy==1.26.4 sympy==1.13.3 From 1d2b18f0f2a73701cbc4d29a01739d8207b84dbb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 08:51:49 -0700 Subject: [PATCH 56/79] Bump boto3 from 1.35.40 to 1.35.41 (#398) Bumps [boto3](https://github.com/boto/boto3) from 1.35.40 to 1.35.41. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.40...1.35.41) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 7a61d330..e63432f0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.40 +boto3==1.35.41 numpy==1.26.4 sympy==1.13.3 From 71536b455b0d2d536281fc359a450bf3474d4d98 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Oct 2024 11:50:08 +0800 Subject: [PATCH 57/79] Bump boto3 from 1.35.41 to 1.35.42 (#399) Bumps [boto3](https://github.com/boto/boto3) from 1.35.41 to 1.35.42. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.41...1.35.42) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index e63432f0..df30b2bd 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.41 +boto3==1.35.42 numpy==1.26.4 sympy==1.13.3 From 68a3870552aa634423eb8f4d57e9cfbec789cd1c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 19 Oct 2024 11:14:32 +0800 Subject: [PATCH 58/79] Bump boto3 from 1.35.42 to 1.35.43 (#400) Bumps [boto3](https://github.com/boto/boto3) from 1.35.42 to 1.35.43. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.42...1.35.43) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index df30b2bd..2eee71e9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.42 +boto3==1.35.43 numpy==1.26.4 sympy==1.13.3 From 5a0ee2bdc78035aced2fc9e7a4b2edb917fc6f86 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Oct 2024 07:25:32 +0800 Subject: [PATCH 59/79] Bump boto3 from 1.35.43 to 1.35.44 (#401) Bumps [boto3](https://github.com/boto/boto3) from 1.35.43 to 1.35.44. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.43...1.35.44) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 2eee71e9..fef7b7c1 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.3 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.43 +boto3==1.35.44 numpy==1.26.4 sympy==1.13.3 From 963225443440ba17af2988203c35d7958ea81f85 Mon Sep 17 00:00:00 2001 From: Bowen Deng <84425382+BowenD-UCB@users.noreply.github.com> Date: Mon, 21 Oct 2024 17:36:48 -0700 Subject: [PATCH 60/79] Allow missing label in MGLDataset (#403) * added function to allow missing lables for all tasks * fixed bug * minor fixes on testing --- src/matgl/utils/training.py | 75 ++++++++++++++++++++---------------- tests/utils/test_training.py | 64 ++++++++++++++++++++++++++++++ 2 files changed, 106 insertions(+), 33 deletions(-) diff --git a/src/matgl/utils/training.py b/src/matgl/utils/training.py index e8c03e22..394c3332 100644 --- a/src/matgl/utils/training.py +++ b/src/matgl/utils/training.py @@ -436,7 +436,7 @@ def loss_fn( loss: nn.Module, labels: tuple, preds: tuple, - num_atoms: int | None = None, + num_atoms: torch.Tensor | None = None, ): """Compute losses for EFS. @@ -462,14 +462,31 @@ def loss_fn( """ # labels and preds are (energy, force, stress, (optional) site_wise) - e_loss = self.loss(labels[0] / num_atoms, preds[0] / num_atoms, **self.loss_params) - f_loss = self.loss(labels[1], preds[1], **self.loss_params) + if num_atoms is None: + num_atoms = torch.ones_like(preds[0]) + if self.allow_missing_labels: + valid_labels, valid_preds = [], [] + for index, label in enumerate(labels): + valid_value_indices = ~torch.isnan(label) + valid_labels.append(label[valid_value_indices]) + if index == 0: + valid_num_atoms = num_atoms[valid_value_indices] + pred = preds[index].view(1) if preds[index].shape == torch.Size([]) else preds[index] + else: + pred = preds[index] + valid_preds.append(pred[valid_value_indices]) + else: + valid_labels, valid_preds = list(labels), list(preds) + valid_num_atoms = num_atoms + + e_loss = self.loss(valid_labels[0] / valid_num_atoms, valid_preds[0] / valid_num_atoms, **self.loss_params) + f_loss = self.loss(valid_labels[1], valid_preds[1], **self.loss_params) - e_mae = self.mae(labels[0] / num_atoms, preds[0] / num_atoms) - f_mae = self.mae(labels[1], preds[1]) + e_mae = self.mae(valid_labels[0] / valid_num_atoms, valid_preds[0] / valid_num_atoms) + f_mae = self.mae(valid_labels[1], valid_preds[1]) - e_rmse = self.rmse(labels[0] / num_atoms, preds[0] / num_atoms) - f_rmse = self.rmse(labels[1], preds[1]) + e_rmse = self.rmse(valid_labels[0] / valid_num_atoms, valid_preds[0] / valid_num_atoms) + f_rmse = self.rmse(valid_labels[1], valid_preds[1]) s_mae = torch.zeros(1) s_rmse = torch.zeros(1) @@ -480,36 +497,28 @@ def loss_fn( total_loss = self.energy_weight * e_loss + self.force_weight * f_loss if self.model.calc_stresses: - s_loss = loss(labels[2], preds[2], **self.loss_params) - s_mae = self.mae(labels[2], preds[2]) - s_rmse = self.rmse(labels[2], preds[2]) + s_loss = loss(valid_labels[2], valid_preds[2], **self.loss_params) + s_mae = self.mae(valid_labels[2], valid_preds[2]) + s_rmse = self.rmse(valid_labels[2], valid_preds[2]) total_loss = total_loss + self.stress_weight * s_loss - if self.model.calc_magmom: - if self.allow_missing_labels: - valid_values = ~torch.isnan(labels[3]) - labels_3 = labels[3][valid_values] - preds_3 = preds[3][valid_values] + if self.model.calc_magmom and labels[3].numel() > 0: + if self.magmom_target == "symbreak": + m_loss = torch.min( + loss(valid_labels[3], valid_preds[3], **self.loss_params), + loss(valid_labels[3], -valid_preds[3], **self.loss_params), + ) + m_mae = torch.min(self.mae(valid_labels[3], valid_preds[3]), self.mae(valid_labels[3], -valid_preds[3])) + m_rmse = torch.min( + self.rmse(valid_labels[3], valid_preds[3]), self.rmse(valid_labels[3], -valid_preds[3]) + ) else: - labels_3 = labels[3] - preds_3 = preds[3] - - if len(labels_3) > 0: - if self.magmom_target == "symbreak": - m_loss = torch.min( - loss(labels_3, preds_3, **self.loss_params), loss(labels_3, -preds_3, **self.loss_params) - ) - m_mae = torch.min(self.mae(labels_3, preds_3), self.mae(labels_3, -preds_3)) - m_rmse = torch.min(self.rmse(labels_3, preds_3), self.rmse(labels_3, -preds_3)) - else: - if self.magmom_target == "absolute": - labels_3 = torch.abs(labels_3) - - m_loss = loss(labels_3, preds_3, **self.loss_params) - m_mae = self.mae(labels_3, preds_3) - m_rmse = self.rmse(labels_3, preds_3) + labels_3 = torch.abs(valid_labels[3]) if self.magmom_target == "absolute" else valid_labels[3] + m_loss = loss(labels_3, valid_preds[3], **self.loss_params) + m_mae = self.mae(labels_3, valid_preds[3]) + m_rmse = self.rmse(labels_3, valid_preds[3]) - total_loss = total_loss + self.magmom_weight * m_loss + total_loss = total_loss + self.magmom_weight * m_loss return { "Total_Loss": total_loss, diff --git a/tests/utils/test_training.py b/tests/utils/test_training.py index 83c165ff..90c25cf4 100644 --- a/tests/utils/test_training.py +++ b/tests/utils/test_training.py @@ -773,6 +773,70 @@ def test_chgnet_training_without_m(self, LiFePO4, BaNiO3): self.teardown_class() + def test_chgnet_training_with_missing_label(self, LiFePO4, BaNiO3): + structures = [LiFePO4, BaNiO3] * 5 + energies = [-2.0, -3.0] * 5 + forces = [np.ones((len(s), 3)).tolist() for s in structures] + stresses = [np.zeros((3, 3)).tolist()] * len(structures) + magmoms = [np.ones((len(s), 1)).tolist() for s in structures] + # Create some missing labels + energies[2] = np.nan + forces[4] = (np.nan * np.ones((len(structures[4]), 3))).tolist() + stresses[6] = (np.nan * np.ones((3, 3))).tolist() + magmoms[8] = (np.nan * np.ones((len(structures[8]), 1))).tolist() + element_types = get_element_list([LiFePO4, BaNiO3]) + converter = Structure2Graph(element_types=element_types, cutoff=6.0) + dataset = MGLDataset( + threebody_cutoff=3.0, + structures=structures, + converter=converter, + include_line_graph=True, + directed_line_graph=True, + labels={ + "energies": energies, + "forces": forces, + "stresses": stresses, + "magmoms": magmoms, + }, + save_cache=False, + ) + train_data, val_data, test_data = split_dataset( + dataset, + frac_list=[0.8, 0.1, 0.1], + shuffle=True, + random_state=42, + ) + train_loader, val_loader, test_loader = MGLDataLoader( + train_data=train_data, + val_data=val_data, + test_data=test_data, + collate_fn=partial(collate_fn_pes, include_magmom=True, include_line_graph=True), + batch_size=4, + num_workers=0, + generator=torch.Generator(device=device), + ) + model = CHGNet(element_types=element_types, is_intensive=False) + lit_model = PotentialLightningModule( + model=model, + stress_weight=0.1, + magmom_weight=0.1, + include_line_graph=True, + allow_missing_labels=True, + ) + # We will use CPU if MPS is available since there is a serious bug. + trainer = pl.Trainer(max_epochs=2, accelerator=device, inference_mode=False) + + trainer.fit(model=lit_model, train_dataloaders=train_loader, val_dataloaders=val_loader) + trainer.test(lit_model, dataloaders=test_loader) + + pred_LFP_energy = model.predict_structure(LiFePO4) + pred_BNO_energy = model.predict_structure(BaNiO3) + + assert torch.any(pred_LFP_energy < 0) + assert torch.any(pred_BNO_energy < 0) + + self.teardown_class() + @classmethod def teardown_class(cls): try: From a7729ede067986664ff9b8c624a6b50c04689a87 Mon Sep 17 00:00:00 2001 From: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Date: Tue, 22 Oct 2024 10:26:19 +0800 Subject: [PATCH 61/79] improve code coverage by including "symbreak" for chgnet training (#404) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb * A command-line interface for performing ASE MD simulations is added * added back py.typed * ExpNormal Smearing for radial basis functions is added * Changed deprecated torch.scalar_tensor into torch.Tensor Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Converted the float number into tensor Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * fix the united test in test_bond.py * Bump boto3 from 1.35.38 to 1.35.39 Bumps [boto3](https://github.com/boto/boto3) from 1.35.38 to 1.35.39. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.38...1.35.39) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * fix the error from the upgrade of boto3 * Downgrade DGL to 2.2.1 * Downgrade pytorch * fix mypy by adding self.norm_layers is not None * Downgrade Pytorch and DGL version (#392) * improve TensorNet model coverage * Update pyproject.toml Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Improve the unit test for SO(3) equivarance in TensorNet class * improve SO3Net model class coverage and simplify TensorNet implementations * improve the coverage in MLP_norm class * Improve the implementation of three-body interactions * fixed black * Optimize the speed of _compute_3body class * type checking is added for scheduler * update M3GNet Potential training notebook for the demonstration of obtaining and using element offsets * Downgrade sympy to avoid crash of SO3 operations * Smooth l1 loss function is added and united tests are improved * merge the method predict_structure and featurize_structure into a function including both * remove unnecessary else statement for training magmoms * modify so3 operation implementation to make united tests pass due to the update of sympy * skip test_load_all_models for MacOS pytest now * Reference for CHGNet is added * Update README.md and index.md for including CHGNet Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * add more description for using CHGNet pretrained models in Relaxations and Simulations using the M3GNet Universal Potential.ipynb * A command-line interface for performing ASE MD simulations is added * added back py.typed * ExpNormal Smearing for radial basis functions is added * Changed deprecated torch.scalar_tensor into torch.Tensor Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * Converted the float number into tensor Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> * fix the united test in test_bond.py * fix the error from the upgrade of boto3 * Downgrade DGL to 2.2.1 * Downgrade pytorch * fix mypy by adding self.norm_layers is not None --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong * correct the downgrade for torch * fix the version of torchdata * downgrade torch to 2.2.1 --------- Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Signed-off-by: dependabot[bot] Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- tests/utils/test_training.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/utils/test_training.py b/tests/utils/test_training.py index 90c25cf4..0b3f2da2 100644 --- a/tests/utils/test_training.py +++ b/tests/utils/test_training.py @@ -680,7 +680,9 @@ def test_chgnet_training(self, LiFePO4, BaNiO3): generator=torch.Generator(device=device), ) model = CHGNet(element_types=element_types, is_intensive=False) - lit_model = PotentialLightningModule(model=model, stress_weight=0.1, magmom_weight=0.1, include_line_graph=True) + lit_model = PotentialLightningModule( + model=model, stress_weight=0.1, magmom_weight=0.1, include_line_graph=True, magmom_target="symbreak" + ) # We will use CPU if MPS is available since there is a serious bug. trainer = pl.Trainer(max_epochs=2, accelerator=device, inference_mode=False) From 428a0057bc24d27bb8133235ef335dae32c06613 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Oct 2024 22:07:52 +0800 Subject: [PATCH 62/79] Bump pymatgen from 2024.10.3 to 2024.10.22 (#406) Bumps [pymatgen](https://github.com/materialsproject/pymatgen) from 2024.10.3 to 2024.10.22. - [Release notes](https://github.com/materialsproject/pymatgen/releases) - [Changelog](https://github.com/materialsproject/pymatgen/blob/master/docs/CHANGES.md) - [Commits](https://github.com/materialsproject/pymatgen/compare/v2024.10.3...v2024.10.22) --- updated-dependencies: - dependency-name: pymatgen dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index fef7b7c1..0b5d4324 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ dgl==2.2.1 torch==2.2.1 lightning==2.4.0 -pymatgen==2024.10.3 +pymatgen==2024.10.22 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 From 2abba2988b90fbc60988b5725ea5a62789f2561c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Oct 2024 22:08:12 +0800 Subject: [PATCH 63/79] Bump boto3 from 1.35.44 to 1.35.45 (#405) Bumps [boto3](https://github.com/boto/boto3) from 1.35.44 to 1.35.45. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.44...1.35.45) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 0b5d4324..669a9cd0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.22 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.44 +boto3==1.35.45 numpy==1.26.4 sympy==1.13.3 From 4601abb040f5c4ed15b5f6d19a92cd148e734687 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 24 Oct 2024 09:07:37 +0800 Subject: [PATCH 64/79] Bump boto3 from 1.35.45 to 1.35.46 (#407) Bumps [boto3](https://github.com/boto/boto3) from 1.35.45 to 1.35.46. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.45...1.35.46) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 669a9cd0..4a4901dc 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.22 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.45 +boto3==1.35.46 numpy==1.26.4 sympy==1.13.3 From 28b87c84fea3b82108f6f9409ccbda7bdbd432ab Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 25 Oct 2024 10:19:46 +0800 Subject: [PATCH 65/79] Bump boto3 from 1.35.46 to 1.35.47 (#409) Bumps [boto3](https://github.com/boto/boto3) from 1.35.46 to 1.35.47. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.46...1.35.47) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 4a4901dc..59a46be0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.22 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.46 +boto3==1.35.47 numpy==1.26.4 sympy==1.13.3 From 126ea69b17cc1b991b280ddbfb6358d9b8c1dd8a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 25 Oct 2024 22:12:37 +0800 Subject: [PATCH 66/79] Bump boto3 from 1.35.47 to 1.35.48 (#410) Bumps [boto3](https://github.com/boto/boto3) from 1.35.47 to 1.35.48. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.47...1.35.48) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 59a46be0..69d79bf5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.22 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.47 +boto3==1.35.48 numpy==1.26.4 sympy==1.13.3 From 644d9439c83183dde3450f30931f94bec9c2bd77 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Oct 2024 12:26:14 +0800 Subject: [PATCH 67/79] Bump rexml from 3.3.6 to 3.3.9 in /docs (#413) Bumps [rexml](https://github.com/ruby/rexml) from 3.3.6 to 3.3.9. - [Release notes](https://github.com/ruby/rexml/releases) - [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md) - [Commits](https://github.com/ruby/rexml/compare/v3.3.6...v3.3.9) --- updated-dependencies: - dependency-name: rexml dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/Gemfile.lock | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock index 26c8b11c..90c26507 100644 --- a/docs/Gemfile.lock +++ b/docs/Gemfile.lock @@ -224,8 +224,7 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - rexml (3.3.6) - strscan + rexml (3.3.9) rouge (3.26.0) ruby2_keywords (0.0.5) rubyzip (2.3.2) @@ -240,7 +239,6 @@ GEM faraday (>= 0.17.3, < 3) simpleidn (0.2.1) unf (~> 0.1.4) - strscan (3.1.0) terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) typhoeus (1.4.0) From 770c842b8c96febfa3c87589f35bd68538990a50 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Oct 2024 12:55:36 +0800 Subject: [PATCH 68/79] Bump pymatgen from 2024.10.22 to 2024.10.27 (#412) Bumps [pymatgen](https://github.com/materialsproject/pymatgen) from 2024.10.22 to 2024.10.27. - [Release notes](https://github.com/materialsproject/pymatgen/releases) - [Changelog](https://github.com/materialsproject/pymatgen/blob/master/docs/CHANGES.md) - [Commits](https://github.com/materialsproject/pymatgen/compare/v2024.10.22...v2024.10.27) --- updated-dependencies: - dependency-name: pymatgen dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 69d79bf5..c43199c6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ dgl==2.2.1 torch==2.2.1 lightning==2.4.0 -pymatgen==2024.10.22 +pymatgen==2024.10.27 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 From 053c4322488cf548c4380bbafc0668bf1eceabaa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Oct 2024 13:35:56 +0800 Subject: [PATCH 69/79] Bump boto3 from 1.35.48 to 1.35.49 (#411) Bumps [boto3](https://github.com/boto/boto3) from 1.35.48 to 1.35.49. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.48...1.35.49) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index c43199c6..b55b6133 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.27 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.48 +boto3==1.35.49 numpy==1.26.4 sympy==1.13.3 From 2743e72d15da75490a1b3a4645571592bb97a4fc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2024 21:26:41 +0800 Subject: [PATCH 70/79] Bump boto3 from 1.35.49 to 1.35.50 (#415) Bumps [boto3](https://github.com/boto/boto3) from 1.35.49 to 1.35.50. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.49...1.35.50) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index b55b6133..c4ce53a1 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.27 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.49 +boto3==1.35.50 numpy==1.26.4 sympy==1.13.3 From 65d22abd30161dcff2b90923600cbfa2ef3a9dfc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Oct 2024 23:20:25 +0800 Subject: [PATCH 71/79] Bump boto3 from 1.35.50 to 1.35.51 (#417) Bumps [boto3](https://github.com/boto/boto3) from 1.35.50 to 1.35.51. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.50...1.35.51) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index c4ce53a1..9c27709d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,6 @@ pymatgen==2024.10.27 ase==3.23.0 pydantic==2.9.2 torchdata==0.7.1 -boto3==1.35.50 +boto3==1.35.51 numpy==1.26.4 sympy==1.13.3 From bb78cabc1fb0073f26098463950ae65b44dc04d9 Mon Sep 17 00:00:00 2001 From: Bowen Deng <84425382+BowenD-UCB@users.noreply.github.com> Date: Wed, 30 Oct 2024 23:45:21 -0700 Subject: [PATCH 72/79] Added missing dtype in pymatgen graph converter (#418) * added function to allow missing lables for all tasks * fixed bug * minor fixes on testing * adding dtype in converter --- src/matgl/graph/converters.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/matgl/graph/converters.py b/src/matgl/graph/converters.py index cf880239..cb8c9056 100644 --- a/src/matgl/graph/converters.py +++ b/src/matgl/graph/converters.py @@ -50,7 +50,7 @@ def get_graph_from_processed_structure( DGLGraph object, state_attr """ - u, v = torch.tensor(src_id), torch.tensor(dst_id) + u, v = torch.tensor(src_id, dtype=matgl.int_th), torch.tensor(dst_id, dtype=matgl.int_th) g = dgl.graph((u, v), num_nodes=len(structure)) # TODO: Need to check if the variable needs to be double or float, now use float pbc_offset = torch.tensor(images, dtype=matgl.float_th) From f043888bea7953338ea1e4226ee49d9f6ab7967f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 15:52:10 +0800 Subject: [PATCH 73/79] Bump numpy from 1.26.4 to 2.0.1 (#307) Bumps [numpy](https://github.com/numpy/numpy) from 1.26.4 to 2.0.1. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.4...v2.0.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Signed-off-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong Co-authored-by: Tsz Wai Ko <47970742+kenko911@users.noreply.github.com> --- pyproject.toml | 2 +- requirements.txt | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 0bfde7e0..ba02846b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -57,7 +57,7 @@ dependencies = [ "pydantic", "torchdata<=0.7.1", "boto3", - "numpy<2.0.0" + "numpy<3.0.0" ] version = "1.1.3" diff --git a/requirements.txt b/requirements.txt index 9c27709d..67801353 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,8 @@ lightning==2.4.0 pymatgen==2024.10.27 ase==3.23.0 pydantic==2.9.2 +numpy==2.0.1 torchdata==0.7.1 boto3==1.35.51 -numpy==1.26.4 sympy==1.13.3 + From ab080b9a09fa135635dcbd3f2a736658cb1ad5f3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 16:19:19 +0800 Subject: [PATCH 74/79] Bump pymatgen from 2024.10.27 to 2024.10.29 (#416) Bumps [pymatgen](https://github.com/materialsproject/pymatgen) from 2024.10.27 to 2024.10.29. - [Release notes](https://github.com/materialsproject/pymatgen/releases) - [Changelog](https://github.com/materialsproject/pymatgen/blob/master/docs/CHANGES.md) - [Commits](https://github.com/materialsproject/pymatgen/compare/v2024.10.27...v2024.10.29) --- updated-dependencies: - dependency-name: pymatgen dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 67801353..56106dab 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ dgl==2.2.1 torch==2.2.1 lightning==2.4.0 -pymatgen==2024.10.27 +pymatgen==2024.10.29 ase==3.23.0 pydantic==2.9.2 numpy==2.0.1 From ebbfca6124c918768a6e2c20ceb30ea6253eb182 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 22:04:45 +0800 Subject: [PATCH 75/79] Bump numpy from 2.0.1 to 2.1.2 (#420) Bumps [numpy](https://github.com/numpy/numpy) from 2.0.1 to 2.1.2. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.0.1...v2.1.2) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 56106dab..4863fb0a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ lightning==2.4.0 pymatgen==2024.10.29 ase==3.23.0 pydantic==2.9.2 -numpy==2.0.1 +numpy==2.1.2 torchdata==0.7.1 boto3==1.35.51 sympy==1.13.3 From 98cf12651e8baea03439ef2219837da2598b1737 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 23:03:19 +0800 Subject: [PATCH 76/79] Bump boto3 from 1.35.51 to 1.35.52 (#419) Bumps [boto3](https://github.com/boto/boto3) from 1.35.51 to 1.35.52. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.51...1.35.52) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 4863fb0a..41597121 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,6 +6,6 @@ ase==3.23.0 pydantic==2.9.2 numpy==2.1.2 torchdata==0.7.1 -boto3==1.35.51 +boto3==1.35.52 sympy==1.13.3 From 824c1c4cefa9129c0af7066523d1665515f42899 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 1 Nov 2024 21:47:31 +0800 Subject: [PATCH 77/79] Bump boto3 from 1.35.52 to 1.35.53 (#421) Bumps [boto3](https://github.com/boto/boto3) from 1.35.52 to 1.35.53. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.52...1.35.53) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 41597121..b56f9e56 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,6 +6,6 @@ ase==3.23.0 pydantic==2.9.2 numpy==2.1.2 torchdata==0.7.1 -boto3==1.35.52 +boto3==1.35.53 sympy==1.13.3 From 0808d56139dc2a6908eaaf95f356b2ccdb02767e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 08:09:38 +0800 Subject: [PATCH 78/79] Bump boto3 from 1.35.53 to 1.35.54 (#422) Bumps [boto3](https://github.com/boto/boto3) from 1.35.53 to 1.35.54. - [Release notes](https://github.com/boto/boto3/releases) - [Commits](https://github.com/boto/boto3/compare/1.35.53...1.35.54) --- updated-dependencies: - dependency-name: boto3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index b56f9e56..2e247c7f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,6 +6,6 @@ ase==3.23.0 pydantic==2.9.2 numpy==2.1.2 torchdata==0.7.1 -boto3==1.35.53 +boto3==1.35.54 sympy==1.13.3 From 16e9447b0c3f871b05d21dc4a99e9a22eb55e00c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Nov 2024 08:52:35 +0800 Subject: [PATCH 79/79] Bump numpy from 2.1.2 to 2.1.3 (#423) Bumps [numpy](https://github.com/numpy/numpy) from 2.1.2 to 2.1.3. - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v2.1.2...v2.1.3) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 2e247c7f..61660d6d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ lightning==2.4.0 pymatgen==2024.10.29 ase==3.23.0 pydantic==2.9.2 -numpy==2.1.2 +numpy==2.1.3 torchdata==0.7.1 boto3==1.35.54 sympy==1.13.3