Skip to content

Commit ffe658e

Browse files
MLFF dependency groups (#1455)
* ff dep groups * narrow ff dep groups
1 parent e5c2f07 commit ffe658e

2 files changed

Lines changed: 9 additions & 10 deletions

File tree

docs/user/codes/forcefields.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,13 @@
33
# Machine Learning forcefields / interatomic potentials
44

55
`atomate2` includes an interface to a few common machine learning interatomic potentials (MLIPs), also known variously as machine learning forcefields (MLFFs), or foundation potentials (FPs) for universal variants.
6+
These can be installed using `pip install 'atomate2[ase]'`.
67

7-
***As of `atomate2==0.1.1`, most forcefield packages are opt-in only. You must install those forcefields which you plan to use.***
8-
Running `pip install 'atomate2[forcefields]'` will install the `chgnet` package to permit you to try the forcefield classes.
9-
You can then select other forcefields you want to use.
8+
***As of `atomate2==0.1.2`, all forcefield packages are opt-in only. You must install those forcefields which you plan to use.***
9+
10+
Running `pip install 'atomate2[forcefields-demo]'` will install the `chgnet` package to permit you to try the forcefield jobs/workflows.
11+
You can then install additional forcefield libraries.
1012

11-
We have made this choice both to avoid the appearance of favoritism (both `chgnet` and `atomate2` are Materials Project-supported projects), and to avoid dependency conflicts between MLFF packages.
1213
If you need a sense of which forcefields are compatible, you can use the [pyproject.toml](https://github.com/materialsproject/atomate2/blob/a8bc6505e439503a114f5346aec916aafae7f27b/pyproject.toml#L90) to see which versions are grouped together for testing.
1314

1415
Most of `Maker` classes using the forcefields inherit from `atomate2.forcefields.utils.ForceFieldMixin` to specify which forcefield to use.

pyproject.toml

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -55,17 +55,15 @@ defects = [
5555
"python-ulid>=2.7",
5656
]
5757

58-
forcefields = [
59-
"ase>=3.26.0",
60-
"chgnet>=0.4.2",
61-
]
58+
ase = ["ase>=3.26.0"]
59+
ase-ext = ["tblite>=0.3.0; platform_system=='Linux'"]
60+
forcefields-demo = ["chgnet>=0.3.8","atomate2[ase]"]
61+
6262
torchsim = [
6363
"torch-sim-atomistic==0.5.0; python_version >= '3.12'"
6464
]
6565
jdftx = ["pymatgen==2026.3.23"]
6666
approxneb = ["pymatgen-analysis-diffusion>=2024.7.15"]
67-
ase = ["ase>=3.26.0"]
68-
ase-ext = ["tblite>=0.3.0; platform_system=='Linux'"]
6967
openmm = [
7068
"mdanalysis>=2.8.0",
7169
"openmm-mdanalysis-reporter>=0.1.0",

0 commit comments

Comments
 (0)