Spaces:
Running
Running
update external calculator classes; update diatomic curves
Browse files- .gitignore +1 -2
- environment.yml +111 -25
- mlip_arena/models/externals.py +85 -42
- mlip_arena/models/registry.yaml +50 -50
- mlip_arena/tasks/combustion/H256O128.extxyz +386 -0
- mlip_arena/tasks/combustion/water.ipynb +66 -55
- mlip_arena/tasks/diatomics/alignn/run.ipynb +0 -243
- mlip_arena/tasks/diatomics/chgnet/homonuclear-diatomics.json +0 -0
- mlip_arena/tasks/diatomics/equiformer/homonuclear-diatomics.json +0 -0
- mlip_arena/tasks/diatomics/m3gnet/homonuclear-diatomics.json +0 -0
- mlip_arena/tasks/diatomics/mace-mp/homonuclear-diatomics.json +0 -0
- mlip_arena/tasks/diatomics/mace-off/homonuclear-diatomics.json +0 -0
- mlip_arena/tasks/diatomics/orb/homonuclear-diatomics.json +0 -0
- mlip_arena/tasks/diatomics/run.ipynb +0 -0
- mlip_arena/tasks/diatomics/sevennet/homonuclear-diatomics.json +0 -0
- pyproject.toml +25 -4
- scripts/install-pyg.sh +3 -7
- tests/download_models.py +0 -5
- tests/hf_hub.ipynb +0 -480
- tests/oxygen_diatomics.ipynb +0 -0
.gitignore
CHANGED
@@ -1,10 +1,9 @@
|
|
1 |
-
tests/
|
2 |
*.out
|
3 |
*.ipynb
|
4 |
*.extxyz
|
5 |
*.traj
|
6 |
mlip_arena/tasks/*/*/*/
|
7 |
-
|
8 |
|
9 |
# Byte-compiled / optimized / DLL files
|
10 |
__pycache__/
|
|
|
|
|
1 |
*.out
|
2 |
*.ipynb
|
3 |
*.extxyz
|
4 |
*.traj
|
5 |
mlip_arena/tasks/*/*/*/
|
6 |
+
lab/
|
7 |
|
8 |
# Byte-compiled / optimized / DLL files
|
9 |
__pycache__/
|
environment.yml
CHANGED
@@ -1,3 +1,4 @@
|
|
|
|
1 |
channels:
|
2 |
- defaults
|
3 |
- conda-forge
|
@@ -14,7 +15,6 @@ dependencies:
|
|
14 |
- libuuid=1.41.5=h5eee18b_0
|
15 |
- ncurses=6.4=h6a678d5_0
|
16 |
- openssl=3.0.13=h7f8727e_0
|
17 |
-
- pip=23.3.1=py311h06a4308_0
|
18 |
- python=3.11.8=h955ad1f_0
|
19 |
- readline=8.2=h5eee18b_0
|
20 |
- setuptools=68.2.2=py311h06a4308_0
|
@@ -30,6 +30,7 @@ dependencies:
|
|
30 |
- aioitertools==0.11.0
|
31 |
- aiosignal==1.3.1
|
32 |
- aiosqlite==0.20.0
|
|
|
33 |
- alembic==1.13.1
|
34 |
- alignn==2024.5.27
|
35 |
- altair==5.3.0
|
@@ -37,26 +38,38 @@ dependencies:
|
|
37 |
- anyio==3.7.1
|
38 |
- appdirs==1.4.4
|
39 |
- apprise==1.7.5
|
|
|
|
|
|
|
40 |
- ase==3.23.0
|
41 |
- asgi-lifespan==2.1.0
|
42 |
- asttokens==2.4.1
|
|
|
43 |
- async-timeout==4.0.3
|
44 |
- asyncpg==0.29.0
|
45 |
- atomate2==0.0.14.post30+g256b39a1
|
46 |
- attrs==23.2.0
|
47 |
- autograd==1.5
|
|
|
48 |
- autoray==0.6.9
|
|
|
49 |
- bcrypt==4.1.2
|
|
|
50 |
- bidict==0.23.1
|
|
|
51 |
- blinker==1.7.0
|
52 |
- blosc2==2.7.0
|
|
|
|
|
53 |
- boto3==1.34.74
|
54 |
- botocore==1.34.74
|
|
|
|
|
55 |
- cachetools==5.3.3
|
56 |
-
- certifi==2024.
|
57 |
- cffi==1.16.0
|
58 |
- charset-normalizer==3.3.2
|
59 |
-
- chgnet==0.
|
60 |
- click==8.1.7
|
61 |
- cloudpickle==3.0.0
|
62 |
- colorama==0.4.6
|
@@ -71,14 +84,21 @@ dependencies:
|
|
71 |
- cython==3.0.10
|
72 |
- dask==2024.3.1
|
73 |
- dask-jobqueue==0.8.5
|
|
|
74 |
- dateparser==1.2.0
|
75 |
- debugpy==1.8.1
|
76 |
- decorator==5.1.1
|
77 |
-
-
|
|
|
|
|
|
|
|
|
78 |
- distributed==2024.3.1
|
|
|
79 |
- dnspython==2.6.1
|
80 |
- docker==6.1.3
|
81 |
- docker-pycreds==0.4.0
|
|
|
82 |
- e3nn==0.5.1
|
83 |
- email-validator==2.1.1
|
84 |
- emmet-core==0.82.1
|
@@ -86,19 +106,26 @@ dependencies:
|
|
86 |
- fairchem-core==1.0.0
|
87 |
- fastapi==0.110.0
|
88 |
- fastjsonschema==2.20.0
|
89 |
-
- filelock==3.
|
90 |
- fireworks==2.0.3
|
91 |
- flake8==7.1.0
|
92 |
- flask==3.0.2
|
93 |
- flask-paginate==2024.3.28
|
94 |
- fonttools==4.50.0
|
|
|
95 |
- frozenlist==1.4.1
|
96 |
-
- fsspec==2024.
|
97 |
- furl==2.1.3
|
98 |
- future==1.0.0
|
99 |
- gitdb==4.0.11
|
100 |
- gitpython==3.1.43
|
|
|
101 |
- google-auth==2.29.0
|
|
|
|
|
|
|
|
|
|
|
102 |
- gpaw==24.7.0b1
|
103 |
- greenlet==3.0.3
|
104 |
- griffe==0.42.1
|
@@ -113,13 +140,18 @@ dependencies:
|
|
113 |
- httpx==0.27.0
|
114 |
- huggingface-hub==0.22.2
|
115 |
- hyperframe==6.0.1
|
116 |
-
-
|
|
|
|
|
117 |
- importlib-metadata==7.1.0
|
118 |
- importlib-resources==6.1.3
|
119 |
- inflect==7.3.1
|
120 |
- ipykernel==6.29.4
|
|
|
121 |
- ipython==8.22.2
|
122 |
-
- ipywidgets==8.1.
|
|
|
|
|
123 |
- itsdangerous==2.1.2
|
124 |
- jarvis-tools==2024.5.10
|
125 |
- jedi==0.19.1
|
@@ -127,17 +159,29 @@ dependencies:
|
|
127 |
- jmespath==1.0.1
|
128 |
- jobflow==0.1.17
|
129 |
- joblib==1.3.2
|
|
|
130 |
- jsonpatch==1.33
|
131 |
- jsonpointer==2.4
|
132 |
- jsonschema==4.21.1
|
133 |
- jsonschema-specifications==2023.12.1
|
134 |
- jupyter-client==8.6.1
|
135 |
- jupyter-core==5.7.2
|
136 |
-
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
- kiwisolver==1.4.5
|
138 |
- kubernetes==29.0.0
|
139 |
- latexcodec==3.0.0
|
|
|
140 |
- lightning-utilities==0.11.2
|
|
|
141 |
- llvmlite==0.42.0
|
142 |
- lmdb==1.4.1
|
143 |
- lmdbm==0.0.5
|
@@ -149,30 +193,37 @@ dependencies:
|
|
149 |
- markdown==3.6
|
150 |
- markdown-it-py==2.2.0
|
151 |
- markupsafe==2.1.5
|
152 |
-
- matgl==1.
|
153 |
- matplotlib==3.8.3
|
154 |
- matplotlib-inline==0.1.6
|
155 |
- matscipy==1.0.0
|
156 |
- mccabe==0.7.0
|
157 |
- mdurl==0.1.2
|
158 |
-
-
|
|
|
159 |
- mongogrant==0.3.3
|
160 |
- mongomock==4.1.2
|
161 |
-
- monty==2024.
|
162 |
- more-itertools==10.3.0
|
163 |
- mp-api==0.41.2
|
164 |
- mpire==2.10.1
|
165 |
- mpmath==1.3.0
|
166 |
- msgpack==1.0.8
|
167 |
- multidict==6.0.5
|
|
|
168 |
- natsort==8.4.0
|
|
|
|
|
169 |
- nbformat==5.10.4
|
170 |
- ndindex==1.8
|
171 |
- nest-asyncio==1.6.0
|
172 |
- networkx==3.3
|
|
|
|
|
173 |
- numba==0.59.1
|
174 |
- numexpr==2.10.1
|
175 |
- numpy==1.26.4
|
|
|
176 |
- nvidia-cublas-cu12==12.1.3.1
|
177 |
- nvidia-cuda-cupti-cu12==12.1.105
|
178 |
- nvidia-cuda-nvrtc-cu12==12.1.105
|
@@ -183,38 +234,48 @@ dependencies:
|
|
183 |
- nvidia-cusolver-cu12==11.4.5.107
|
184 |
- nvidia-cusparse-cu12==12.1.0.106
|
185 |
- nvidia-ml-py3==7.352.0
|
186 |
-
- nvidia-nccl-cu12==2.
|
187 |
-
- nvidia-nvjitlink-cu12==12.
|
188 |
- nvidia-nvtx-cu12==12.1.105
|
189 |
- oauthlib==3.2.2
|
|
|
190 |
- opt-einsum==3.3.0
|
191 |
- opt-einsum-fx==0.1.4
|
|
|
192 |
- orderedmultidict==1.0.1
|
193 |
- orjson==3.10.0
|
|
|
|
|
194 |
- packaging==24.0
|
195 |
- palettable==3.3.3
|
196 |
- pandas==2.2.2
|
|
|
197 |
- paramiko==3.4.0
|
198 |
- parso==0.8.3
|
199 |
- partd==1.4.1
|
200 |
- pathspec==0.12.1
|
|
|
201 |
- pendulum==2.1.2
|
202 |
- pennylane==0.32.0
|
203 |
- pennylane-lightning==0.33.1
|
204 |
- pexpect==4.9.0
|
205 |
- pillow==10.2.0
|
|
|
206 |
- platformdirs==4.2.0
|
207 |
- plotly==5.20.0
|
208 |
- plumed==2.9.0
|
209 |
- prefect==2.16.8
|
210 |
- prefect-dask==0.2.6
|
211 |
- prettytable==3.10.0
|
|
|
212 |
- prompt-toolkit==3.0.43
|
|
|
213 |
- protobuf==4.25.3
|
214 |
- psutil==6.0.0
|
215 |
- ptyprocess==0.7.0
|
216 |
- pure-eval==0.2.2
|
217 |
- py-cpuinfo==9.0.0
|
|
|
218 |
- pyarrow==16.1.0
|
219 |
- pyasn1==0.6.0
|
220 |
- pyasn1-modules==0.4.0
|
@@ -229,15 +290,17 @@ dependencies:
|
|
229 |
- pydocstyle==6.3.0
|
230 |
- pyflakes==3.2.0
|
231 |
- pygments==2.17.2
|
232 |
-
- pymatgen==2024.
|
233 |
- pymongo==4.6.3
|
234 |
- pynacl==1.5.0
|
|
|
235 |
- pyparsing==2.4.7
|
236 |
- python-dateutil==2.9.0.post0
|
237 |
- python-dotenv==1.0.1
|
238 |
- python-engineio==4.9.0
|
239 |
- python-graphviz==0.20.3
|
240 |
- python-hostlist==1.23.0
|
|
|
241 |
- python-multipart==0.0.9
|
242 |
- python-slugify==8.0.4
|
243 |
- python-socketio==5.11.2
|
@@ -246,12 +309,14 @@ dependencies:
|
|
246 |
- pytzdata==2020.1
|
247 |
- pyyaml==6.0.1
|
248 |
- pyzmq==25.1.2
|
|
|
249 |
- readchar==4.0.6
|
250 |
- referencing==0.34.0
|
251 |
- regex==2023.12.25
|
252 |
- requests==2.32.3
|
253 |
- requests-oauthlib==2.0.0
|
254 |
- rfc3339-validator==0.1.4
|
|
|
255 |
- rich==13.3.5
|
256 |
- rpds-py==0.18.0
|
257 |
- rsa==4.9
|
@@ -260,12 +325,14 @@ dependencies:
|
|
260 |
- rustworkx==0.14.2
|
261 |
- s3transfer==0.10.1
|
262 |
- safetensors==0.4.2
|
263 |
-
- scikit-learn==1.
|
264 |
-
- scipy==1.14.
|
265 |
- semantic-version==2.10.0
|
|
|
266 |
- sentinels==1.0.0
|
267 |
- sentry-sdk==2.7.1
|
268 |
- setproctitle==1.3.3
|
|
|
269 |
- shellingham==1.5.4
|
270 |
- simple-websocket==1.0.0
|
271 |
- simplejson==3.19.2
|
@@ -275,61 +342,80 @@ dependencies:
|
|
275 |
- sniffio==1.3.1
|
276 |
- snowballstemmer==2.2.0
|
277 |
- sortedcontainers==2.4.0
|
278 |
-
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
279 |
- sqlalchemy==1.4.52
|
280 |
- sqlalchemy-utils==0.41.2
|
281 |
- sshtunnel==0.4.0
|
282 |
- stack-data==0.6.3
|
283 |
- starlette==0.36.3
|
|
|
|
|
284 |
- streamlit==1.36.0
|
285 |
- submitit==1.5.1
|
286 |
-
- sympy==1.
|
287 |
- tables==3.9.2
|
288 |
- tabulate==0.9.0
|
289 |
- tblib==3.0.0
|
290 |
- tenacity==8.2.3
|
291 |
- tensorboard==2.17.0
|
292 |
- tensorboard-data-server==0.7.2
|
|
|
293 |
- text-unidecode==1.3
|
294 |
- threadpoolctl==3.4.0
|
|
|
295 |
- toml==0.10.2
|
|
|
296 |
- toolz==0.12.1
|
297 |
-
- torch==2.
|
298 |
- torch-dftd==0.4.0
|
299 |
- torch-ema==0.3
|
300 |
- torch-geometric==2.5.2
|
301 |
- torch-scatter==2.1.2+pt22cu121
|
302 |
- torch-sparse==0.6.18+pt22cu121
|
303 |
-
- torchdata==0.
|
304 |
- torchmetrics==1.3.2
|
305 |
- tornado==6.4
|
306 |
-
- tqdm==4.66.
|
307 |
- trainstation==1.0
|
308 |
- traitlets==5.14.2
|
309 |
-
- triton==2.
|
310 |
- typeguard==4.3.0
|
311 |
- typer==0.12.0
|
312 |
- typer-cli==0.12.0
|
313 |
- typer-slim==0.12.0
|
|
|
314 |
- typing-extensions==4.12.2
|
315 |
- tzdata==2024.1
|
316 |
- tzlocal==5.2
|
317 |
- ujson==5.9.0
|
318 |
- uncertainties==3.1.7
|
319 |
-
-
|
|
|
320 |
- uvicorn==0.18.3
|
321 |
- uvloop==0.19.0
|
322 |
- wandb==0.17.4
|
323 |
- watchdog==4.0.0
|
324 |
- watchfiles==0.21.0
|
325 |
- wcwidth==0.2.13
|
|
|
|
|
326 |
- websocket-client==1.7.0
|
327 |
- websockets==12.0
|
328 |
- werkzeug==3.0.1
|
329 |
-
- widgetsnbextension==4.0.
|
330 |
- wrapt==1.16.0
|
331 |
- wsproto==1.2.0
|
332 |
- xmltodict==0.13.0
|
|
|
|
|
333 |
- yarl==1.9.4
|
334 |
- zict==3.0.0
|
335 |
- zipp==3.18.1
|
|
|
1 |
+
name: mlip-arena
|
2 |
channels:
|
3 |
- defaults
|
4 |
- conda-forge
|
|
|
15 |
- libuuid=1.41.5=h5eee18b_0
|
16 |
- ncurses=6.4=h6a678d5_0
|
17 |
- openssl=3.0.13=h7f8727e_0
|
|
|
18 |
- python=3.11.8=h955ad1f_0
|
19 |
- readline=8.2=h5eee18b_0
|
20 |
- setuptools=68.2.2=py311h06a4308_0
|
|
|
30 |
- aioitertools==0.11.0
|
31 |
- aiosignal==1.3.1
|
32 |
- aiosqlite==0.20.0
|
33 |
+
- alabaster==0.7.16
|
34 |
- alembic==1.13.1
|
35 |
- alignn==2024.5.27
|
36 |
- altair==5.3.0
|
|
|
38 |
- anyio==3.7.1
|
39 |
- appdirs==1.4.4
|
40 |
- apprise==1.7.5
|
41 |
+
- argon2-cffi==23.1.0
|
42 |
+
- argon2-cffi-bindings==21.2.0
|
43 |
+
- arrow==1.3.0
|
44 |
- ase==3.23.0
|
45 |
- asgi-lifespan==2.1.0
|
46 |
- asttokens==2.4.1
|
47 |
+
- async-lru==2.0.4
|
48 |
- async-timeout==4.0.3
|
49 |
- asyncpg==0.29.0
|
50 |
- atomate2==0.0.14.post30+g256b39a1
|
51 |
- attrs==23.2.0
|
52 |
- autograd==1.5
|
53 |
+
- autopep8==2.3.1
|
54 |
- autoray==0.6.9
|
55 |
+
- babel==2.15.0
|
56 |
- bcrypt==4.1.2
|
57 |
+
- beautifulsoup4==4.12.3
|
58 |
- bidict==0.23.1
|
59 |
+
- bleach==6.1.0
|
60 |
- blinker==1.7.0
|
61 |
- blosc2==2.7.0
|
62 |
+
- bokeh==2.4.3
|
63 |
+
- bokeh-sampledata==2024.2
|
64 |
- boto3==1.34.74
|
65 |
- botocore==1.34.74
|
66 |
+
- braceexpand==0.1.7
|
67 |
+
- cached-path==1.6.3
|
68 |
- cachetools==5.3.3
|
69 |
+
- certifi==2024.8.30
|
70 |
- cffi==1.16.0
|
71 |
- charset-normalizer==3.3.2
|
72 |
+
- chgnet==0.4.0
|
73 |
- click==8.1.7
|
74 |
- cloudpickle==3.0.0
|
75 |
- colorama==0.4.6
|
|
|
84 |
- cython==3.0.10
|
85 |
- dask==2024.3.1
|
86 |
- dask-jobqueue==0.8.5
|
87 |
+
- datasets==2.21.0
|
88 |
- dateparser==1.2.0
|
89 |
- debugpy==1.8.1
|
90 |
- decorator==5.1.1
|
91 |
+
- defusedxml==0.7.1
|
92 |
+
- deprecation==2.1.0
|
93 |
+
- dgl==2.4.0+cu121
|
94 |
+
- dglgo==0.0.2
|
95 |
+
- dill==0.3.8
|
96 |
- distributed==2024.3.1
|
97 |
+
- dm-tree==0.1.8
|
98 |
- dnspython==2.6.1
|
99 |
- docker==6.1.3
|
100 |
- docker-pycreds==0.4.0
|
101 |
+
- docutils==0.21.2
|
102 |
- e3nn==0.5.1
|
103 |
- email-validator==2.1.1
|
104 |
- emmet-core==0.82.1
|
|
|
106 |
- fairchem-core==1.0.0
|
107 |
- fastapi==0.110.0
|
108 |
- fastjsonschema==2.20.0
|
109 |
+
- filelock==3.16.1
|
110 |
- fireworks==2.0.3
|
111 |
- flake8==7.1.0
|
112 |
- flask==3.0.2
|
113 |
- flask-paginate==2024.3.28
|
114 |
- fonttools==4.50.0
|
115 |
+
- fqdn==1.5.1
|
116 |
- frozenlist==1.4.1
|
117 |
+
- fsspec==2024.9.0
|
118 |
- furl==2.1.3
|
119 |
- future==1.0.0
|
120 |
- gitdb==4.0.11
|
121 |
- gitpython==3.1.43
|
122 |
+
- google-api-core==2.19.2
|
123 |
- google-auth==2.29.0
|
124 |
+
- google-cloud-core==2.4.1
|
125 |
+
- google-cloud-storage==2.18.2
|
126 |
+
- google-crc32c==1.6.0
|
127 |
+
- google-resumable-media==2.7.2
|
128 |
+
- googleapis-common-protos==1.65.0
|
129 |
- gpaw==24.7.0b1
|
130 |
- greenlet==3.0.3
|
131 |
- griffe==0.42.1
|
|
|
140 |
- httpx==0.27.0
|
141 |
- huggingface-hub==0.22.2
|
142 |
- hyperframe==6.0.1
|
143 |
+
- icalendar==5.0.13
|
144 |
+
- idna==3.10
|
145 |
+
- imagesize==1.4.1
|
146 |
- importlib-metadata==7.1.0
|
147 |
- importlib-resources==6.1.3
|
148 |
- inflect==7.3.1
|
149 |
- ipykernel==6.29.4
|
150 |
+
- ipyspeck==0.6.1
|
151 |
- ipython==8.22.2
|
152 |
+
- ipywidgets==8.1.3
|
153 |
+
- isoduration==20.11.0
|
154 |
+
- isort==5.13.2
|
155 |
- itsdangerous==2.1.2
|
156 |
- jarvis-tools==2024.5.10
|
157 |
- jedi==0.19.1
|
|
|
159 |
- jmespath==1.0.1
|
160 |
- jobflow==0.1.17
|
161 |
- joblib==1.3.2
|
162 |
+
- json5==0.9.25
|
163 |
- jsonpatch==1.33
|
164 |
- jsonpointer==2.4
|
165 |
- jsonschema==4.21.1
|
166 |
- jsonschema-specifications==2023.12.1
|
167 |
- jupyter-client==8.6.1
|
168 |
- jupyter-core==5.7.2
|
169 |
+
- jupyter-events==0.10.0
|
170 |
+
- jupyter-lsp==2.2.5
|
171 |
+
- jupyter-packaging==0.12.3
|
172 |
+
- jupyter-server==2.14.2
|
173 |
+
- jupyter-server-terminals==0.5.3
|
174 |
+
- jupyterlab==4.2.3
|
175 |
+
- jupyterlab-pygments==0.3.0
|
176 |
+
- jupyterlab-server==2.27.2
|
177 |
+
- jupyterlab-widgets==3.0.11
|
178 |
+
- kaleido==0.2.1
|
179 |
- kiwisolver==1.4.5
|
180 |
- kubernetes==29.0.0
|
181 |
- latexcodec==3.0.0
|
182 |
+
- lightning==2.3.3
|
183 |
- lightning-utilities==0.11.2
|
184 |
+
- littleutils==0.2.4
|
185 |
- llvmlite==0.42.0
|
186 |
- lmdb==1.4.1
|
187 |
- lmdbm==0.0.5
|
|
|
193 |
- markdown==3.6
|
194 |
- markdown-it-py==2.2.0
|
195 |
- markupsafe==2.1.5
|
196 |
+
- matgl==1.1.2
|
197 |
- matplotlib==3.8.3
|
198 |
- matplotlib-inline==0.1.6
|
199 |
- matscipy==1.0.0
|
200 |
- mccabe==0.7.0
|
201 |
- mdurl==0.1.2
|
202 |
+
- mistune==3.0.2
|
203 |
+
- mlip-arena==0.0.1a0
|
204 |
- mongogrant==0.3.3
|
205 |
- mongomock==4.1.2
|
206 |
+
- monty==2024.7.30
|
207 |
- more-itertools==10.3.0
|
208 |
- mp-api==0.41.2
|
209 |
- mpire==2.10.1
|
210 |
- mpmath==1.3.0
|
211 |
- msgpack==1.0.8
|
212 |
- multidict==6.0.5
|
213 |
+
- multiprocess==0.70.16
|
214 |
- natsort==8.4.0
|
215 |
+
- nbclient==0.10.0
|
216 |
+
- nbconvert==7.16.4
|
217 |
- nbformat==5.10.4
|
218 |
- ndindex==1.8
|
219 |
- nest-asyncio==1.6.0
|
220 |
- networkx==3.3
|
221 |
+
- notebook==7.2.1
|
222 |
+
- notebook-shim==0.2.4
|
223 |
- numba==0.59.1
|
224 |
- numexpr==2.10.1
|
225 |
- numpy==1.26.4
|
226 |
+
- numpydoc==1.7.0
|
227 |
- nvidia-cublas-cu12==12.1.3.1
|
228 |
- nvidia-cuda-cupti-cu12==12.1.105
|
229 |
- nvidia-cuda-nvrtc-cu12==12.1.105
|
|
|
234 |
- nvidia-cusolver-cu12==11.4.5.107
|
235 |
- nvidia-cusparse-cu12==12.1.0.106
|
236 |
- nvidia-ml-py3==7.352.0
|
237 |
+
- nvidia-nccl-cu12==2.20.5
|
238 |
+
- nvidia-nvjitlink-cu12==12.6.68
|
239 |
- nvidia-nvtx-cu12==12.1.105
|
240 |
- oauthlib==3.2.2
|
241 |
+
- ogb==1.3.6
|
242 |
- opt-einsum==3.3.0
|
243 |
- opt-einsum-fx==0.1.4
|
244 |
+
- orb-models==0.3.1
|
245 |
- orderedmultidict==1.0.1
|
246 |
- orjson==3.10.0
|
247 |
+
- outdated==0.2.2
|
248 |
+
- overrides==7.7.0
|
249 |
- packaging==24.0
|
250 |
- palettable==3.3.3
|
251 |
- pandas==2.2.2
|
252 |
+
- pandocfilters==1.5.1
|
253 |
- paramiko==3.4.0
|
254 |
- parso==0.8.3
|
255 |
- partd==1.4.1
|
256 |
- pathspec==0.12.1
|
257 |
+
- patsy==0.5.6
|
258 |
- pendulum==2.1.2
|
259 |
- pennylane==0.32.0
|
260 |
- pennylane-lightning==0.33.1
|
261 |
- pexpect==4.9.0
|
262 |
- pillow==10.2.0
|
263 |
+
- pip==24.2
|
264 |
- platformdirs==4.2.0
|
265 |
- plotly==5.20.0
|
266 |
- plumed==2.9.0
|
267 |
- prefect==2.16.8
|
268 |
- prefect-dask==0.2.6
|
269 |
- prettytable==3.10.0
|
270 |
+
- prometheus-client==0.20.0
|
271 |
- prompt-toolkit==3.0.43
|
272 |
+
- proto-plus==1.24.0
|
273 |
- protobuf==4.25.3
|
274 |
- psutil==6.0.0
|
275 |
- ptyprocess==0.7.0
|
276 |
- pure-eval==0.2.2
|
277 |
- py-cpuinfo==9.0.0
|
278 |
+
- py3dmol==2.0.0.post2
|
279 |
- pyarrow==16.1.0
|
280 |
- pyasn1==0.6.0
|
281 |
- pyasn1-modules==0.4.0
|
|
|
290 |
- pydocstyle==6.3.0
|
291 |
- pyflakes==3.2.0
|
292 |
- pygments==2.17.2
|
293 |
+
- pymatgen==2024.9.17.1
|
294 |
- pymongo==4.6.3
|
295 |
- pynacl==1.5.0
|
296 |
+
- pynanoflann==0.0.9
|
297 |
- pyparsing==2.4.7
|
298 |
- python-dateutil==2.9.0.post0
|
299 |
- python-dotenv==1.0.1
|
300 |
- python-engineio==4.9.0
|
301 |
- python-graphviz==0.20.3
|
302 |
- python-hostlist==1.23.0
|
303 |
+
- python-json-logger==2.0.7
|
304 |
- python-multipart==0.0.9
|
305 |
- python-slugify==8.0.4
|
306 |
- python-socketio==5.11.2
|
|
|
309 |
- pytzdata==2020.1
|
310 |
- pyyaml==6.0.1
|
311 |
- pyzmq==25.1.2
|
312 |
+
- rdkit-pypi==2022.9.5
|
313 |
- readchar==4.0.6
|
314 |
- referencing==0.34.0
|
315 |
- regex==2023.12.25
|
316 |
- requests==2.32.3
|
317 |
- requests-oauthlib==2.0.0
|
318 |
- rfc3339-validator==0.1.4
|
319 |
+
- rfc3986-validator==0.1.1
|
320 |
- rich==13.3.5
|
321 |
- rpds-py==0.18.0
|
322 |
- rsa==4.9
|
|
|
325 |
- rustworkx==0.14.2
|
326 |
- s3transfer==0.10.1
|
327 |
- safetensors==0.4.2
|
328 |
+
- scikit-learn==1.5.2
|
329 |
+
- scipy==1.14.1
|
330 |
- semantic-version==2.10.0
|
331 |
+
- send2trash==1.8.3
|
332 |
- sentinels==1.0.0
|
333 |
- sentry-sdk==2.7.1
|
334 |
- setproctitle==1.3.3
|
335 |
+
- sevenn==0.9.3.post1
|
336 |
- shellingham==1.5.4
|
337 |
- simple-websocket==1.0.0
|
338 |
- simplejson==3.19.2
|
|
|
342 |
- sniffio==1.3.1
|
343 |
- snowballstemmer==2.2.0
|
344 |
- sortedcontainers==2.4.0
|
345 |
+
- soupsieve==2.5
|
346 |
+
- spglib==2.5.0
|
347 |
+
- sphinx==7.4.7
|
348 |
+
- sphinxcontrib-applehelp==1.0.8
|
349 |
+
- sphinxcontrib-devhelp==1.0.6
|
350 |
+
- sphinxcontrib-htmlhelp==2.0.6
|
351 |
+
- sphinxcontrib-jsmath==1.0.1
|
352 |
+
- sphinxcontrib-qthelp==1.0.8
|
353 |
+
- sphinxcontrib-serializinghtml==1.1.10
|
354 |
- sqlalchemy==1.4.52
|
355 |
- sqlalchemy-utils==0.41.2
|
356 |
- sshtunnel==0.4.0
|
357 |
- stack-data==0.6.3
|
358 |
- starlette==0.36.3
|
359 |
+
- statsmodels==0.14.2
|
360 |
+
- stmol==0.0.9
|
361 |
- streamlit==1.36.0
|
362 |
- submitit==1.5.1
|
363 |
+
- sympy==1.13.3
|
364 |
- tables==3.9.2
|
365 |
- tabulate==0.9.0
|
366 |
- tblib==3.0.0
|
367 |
- tenacity==8.2.3
|
368 |
- tensorboard==2.17.0
|
369 |
- tensorboard-data-server==0.7.2
|
370 |
+
- terminado==0.18.1
|
371 |
- text-unidecode==1.3
|
372 |
- threadpoolctl==3.4.0
|
373 |
+
- tinycss2==1.3.0
|
374 |
- toml==0.10.2
|
375 |
+
- tomlkit==0.13.0
|
376 |
- toolz==0.12.1
|
377 |
+
- torch==2.3.1
|
378 |
- torch-dftd==0.4.0
|
379 |
- torch-ema==0.3
|
380 |
- torch-geometric==2.5.2
|
381 |
- torch-scatter==2.1.2+pt22cu121
|
382 |
- torch-sparse==0.6.18+pt22cu121
|
383 |
+
- torchdata==0.8.0
|
384 |
- torchmetrics==1.3.2
|
385 |
- tornado==6.4
|
386 |
+
- tqdm==4.66.5
|
387 |
- trainstation==1.0
|
388 |
- traitlets==5.14.2
|
389 |
+
- triton==2.3.1
|
390 |
- typeguard==4.3.0
|
391 |
- typer==0.12.0
|
392 |
- typer-cli==0.12.0
|
393 |
- typer-slim==0.12.0
|
394 |
+
- types-python-dateutil==2.9.0.20240316
|
395 |
- typing-extensions==4.12.2
|
396 |
- tzdata==2024.1
|
397 |
- tzlocal==5.2
|
398 |
- ujson==5.9.0
|
399 |
- uncertainties==3.1.7
|
400 |
+
- uri-template==1.3.0
|
401 |
+
- urllib3==2.2.3
|
402 |
- uvicorn==0.18.3
|
403 |
- uvloop==0.19.0
|
404 |
- wandb==0.17.4
|
405 |
- watchdog==4.0.0
|
406 |
- watchfiles==0.21.0
|
407 |
- wcwidth==0.2.13
|
408 |
+
- webcolors==24.6.0
|
409 |
+
- webencodings==0.5.1
|
410 |
- websocket-client==1.7.0
|
411 |
- websockets==12.0
|
412 |
- werkzeug==3.0.1
|
413 |
+
- widgetsnbextension==4.0.11
|
414 |
- wrapt==1.16.0
|
415 |
- wsproto==1.2.0
|
416 |
- xmltodict==0.13.0
|
417 |
+
- xxhash==3.5.0
|
418 |
+
- xyzservices==2024.6.0
|
419 |
- yarl==1.9.4
|
420 |
- zict==3.0.0
|
421 |
- zipp==3.18.1
|
mlip_arena/models/externals.py
CHANGED
@@ -1,8 +1,11 @@
|
|
|
|
|
|
1 |
import os
|
2 |
-
import
|
3 |
from typing import Literal
|
4 |
|
5 |
import matgl
|
|
|
6 |
import torch
|
7 |
from alignn.ff.ff import AlignnAtomwiseCalculator, get_figshare_model_ff
|
8 |
from ase import Atoms
|
@@ -52,26 +55,28 @@ def get_freer_device() -> torch.device:
|
|
52 |
|
53 |
|
54 |
class MACE_MP_Medium(MACECalculator):
|
55 |
-
def __init__(
|
56 |
-
|
57 |
-
|
|
|
|
|
|
|
|
|
|
|
58 |
checkpoint_url_name = "".join(
|
59 |
-
c for c in os.path.basename(
|
60 |
)
|
61 |
cached_model_path = f"{cache_dir}/{checkpoint_url_name}"
|
62 |
if not os.path.isfile(cached_model_path):
|
|
|
|
|
63 |
os.makedirs(cache_dir, exist_ok=True)
|
64 |
-
|
65 |
-
print(f"Downloading MACE model from {checkpoint_url!r}")
|
66 |
-
_, http_msg = urllib.request.urlretrieve(checkpoint_url, cached_model_path)
|
67 |
if "Content-Type: text/html" in http_msg:
|
68 |
raise RuntimeError(
|
69 |
-
f"Model download failed, please check the URL {
|
70 |
)
|
71 |
-
print(f"Cached MACE model to {cached_model_path}")
|
72 |
model = cached_model_path
|
73 |
-
msg = f"Using Materials Project MACE for MACECalculator with {model}"
|
74 |
-
print(msg)
|
75 |
|
76 |
device = device or str(get_freer_device())
|
77 |
|
@@ -80,27 +85,30 @@ class MACE_MP_Medium(MACECalculator):
|
|
80 |
)
|
81 |
|
82 |
|
|
|
83 |
class MACE_OFF_Medium(MACECalculator):
|
84 |
-
def __init__(
|
85 |
-
|
86 |
-
|
|
|
|
|
|
|
|
|
|
|
87 |
checkpoint_url_name = "".join(
|
88 |
-
c for c in os.path.basename(
|
89 |
)
|
90 |
cached_model_path = f"{cache_dir}/{checkpoint_url_name}"
|
91 |
if not os.path.isfile(cached_model_path):
|
|
|
|
|
92 |
os.makedirs(cache_dir, exist_ok=True)
|
93 |
-
|
94 |
-
print(f"Downloading MACE model from {checkpoint_url!r}")
|
95 |
-
_, http_msg = urllib.request.urlretrieve(checkpoint_url, cached_model_path)
|
96 |
if "Content-Type: text/html" in http_msg:
|
97 |
raise RuntimeError(
|
98 |
-
f"Model download failed, please check the URL {
|
99 |
)
|
100 |
-
print(f"Cached MACE model to {cached_model_path}")
|
101 |
model = cached_model_path
|
102 |
-
msg = f"Using Materials Project MACE for MACECalculator with {model}"
|
103 |
-
print(msg)
|
104 |
|
105 |
device = device or str(get_freer_device())
|
106 |
|
@@ -112,15 +120,15 @@ class MACE_OFF_Medium(MACECalculator):
|
|
112 |
class CHGNet(CHGNetCalculator):
|
113 |
def __init__(
|
114 |
self,
|
115 |
-
|
116 |
-
|
117 |
stress_weight: float | None = 1 / 160.21766208,
|
118 |
on_isolated_atoms: Literal["ignore", "warn", "error"] = "warn",
|
119 |
**kwargs,
|
120 |
) -> None:
|
121 |
-
use_device =
|
122 |
super().__init__(
|
123 |
-
model=
|
124 |
use_device=use_device,
|
125 |
stress_weight=stress_weight,
|
126 |
on_isolated_atoms=on_isolated_atoms,
|
@@ -142,28 +150,31 @@ class CHGNet(CHGNetCalculator):
|
|
142 |
class M3GNet(PESCalculator):
|
143 |
def __init__(
|
144 |
self,
|
|
|
|
|
145 |
state_attr: torch.Tensor | None = None,
|
146 |
stress_weight: float = 1.0,
|
147 |
**kwargs,
|
148 |
) -> None:
|
149 |
-
potential = matgl.load_model(
|
150 |
super().__init__(potential, state_attr, stress_weight, **kwargs)
|
151 |
|
152 |
|
153 |
class EquiformerV2(OCPCalculator):
|
154 |
def __init__(
|
155 |
self,
|
156 |
-
|
|
|
157 |
local_cache="/tmp/ocp/",
|
158 |
cpu=False,
|
159 |
seed=0,
|
160 |
**kwargs,
|
161 |
) -> None:
|
162 |
super().__init__(
|
163 |
-
model_name=
|
164 |
local_cache=local_cache,
|
165 |
cpu=cpu,
|
166 |
-
seed=
|
167 |
**kwargs,
|
168 |
)
|
169 |
|
@@ -178,17 +189,18 @@ class EquiformerV2(OCPCalculator):
|
|
178 |
class EquiformerV2OC20(OCPCalculator):
|
179 |
def __init__(
|
180 |
self,
|
181 |
-
|
|
|
182 |
local_cache="/tmp/ocp/",
|
183 |
cpu=False,
|
184 |
seed=0,
|
185 |
**kwargs,
|
186 |
) -> None:
|
187 |
super().__init__(
|
188 |
-
model_name=
|
189 |
local_cache=local_cache,
|
190 |
cpu=cpu,
|
191 |
-
seed=
|
192 |
**kwargs,
|
193 |
)
|
194 |
|
@@ -196,17 +208,18 @@ class EquiformerV2OC20(OCPCalculator):
|
|
196 |
class eSCN(OCPCalculator):
|
197 |
def __init__(
|
198 |
self,
|
199 |
-
|
|
|
200 |
local_cache="/tmp/ocp/",
|
201 |
cpu=False,
|
202 |
seed=0,
|
203 |
**kwargs,
|
204 |
) -> None:
|
205 |
super().__init__(
|
206 |
-
model_name=
|
207 |
local_cache=local_cache,
|
208 |
cpu=cpu,
|
209 |
-
seed=
|
210 |
**kwargs,
|
211 |
)
|
212 |
|
@@ -219,20 +232,50 @@ class eSCN(OCPCalculator):
|
|
219 |
|
220 |
|
221 |
class ALIGNN(AlignnAtomwiseCalculator):
|
222 |
-
def __init__(self, dir_path: str = "/tmp/alignn/",
|
|
|
223 |
_ = get_figshare_model_ff(dir_path=dir_path)
|
224 |
device = device or get_freer_device()
|
225 |
super().__init__(path=dir_path, device=device, **kwargs)
|
226 |
|
227 |
|
228 |
class SevenNet(SevenNetCalculator):
|
229 |
-
def __init__(
|
|
|
|
|
|
|
|
|
|
|
230 |
device = device or get_freer_device()
|
231 |
-
super().__init__(
|
232 |
|
233 |
|
234 |
class ORB(ORBCalculator):
|
235 |
-
def __init__(
|
|
|
|
|
|
|
|
|
|
|
236 |
device = device or get_freer_device()
|
237 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
238 |
super().__init__(orbff, device=device, **kwargs)
|
|
|
1 |
+
from __future__ import annotations
|
2 |
+
|
3 |
import os
|
4 |
+
from pathlib import Path
|
5 |
from typing import Literal
|
6 |
|
7 |
import matgl
|
8 |
+
import requests
|
9 |
import torch
|
10 |
from alignn.ff.ff import AlignnAtomwiseCalculator, get_figshare_model_ff
|
11 |
from ase import Atoms
|
|
|
55 |
|
56 |
|
57 |
class MACE_MP_Medium(MACECalculator):
|
58 |
+
def __init__(
|
59 |
+
self,
|
60 |
+
checkpoint="http://tinyurl.com/5yyxdm76",
|
61 |
+
device: str | None = None,
|
62 |
+
default_dtype="float32",
|
63 |
+
**kwargs,
|
64 |
+
):
|
65 |
+
cache_dir = Path.home() / ".cache" / "mace"
|
66 |
checkpoint_url_name = "".join(
|
67 |
+
c for c in os.path.basename(checkpoint) if c.isalnum() or c in "_"
|
68 |
)
|
69 |
cached_model_path = f"{cache_dir}/{checkpoint_url_name}"
|
70 |
if not os.path.isfile(cached_model_path):
|
71 |
+
import urllib
|
72 |
+
|
73 |
os.makedirs(cache_dir, exist_ok=True)
|
74 |
+
_, http_msg = urllib.request.urlretrieve(checkpoint, cached_model_path)
|
|
|
|
|
75 |
if "Content-Type: text/html" in http_msg:
|
76 |
raise RuntimeError(
|
77 |
+
f"Model download failed, please check the URL {checkpoint}"
|
78 |
)
|
|
|
79 |
model = cached_model_path
|
|
|
|
|
80 |
|
81 |
device = device or str(get_freer_device())
|
82 |
|
|
|
85 |
)
|
86 |
|
87 |
|
88 |
+
# TODO: could share the same class with MACE_MP_Medium
|
89 |
class MACE_OFF_Medium(MACECalculator):
|
90 |
+
def __init__(
|
91 |
+
self,
|
92 |
+
checkpoint="https://github.com/ACEsuit/mace-off/raw/main/mace_off23/MACE-OFF23_medium.model?raw=true",
|
93 |
+
device: str | None = None,
|
94 |
+
default_dtype="float32",
|
95 |
+
**kwargs,
|
96 |
+
):
|
97 |
+
cache_dir = Path.home() / ".cache" / "mace"
|
98 |
checkpoint_url_name = "".join(
|
99 |
+
c for c in os.path.basename(checkpoint) if c.isalnum() or c in "_"
|
100 |
)
|
101 |
cached_model_path = f"{cache_dir}/{checkpoint_url_name}"
|
102 |
if not os.path.isfile(cached_model_path):
|
103 |
+
import urllib
|
104 |
+
|
105 |
os.makedirs(cache_dir, exist_ok=True)
|
106 |
+
_, http_msg = urllib.request.urlretrieve(checkpoint, cached_model_path)
|
|
|
|
|
107 |
if "Content-Type: text/html" in http_msg:
|
108 |
raise RuntimeError(
|
109 |
+
f"Model download failed, please check the URL {checkpoint}"
|
110 |
)
|
|
|
111 |
model = cached_model_path
|
|
|
|
|
112 |
|
113 |
device = device or str(get_freer_device())
|
114 |
|
|
|
120 |
class CHGNet(CHGNetCalculator):
|
121 |
def __init__(
|
122 |
self,
|
123 |
+
checkpoint: CHGNetModel | None = None, # TODO: specifiy version
|
124 |
+
device: str | None = None,
|
125 |
stress_weight: float | None = 1 / 160.21766208,
|
126 |
on_isolated_atoms: Literal["ignore", "warn", "error"] = "warn",
|
127 |
**kwargs,
|
128 |
) -> None:
|
129 |
+
use_device = device or str(get_freer_device())
|
130 |
super().__init__(
|
131 |
+
model=checkpoint,
|
132 |
use_device=use_device,
|
133 |
stress_weight=stress_weight,
|
134 |
on_isolated_atoms=on_isolated_atoms,
|
|
|
150 |
class M3GNet(PESCalculator):
|
151 |
def __init__(
|
152 |
self,
|
153 |
+
checkpoint="M3GNet-MP-2021.2.8-PES",
|
154 |
+
# TODO: cannot assign device
|
155 |
state_attr: torch.Tensor | None = None,
|
156 |
stress_weight: float = 1.0,
|
157 |
**kwargs,
|
158 |
) -> None:
|
159 |
+
potential = matgl.load_model(checkpoint)
|
160 |
super().__init__(potential, state_attr, stress_weight, **kwargs)
|
161 |
|
162 |
|
163 |
class EquiformerV2(OCPCalculator):
|
164 |
def __init__(
|
165 |
self,
|
166 |
+
checkpoint="EquiformerV2-lE4-lF100-S2EFS-OC22", # TODO: import from registry
|
167 |
+
# TODO: cannot assign device
|
168 |
local_cache="/tmp/ocp/",
|
169 |
cpu=False,
|
170 |
seed=0,
|
171 |
**kwargs,
|
172 |
) -> None:
|
173 |
super().__init__(
|
174 |
+
model_name=checkpoint,
|
175 |
local_cache=local_cache,
|
176 |
cpu=cpu,
|
177 |
+
seed=seed,
|
178 |
**kwargs,
|
179 |
)
|
180 |
|
|
|
189 |
class EquiformerV2OC20(OCPCalculator):
|
190 |
def __init__(
|
191 |
self,
|
192 |
+
checkpoint="EquiformerV2-31M-S2EF-OC20-All+MD", # TODO: import from registry
|
193 |
+
# TODO: cannot assign device
|
194 |
local_cache="/tmp/ocp/",
|
195 |
cpu=False,
|
196 |
seed=0,
|
197 |
**kwargs,
|
198 |
) -> None:
|
199 |
super().__init__(
|
200 |
+
model_name=checkpoint,
|
201 |
local_cache=local_cache,
|
202 |
cpu=cpu,
|
203 |
+
seed=seed,
|
204 |
**kwargs,
|
205 |
)
|
206 |
|
|
|
208 |
class eSCN(OCPCalculator):
|
209 |
def __init__(
|
210 |
self,
|
211 |
+
checkpoint="eSCN-L6-M3-Lay20-S2EF-OC20-All+MD", # TODO: import from registry
|
212 |
+
# TODO: cannot assign device
|
213 |
local_cache="/tmp/ocp/",
|
214 |
cpu=False,
|
215 |
seed=0,
|
216 |
**kwargs,
|
217 |
) -> None:
|
218 |
super().__init__(
|
219 |
+
model_name=checkpoint,
|
220 |
local_cache=local_cache,
|
221 |
cpu=cpu,
|
222 |
+
seed=seed,
|
223 |
**kwargs,
|
224 |
)
|
225 |
|
|
|
232 |
|
233 |
|
234 |
class ALIGNN(AlignnAtomwiseCalculator):
|
235 |
+
def __init__(self, device=None, dir_path: str = "/tmp/alignn/", **kwargs) -> None:
|
236 |
+
# TODO: cannot control version
|
237 |
_ = get_figshare_model_ff(dir_path=dir_path)
|
238 |
device = device or get_freer_device()
|
239 |
super().__init__(path=dir_path, device=device, **kwargs)
|
240 |
|
241 |
|
242 |
class SevenNet(SevenNetCalculator):
|
243 |
+
def __init__(
|
244 |
+
self,
|
245 |
+
checkpoint="7net-0", # TODO: import from registry
|
246 |
+
device=None,
|
247 |
+
**kwargs,
|
248 |
+
):
|
249 |
device = device or get_freer_device()
|
250 |
+
super().__init__(checkpoint, device=device, **kwargs)
|
251 |
|
252 |
|
253 |
class ORB(ORBCalculator):
|
254 |
+
def __init__(
|
255 |
+
self,
|
256 |
+
checkpoint="orbff-v1-20240827.ckpt",
|
257 |
+
device=None,
|
258 |
+
**kwargs,
|
259 |
+
):
|
260 |
device = device or get_freer_device()
|
261 |
+
|
262 |
+
cache_dir = Path.home() / ".cache" / "orb"
|
263 |
+
cache_dir.mkdir(parents=True, exist_ok=True)
|
264 |
+
ckpt_path = cache_dir / "orbff-v1-20240827.ckpt"
|
265 |
+
|
266 |
+
url = f"https://storage.googleapis.com/orbitalmaterials-public-models/forcefields/{checkpoint}"
|
267 |
+
|
268 |
+
if not ckpt_path.exists():
|
269 |
+
print(f"Downloading ORB model from {url} to {ckpt_path}...")
|
270 |
+
try:
|
271 |
+
response = requests.get(url, stream=True, timeout=120)
|
272 |
+
response.raise_for_status()
|
273 |
+
with open(ckpt_path, "wb") as f:
|
274 |
+
for chunk in response.iter_content(chunk_size=8192):
|
275 |
+
f.write(chunk)
|
276 |
+
print("Download completed.")
|
277 |
+
except requests.exceptions.RequestException as e:
|
278 |
+
raise RuntimeError("Failed to download ORB model.") from e
|
279 |
+
|
280 |
+
orbff = pretrained.orb_v1(weights_path=ckpt_path, device=device)
|
281 |
super().__init__(orbff, device=device, **kwargs)
|
mlip_arena/models/registry.yaml
CHANGED
@@ -27,7 +27,7 @@ CHGNet:
|
|
27 |
module: externals
|
28 |
class: CHGNet
|
29 |
family: chgnet
|
30 |
-
package: chgnet==0.3.
|
31 |
checkpoint:
|
32 |
username: cyrusyc
|
33 |
last-update: 2024-07-08T00:00:00
|
@@ -66,6 +66,54 @@ M3GNet:
|
|
66 |
nvt: true
|
67 |
npt: true
|
68 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
69 |
EquiformerV2(OC22):
|
70 |
module: externals
|
71 |
class: EquiformerV2
|
@@ -169,52 +217,4 @@ ALIGNN:
|
|
169 |
npt: true
|
170 |
github: https://github.com/usnistgov/alignn
|
171 |
doi: https://doi.org/10.1038/s41524-021-00650-1
|
172 |
-
date: 2021-11-15
|
173 |
-
|
174 |
-
SevenNet:
|
175 |
-
module: externals
|
176 |
-
class: SevenNet
|
177 |
-
family: sevennet
|
178 |
-
package: sevenn==0.9.4
|
179 |
-
checkpoint: 7net-0
|
180 |
-
username: cyrusyc
|
181 |
-
last-update: 2024-03-25T14:30:00
|
182 |
-
datetime: 2024-03-25T14:30:00 # TODO: Fake datetime
|
183 |
-
datasets:
|
184 |
-
- atomind/mptrj # TODO: fake HF dataset repo
|
185 |
-
cpu-tasks:
|
186 |
-
- alexandria
|
187 |
-
- qmof
|
188 |
-
gpu-tasks:
|
189 |
-
- homonuclear-diatomics
|
190 |
-
- combustion
|
191 |
-
github: https://github.com/MDIL-SNU/SevenNet
|
192 |
-
doi: https://doi.org/10.1021/acs.jctc.4c00190
|
193 |
-
date: 2024-07-11
|
194 |
-
prediction: EFS
|
195 |
-
nvt: true
|
196 |
-
npt: true
|
197 |
-
|
198 |
-
ORB:
|
199 |
-
module: externals
|
200 |
-
class: ORB
|
201 |
-
family: orb
|
202 |
-
package: orb-models==0.3.1
|
203 |
-
checkpoint: orb_v1
|
204 |
-
username: cyrusyc
|
205 |
-
last-update: 2024-03-25T14:30:00
|
206 |
-
datetime: 2024-03-25T14:30:00 # TODO: Fake datetime
|
207 |
-
datasets:
|
208 |
-
- atomind/mptrj # TODO: fake HF dataset repo
|
209 |
-
- atomind/alexandria
|
210 |
-
cpu-tasks:
|
211 |
-
- alexandria
|
212 |
-
- qmof
|
213 |
-
gpu-tasks:
|
214 |
-
- homonuclear-diatomics
|
215 |
-
github: https://github.com/orbital-materials/orb-models
|
216 |
-
doi:
|
217 |
-
date: 2024-09-03
|
218 |
-
prediction: EFS
|
219 |
-
nvt: true
|
220 |
-
npt: true
|
|
|
27 |
module: externals
|
28 |
class: CHGNet
|
29 |
family: chgnet
|
30 |
+
package: chgnet==0.3.8
|
31 |
checkpoint:
|
32 |
username: cyrusyc
|
33 |
last-update: 2024-07-08T00:00:00
|
|
|
66 |
nvt: true
|
67 |
npt: true
|
68 |
|
69 |
+
ORB:
|
70 |
+
module: externals
|
71 |
+
class: ORB
|
72 |
+
family: orb
|
73 |
+
package: orb-models==0.3.1
|
74 |
+
checkpoint: orbff-v1-20240827.ckpt
|
75 |
+
username: cyrusyc
|
76 |
+
last-update: 2024-03-25T14:30:00
|
77 |
+
datetime: 2024-03-25T14:30:00 # TODO: Fake datetime
|
78 |
+
datasets:
|
79 |
+
- atomind/mptrj # TODO: fake HF dataset repo
|
80 |
+
- atomind/alexandria
|
81 |
+
cpu-tasks:
|
82 |
+
- alexandria
|
83 |
+
- qmof
|
84 |
+
gpu-tasks:
|
85 |
+
- homonuclear-diatomics
|
86 |
+
github: https://github.com/orbital-materials/orb-models
|
87 |
+
doi:
|
88 |
+
date: 2024-09-03
|
89 |
+
prediction: EFS
|
90 |
+
nvt: true
|
91 |
+
npt: true
|
92 |
+
|
93 |
+
SevenNet:
|
94 |
+
module: externals
|
95 |
+
class: SevenNet
|
96 |
+
family: sevennet
|
97 |
+
package: sevenn==0.9.4
|
98 |
+
checkpoint: 7net-0
|
99 |
+
username: cyrusyc
|
100 |
+
last-update: 2024-03-25T14:30:00
|
101 |
+
datetime: 2024-03-25T14:30:00 # TODO: Fake datetime
|
102 |
+
datasets:
|
103 |
+
- atomind/mptrj # TODO: fake HF dataset repo
|
104 |
+
cpu-tasks:
|
105 |
+
- alexandria
|
106 |
+
- qmof
|
107 |
+
gpu-tasks:
|
108 |
+
- homonuclear-diatomics
|
109 |
+
- combustion
|
110 |
+
github: https://github.com/MDIL-SNU/SevenNet
|
111 |
+
doi: https://doi.org/10.1021/acs.jctc.4c00190
|
112 |
+
date: 2024-07-11
|
113 |
+
prediction: EFS
|
114 |
+
nvt: true
|
115 |
+
npt: true
|
116 |
+
|
117 |
EquiformerV2(OC22):
|
118 |
module: externals
|
119 |
class: EquiformerV2
|
|
|
217 |
npt: true
|
218 |
github: https://github.com/usnistgov/alignn
|
219 |
doi: https://doi.org/10.1038/s41524-021-00650-1
|
220 |
+
date: 2021-11-15
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mlip_arena/tasks/combustion/H256O128.extxyz
ADDED
@@ -0,0 +1,386 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
384
|
2 |
+
Lattice="30.0 0.0 0.0 0.0 30.0 0.0 0.0 0.0 30.0" Properties=species:S:1:pos:R:3 Built=T with=T Packmol=T pbc="T T T"
|
3 |
+
H 6.71669500 27.40330700 13.68784000
|
4 |
+
H 6.56413900 26.94187400 13.13356600
|
5 |
+
H 4.01874500 24.54731500 2.42614400
|
6 |
+
H 4.06326800 24.60306800 1.69243900
|
7 |
+
H 19.81990800 11.97306900 11.66638000
|
8 |
+
H 19.80020800 12.70644500 11.59436300
|
9 |
+
H 28.98607000 12.86336400 12.19767400
|
10 |
+
H 29.00971400 12.88360500 12.93418200
|
11 |
+
H 10.37632500 7.60336700 9.09607600
|
12 |
+
H 10.09412100 7.01607100 9.44083300
|
13 |
+
H 10.21969400 27.00047900 10.37176700
|
14 |
+
H 9.56226800 26.66727600 10.35833100
|
15 |
+
H 3.51642300 4.64618300 13.26100400
|
16 |
+
H 3.19087000 4.01330300 13.06893100
|
17 |
+
H 17.07272200 26.43633800 3.97721600
|
18 |
+
H 17.76156200 26.60077000 4.18185100
|
19 |
+
H 3.58254200 8.40601100 1.85885100
|
20 |
+
H 3.32028600 8.99119200 1.49526000
|
21 |
+
H 20.93526200 14.99894700 19.94272400
|
22 |
+
H 20.92651600 14.99223100 20.67980700
|
23 |
+
H 26.78606500 14.69290300 18.64689300
|
24 |
+
H 26.43088200 14.16219600 19.01514500
|
25 |
+
H 23.31077000 25.02192200 25.42458800
|
26 |
+
H 23.23137700 24.98837100 26.15669800
|
27 |
+
H 4.23870900 22.06352800 2.24193700
|
28 |
+
H 4.13605700 21.89474500 2.95214000
|
29 |
+
H 17.19183000 13.50635300 20.97020900
|
30 |
+
H 17.33285700 13.55720300 20.24844800
|
31 |
+
H 11.40128700 21.01758100 13.20015300
|
32 |
+
H 11.23939200 21.24064200 13.88385500
|
33 |
+
H 8.08553400 17.35614800 4.83985100
|
34 |
+
H 7.85698800 18.00868300 4.58416100
|
35 |
+
H 18.23851700 17.87971000 18.64072400
|
36 |
+
H 18.18586700 17.93400600 19.37400000
|
37 |
+
H 7.67448900 9.27045600 9.58857400
|
38 |
+
H 8.38197500 9.28217700 9.38183700
|
39 |
+
H 22.81810900 7.01891100 11.62916000
|
40 |
+
H 23.02343500 6.88860700 10.93326000
|
41 |
+
H 7.00678500 28.41965000 16.15063200
|
42 |
+
H 6.61194800 29.00429800 16.36441700
|
43 |
+
H 10.22790300 12.62515700 19.02217900
|
44 |
+
H 10.06283300 12.03600000 19.43334700
|
45 |
+
H 5.67633000 19.26890500 3.09689400
|
46 |
+
H 6.16859600 19.35120500 3.63940200
|
47 |
+
H 7.83689900 28.57325000 6.00799800
|
48 |
+
H 8.20904000 29.01838100 5.55326500
|
49 |
+
H 24.24356500 1.95484800 23.83583200
|
50 |
+
H 24.33048700 1.23652000 23.97677000
|
51 |
+
H 8.15609200 12.56884200 2.83826200
|
52 |
+
H 8.47473700 12.51613700 2.17561500
|
53 |
+
H 1.98944400 22.63517100 9.38706600
|
54 |
+
H 1.99816600 22.52032700 8.65895300
|
55 |
+
H 3.21198500 13.34481400 26.27085600
|
56 |
+
H 2.83315800 12.78596400 26.56681200
|
57 |
+
H 23.13687400 14.90616700 17.31808300
|
58 |
+
H 23.60063200 15.47147100 17.41174900
|
59 |
+
H 24.37760200 23.67694500 6.16965600
|
60 |
+
H 24.26969800 23.54491000 5.45248300
|
61 |
+
H 12.12534300 0.92505100 5.56915800
|
62 |
+
H 12.59580200 1.08149500 6.11469100
|
63 |
+
H 14.77057800 23.04450600 14.78597800
|
64 |
+
H 14.88153400 22.32226700 14.88331100
|
65 |
+
H 10.12077400 6.02995200 19.27346700
|
66 |
+
H 10.56701000 5.58085700 19.65109300
|
67 |
+
H 8.88571400 26.92992500 13.97009200
|
68 |
+
H 9.13262800 27.42418800 13.48208400
|
69 |
+
H 13.61412900 25.32932600 5.89573200
|
70 |
+
H 14.17465000 25.02676400 5.52467300
|
71 |
+
H 17.25064000 9.39374700 16.24924400
|
72 |
+
H 17.23228900 9.42911200 16.98533300
|
73 |
+
H 12.66108800 13.49816800 7.35969900
|
74 |
+
H 12.75204000 13.66251500 6.64686500
|
75 |
+
H 19.85540500 12.40447200 18.67913500
|
76 |
+
H 19.87736300 13.08567100 18.39824500
|
77 |
+
H 21.16039700 14.54404800 12.22178400
|
78 |
+
H 20.77918300 14.69154600 11.60832300
|
79 |
+
H 1.89709500 13.01516500 11.87415000
|
80 |
+
H 1.61578300 12.78775700 11.23183900
|
81 |
+
H 22.48727800 20.55335700 26.81374300
|
82 |
+
H 22.08316200 19.93770500 26.84656000
|
83 |
+
H 18.09641200 11.03175000 20.02888200
|
84 |
+
H 18.08987100 11.14550300 19.30057500
|
85 |
+
H 9.03487100 28.27705600 17.67592300
|
86 |
+
H 9.02850300 28.47186100 18.38685500
|
87 |
+
H 21.61332100 18.16863300 14.82530000
|
88 |
+
H 20.91922800 18.33149900 15.01271300
|
89 |
+
H 5.06777300 6.91012100 12.14248900
|
90 |
+
H 5.14167800 7.53010400 12.53437400
|
91 |
+
H 15.24240300 1.00156500 8.79894400
|
92 |
+
H 15.15041500 1.70061000 8.58379800
|
93 |
+
H 7.38156900 16.75420300 20.84490000
|
94 |
+
H 7.49809200 17.42858000 20.57094300
|
95 |
+
H 5.80395600 5.23791900 23.23164500
|
96 |
+
H 5.59378400 5.32074900 23.93334300
|
97 |
+
H 25.86193300 21.36196900 25.55815300
|
98 |
+
H 26.43947000 21.14184700 25.15639300
|
99 |
+
H 15.99876300 19.78997000 1.87456100
|
100 |
+
H 15.41808700 19.79298200 2.32867600
|
101 |
+
H 13.76283200 27.95478100 8.97671100
|
102 |
+
H 13.72689900 27.99668400 8.24161500
|
103 |
+
H 3.90503500 26.10922400 10.77631300
|
104 |
+
H 3.36520200 25.83210000 11.19487700
|
105 |
+
H 3.70175700 2.02893500 10.84822800
|
106 |
+
H 3.98998200 2.68818200 11.00864200
|
107 |
+
H 19.61345400 10.74535100 22.22723700
|
108 |
+
H 19.65167500 10.72936900 22.96323800
|
109 |
+
H 21.15335200 11.20594200 26.99475000
|
110 |
+
H 21.53029400 10.81346000 27.49202900
|
111 |
+
H 20.09434500 6.25424400 17.87873800
|
112 |
+
H 20.01076700 6.21479100 18.61008800
|
113 |
+
H 3.69537200 12.39851000 8.93646700
|
114 |
+
H 4.09765200 11.81750500 9.14627000
|
115 |
+
H 22.83093000 16.73250700 24.19709400
|
116 |
+
H 23.31256100 17.17900100 23.86229600
|
117 |
+
H 3.36198000 12.89766000 23.38943200
|
118 |
+
H 3.45885500 13.00681500 24.11200700
|
119 |
+
H 2.04611800 15.71757800 8.59329600
|
120 |
+
H 1.43234600 15.77875600 8.18961900
|
121 |
+
H 6.12945900 15.14026700 20.02887800
|
122 |
+
H 6.02278200 14.57365100 20.48820400
|
123 |
+
H 5.08911400 27.18139700 2.77337500
|
124 |
+
H 5.06662100 27.18501900 3.51018800
|
125 |
+
H 14.70758200 4.01177700 13.31696800
|
126 |
+
H 14.89664300 4.24570600 12.64395500
|
127 |
+
H 3.65814300 29.03356400 14.88286700
|
128 |
+
H 3.73378000 28.95725100 14.15357400
|
129 |
+
H 16.99951200 11.42586000 13.86881500
|
130 |
+
H 17.03417100 11.12538100 13.19656200
|
131 |
+
H 2.06797500 18.08136200 13.54583400
|
132 |
+
H 1.48136600 18.09474000 13.99206700
|
133 |
+
H 14.60250500 7.57683000 5.97130200
|
134 |
+
H 15.33793200 7.61271900 6.00698800
|
135 |
+
H 26.83711700 3.23048000 3.03884500
|
136 |
+
H 26.55008700 3.90471800 3.11903900
|
137 |
+
H 22.99777600 19.34731400 20.31560600
|
138 |
+
H 22.45982800 19.77772100 20.57785400
|
139 |
+
H 16.41966600 2.80599400 11.89128000
|
140 |
+
H 16.56901900 2.08412200 11.88831400
|
141 |
+
H 11.73017700 14.43811800 22.41741700
|
142 |
+
H 11.12423500 14.82954800 22.56917700
|
143 |
+
H 17.38249100 23.87139500 12.76358200
|
144 |
+
H 17.38350900 23.82842900 12.02767000
|
145 |
+
H 1.00061100 21.01224200 1.31470000
|
146 |
+
H 1.44321900 21.03360900 1.90381400
|
147 |
+
H 8.09004900 6.72936800 0.99999800
|
148 |
+
H 8.19345600 7.35764200 1.37147100
|
149 |
+
H 3.89822700 15.37766400 9.73104000
|
150 |
+
H 4.54288400 15.70539800 9.87394700
|
151 |
+
H 22.22552500 28.69576500 19.77030500
|
152 |
+
H 21.65346500 29.00000300 19.41873800
|
153 |
+
H 4.65573400 15.45943800 27.22827700
|
154 |
+
H 5.35397400 15.56981400 27.43730400
|
155 |
+
H 12.98406500 8.83317400 11.91500600
|
156 |
+
H 12.47937800 9.06790600 11.43167900
|
157 |
+
H 21.24968700 1.72985200 23.51877400
|
158 |
+
H 21.91940400 2.02865000 23.44385400
|
159 |
+
H 11.59386400 22.25408800 27.15665400
|
160 |
+
H 11.73855200 21.54498900 27.29686000
|
161 |
+
H 21.77510800 4.83204700 19.45360300
|
162 |
+
H 21.74760500 4.86959100 18.71790800
|
163 |
+
H 28.68304100 9.21677300 24.30293500
|
164 |
+
H 28.79634600 9.49180700 23.62844900
|
165 |
+
H 18.79159300 1.71351500 2.69284300
|
166 |
+
H 18.77465700 2.18174600 3.26195300
|
167 |
+
H 19.17586000 13.02896000 14.86997500
|
168 |
+
H 19.71644200 13.51755200 14.75833800
|
169 |
+
H 6.02966400 25.52593900 10.73507600
|
170 |
+
H 5.80325300 25.22399900 10.10184400
|
171 |
+
H 7.38506300 1.43983700 15.49859600
|
172 |
+
H 6.79506700 1.06865500 15.73847300
|
173 |
+
H 27.58382000 24.42158300 19.38106600
|
174 |
+
H 27.42251200 25.04349100 19.01964600
|
175 |
+
H 9.93092500 22.73321600 10.93929900
|
176 |
+
H 10.22059100 22.24094300 11.40531900
|
177 |
+
H 15.50084100 11.06308800 6.45439200
|
178 |
+
H 15.87813400 11.34578600 5.88769500
|
179 |
+
H 16.10016600 28.54356000 2.40068100
|
180 |
+
H 16.19875700 27.92618400 2.01011700
|
181 |
+
H 17.12622300 9.66589700 8.78315600
|
182 |
+
H 16.48701000 9.96416700 8.99729500
|
183 |
+
H 25.00042100 21.05189700 28.69399300
|
184 |
+
H 25.35829500 20.90402200 28.06671900
|
185 |
+
H 11.72392500 14.35901600 14.78824400
|
186 |
+
H 11.48529200 14.43413500 14.09482800
|
187 |
+
H 27.80088200 28.99951400 23.03485400
|
188 |
+
H 27.35755700 28.41175300 23.07244700
|
189 |
+
H 2.81120100 21.97327000 6.33202600
|
190 |
+
H 3.02278700 22.64853600 6.53857400
|
191 |
+
H 11.16091600 21.16245100 20.56587100
|
192 |
+
H 10.97600400 21.57060200 19.98052200
|
193 |
+
H 25.63314200 8.24689800 11.42146200
|
194 |
+
H 25.84695500 7.98978900 10.76450500
|
195 |
+
H 5.21035300 25.88590800 28.03985400
|
196 |
+
H 4.61973200 25.44924700 28.10235800
|
197 |
+
H 14.83558600 10.14445700 28.76566400
|
198 |
+
H 14.45468700 10.77548600 28.75415200
|
199 |
+
H 24.19325000 21.19802200 21.61625300
|
200 |
+
H 24.60150400 21.42553100 22.18632500
|
201 |
+
H 3.38383900 29.00000600 6.51473400
|
202 |
+
H 3.38610800 28.83091700 7.23224200
|
203 |
+
H 17.13203800 26.72357300 21.49248700
|
204 |
+
H 17.08711600 27.41871500 21.25129500
|
205 |
+
H 21.43007400 22.30567900 19.46406700
|
206 |
+
H 20.99498700 21.73213800 19.30543700
|
207 |
+
H 19.31644700 11.15485400 16.07821400
|
208 |
+
H 19.68199100 11.18838700 16.71748400
|
209 |
+
H 10.93924200 5.99489900 26.27955500
|
210 |
+
H 10.41495800 5.47711900 26.30060500
|
211 |
+
H 14.95008000 15.52212300 7.01442400
|
212 |
+
H 14.72471900 15.69369600 7.69500400
|
213 |
+
H 18.99727600 22.68120300 25.90377400
|
214 |
+
H 19.40957700 23.25149200 25.68424600
|
215 |
+
H 8.88447900 1.79024300 17.17555900
|
216 |
+
H 8.86324600 1.77770600 17.91231200
|
217 |
+
H 12.15121200 1.54535800 11.42100700
|
218 |
+
H 11.71339400 1.67546500 11.99962700
|
219 |
+
H 2.22952700 10.78313900 28.21835700
|
220 |
+
H 2.22169400 10.63858800 27.49554500
|
221 |
+
H 4.71118900 24.88843500 6.95444600
|
222 |
+
H 4.75449800 25.06231100 6.23939000
|
223 |
+
H 1.28060100 1.44032300 19.29701200
|
224 |
+
H 1.83528100 1.36120500 18.81796700
|
225 |
+
H 12.45357900 9.77922200 25.48060700
|
226 |
+
H 11.74916000 9.99016300 25.53267400
|
227 |
+
H 8.23385400 11.13248500 18.56147300
|
228 |
+
H 8.05531600 10.83169400 19.21036700
|
229 |
+
H 24.48638300 19.81957100 23.69282200
|
230 |
+
H 25.13594000 19.58627200 23.95178100
|
231 |
+
H 26.70376200 9.82401100 27.55103500
|
232 |
+
H 26.90704500 9.33315600 28.06206400
|
233 |
+
H 8.00838700 4.22559800 18.28897400
|
234 |
+
H 8.42532000 3.95184600 17.74616600
|
235 |
+
H 14.94452000 3.51127400 4.84402200
|
236 |
+
H 14.89449900 3.42688600 5.57463200
|
237 |
+
H 19.83606200 2.22162900 13.82277900
|
238 |
+
H 20.02512800 2.59599500 13.21654700
|
239 |
+
H 6.67903100 3.41714500 3.27561700
|
240 |
+
H 5.96308500 3.29632200 3.40304000
|
241 |
+
H 3.40442700 8.43161300 18.68125100
|
242 |
+
H 3.47980300 8.38947800 19.41334200
|
243 |
+
H 11.59437400 13.32368500 26.26415800
|
244 |
+
H 12.23470100 13.62606800 26.46899700
|
245 |
+
H 14.10053700 2.78998700 1.85965400
|
246 |
+
H 14.21152000 2.83848100 2.58680300
|
247 |
+
H 20.73807400 13.46815700 24.67708300
|
248 |
+
H 21.38650500 13.80030400 24.56470100
|
249 |
+
H 20.60974700 10.79901200 13.69614100
|
250 |
+
H 20.72497000 10.71348400 14.41920500
|
251 |
+
H 3.17495000 22.77164300 26.22314900
|
252 |
+
H 3.62633300 22.80052800 25.64105600
|
253 |
+
H 28.64961800 27.52039100 17.72169200
|
254 |
+
H 28.65554600 27.60539900 18.45391600
|
255 |
+
H 7.29178200 28.18007600 2.36813400
|
256 |
+
H 7.28037500 28.22151000 3.10404600
|
257 |
+
H 6.81956500 10.50511700 4.98278800
|
258 |
+
H 6.16534900 10.84336000 4.95106300
|
259 |
+
O 28.65774000 26.05310300 1.73187800
|
260 |
+
O 27.82042800 25.18551200 1.41787100
|
261 |
+
O 7.89599500 15.38902200 14.65745800
|
262 |
+
O 7.88882100 15.60518500 13.43041800
|
263 |
+
O 11.37704800 22.17970800 3.53597600
|
264 |
+
O 10.62568400 23.16642300 3.65535900
|
265 |
+
O 13.21571800 10.10612800 5.39037400
|
266 |
+
O 13.81380800 10.31472700 4.31744300
|
267 |
+
O 12.93699800 12.19119900 15.32963100
|
268 |
+
O 13.36779300 11.62125600 16.35040800
|
269 |
+
O 27.62157300 9.98656400 1.83057900
|
270 |
+
O 26.68111300 10.54405800 1.23296700
|
271 |
+
O 6.77274700 17.50780000 1.73044000
|
272 |
+
O 5.79918400 17.87923300 1.04734400
|
273 |
+
O 26.06597600 11.96086100 28.39447800
|
274 |
+
O 26.32478700 12.75375600 27.46887600
|
275 |
+
O 1.16753100 1.35249300 15.49177600
|
276 |
+
O 1.18059100 1.20596000 14.25453600
|
277 |
+
O 15.08210300 17.91068800 23.23158100
|
278 |
+
O 15.17178200 18.46551400 22.11958700
|
279 |
+
O 18.60542300 22.96513600 18.41436700
|
280 |
+
O 19.71179100 23.45867400 18.70553300
|
281 |
+
O 1.55709700 26.18859700 1.16408800
|
282 |
+
O 2.61399600 26.49796400 1.74689400
|
283 |
+
O 13.99292900 14.15190600 21.10355700
|
284 |
+
O 14.04751700 14.18255600 19.85917400
|
285 |
+
O 10.38541200 18.23372400 12.93027500
|
286 |
+
O 9.91188600 17.49941400 12.04203600
|
287 |
+
O 24.58403200 25.06294600 21.97592600
|
288 |
+
O 25.05025500 26.20923800 21.83081500
|
289 |
+
O 12.79523200 10.91568200 21.34176200
|
290 |
+
O 12.59216100 11.07454900 22.56074900
|
291 |
+
O 7.88339000 21.12603300 4.34091800
|
292 |
+
O 8.23639900 20.09896500 3.73024400
|
293 |
+
O 14.29669600 11.48202900 10.12026500
|
294 |
+
O 14.65658800 11.78505600 8.96655000
|
295 |
+
O 24.45593800 10.09229400 18.89934500
|
296 |
+
O 23.27212000 10.31487400 19.21783900
|
297 |
+
O 10.14103800 28.74148400 8.55297800
|
298 |
+
O 9.09630200 28.47275800 9.17645200
|
299 |
+
O 6.53750100 18.89849400 13.13483400
|
300 |
+
O 7.18188100 19.75253500 12.49624700
|
301 |
+
O 5.99854200 21.81797900 5.25108200
|
302 |
+
O 5.99224800 23.06318800 5.20840100
|
303 |
+
O 9.03156900 6.67285800 22.94269500
|
304 |
+
O 7.94989000 6.26883900 23.41082700
|
305 |
+
O 11.37806100 15.86060900 17.89431700
|
306 |
+
O 10.58973300 15.69880900 16.94312500
|
307 |
+
O 18.69252800 21.49332500 14.52289300
|
308 |
+
O 19.04391300 21.05544000 13.41060100
|
309 |
+
O 10.88775200 25.62526500 15.90813900
|
310 |
+
O 10.56171400 25.66761900 17.10993500
|
311 |
+
O 5.83323700 6.64702500 10.08718000
|
312 |
+
O 5.78880400 6.30641500 8.88950900
|
313 |
+
O 7.71126200 8.59122800 18.86977200
|
314 |
+
O 7.73147600 8.60812400 17.62409400
|
315 |
+
O 20.74284900 2.12287500 21.37159100
|
316 |
+
O 20.54629600 2.47368100 20.19230800
|
317 |
+
O 9.33194100 10.52852700 15.25052100
|
318 |
+
O 8.99841100 9.39518300 14.85467600
|
319 |
+
O 15.28732400 14.68259500 9.86397700
|
320 |
+
O 14.24814200 15.19621500 10.32081500
|
321 |
+
O 8.79509800 2.36395800 13.47414000
|
322 |
+
O 8.02117200 2.64244400 12.53825000
|
323 |
+
O 22.07041200 27.82260300 11.86453400
|
324 |
+
O 22.47004200 27.29076900 10.81103700
|
325 |
+
O 25.64900400 10.71424900 24.59372700
|
326 |
+
O 25.14662500 10.86773900 25.72353300
|
327 |
+
O 17.46952600 13.14388400 17.59581300
|
328 |
+
O 17.02295500 12.33034400 16.76446800
|
329 |
+
O 12.27907200 3.72064200 4.88171600
|
330 |
+
O 12.34240900 3.77544700 3.63857800
|
331 |
+
O 19.50544800 19.26652500 26.41877500
|
332 |
+
O 19.46811300 19.42938700 27.65347700
|
333 |
+
O 16.09394700 23.74355500 8.66223700
|
334 |
+
O 16.43146400 24.61823500 7.84161300
|
335 |
+
O 12.88585100 27.95040100 27.15844000
|
336 |
+
O 13.33429000 28.28825200 28.27072000
|
337 |
+
O 17.90265700 22.35366300 6.91603700
|
338 |
+
O 18.19323300 21.88298700 5.79959800
|
339 |
+
O 23.38376600 4.75998600 8.13216000
|
340 |
+
O 23.39868600 4.98386700 9.35774600
|
341 |
+
O 16.75294800 1.89397000 5.04381400
|
342 |
+
O 17.32240900 2.99348800 5.18231300
|
343 |
+
O 17.56519600 7.26680100 21.77071000
|
344 |
+
O 18.31705700 8.25843700 21.83209000
|
345 |
+
O 11.99835900 11.23426800 18.12324800
|
346 |
+
O 12.36029500 11.59229700 19.26044800
|
347 |
+
O 7.58959900 13.32747400 11.00503600
|
348 |
+
O 6.37218600 13.53282600 10.83727300
|
349 |
+
O 18.59862600 24.35057600 9.30150100
|
350 |
+
O 18.94728500 24.62991400 8.13839600
|
351 |
+
O 23.48008200 18.54852600 17.99906900
|
352 |
+
O 23.36944900 17.83172600 16.98597300
|
353 |
+
O 22.77455400 28.18135800 14.92714700
|
354 |
+
O 23.86580000 27.65620500 14.63422500
|
355 |
+
O 20.78948500 3.67260900 1.83948100
|
356 |
+
O 21.56215500 3.51027100 2.80334500
|
357 |
+
O 9.05637000 15.36340100 27.31637100
|
358 |
+
O 10.18282500 14.88236800 27.54465200
|
359 |
+
O 5.36124000 14.96264300 23.52556700
|
360 |
+
O 4.24760100 14.87097200 22.97437700
|
361 |
+
O 22.64266600 13.26344800 26.40413500
|
362 |
+
O 22.64331400 14.50641200 26.49043800
|
363 |
+
O 1.32756400 12.17561700 20.06774300
|
364 |
+
O 2.10349400 12.35107600 21.02667600
|
365 |
+
O 1.18281700 3.80763100 4.94719100
|
366 |
+
O 1.01891800 2.82667000 5.69769700
|
367 |
+
O 12.59019600 17.94027500 24.45964400
|
368 |
+
O 12.50958200 18.08831700 23.22514300
|
369 |
+
O 9.77496800 21.51131100 7.49102600
|
370 |
+
O 10.45743600 20.53412700 7.85400700
|
371 |
+
O 1.69369700 6.90651400 3.72886700
|
372 |
+
O 1.19082500 6.11102100 4.54539400
|
373 |
+
O 26.88872500 10.54198400 11.12473400
|
374 |
+
O 27.32702000 10.28414700 9.98727000
|
375 |
+
O 1.72700700 26.73221500 14.58446600
|
376 |
+
O 2.56724200 25.91897900 15.01465200
|
377 |
+
O 10.15694600 18.69534200 19.15618300
|
378 |
+
O 9.99999700 19.29683100 20.23599100
|
379 |
+
O 1.99644200 10.71276900 12.34430700
|
380 |
+
O 2.09478800 10.26022600 13.50100000
|
381 |
+
O 2.90497500 4.19153100 2.82131400
|
382 |
+
O 1.84632400 4.84452600 2.74877200
|
383 |
+
O 5.05591600 16.45745000 12.34283200
|
384 |
+
O 6.13192000 15.97608900 11.93920500
|
385 |
+
O 6.49320100 16.95653500 24.96253500
|
386 |
+
O 6.59211000 17.17298400 26.18555300
|
mlip_arena/tasks/combustion/water.ipynb
CHANGED
@@ -119,7 +119,7 @@
|
|
119 |
},
|
120 |
{
|
121 |
"cell_type": "code",
|
122 |
-
"execution_count":
|
123 |
"metadata": {},
|
124 |
"outputs": [
|
125 |
{
|
@@ -130,18 +130,29 @@
|
|
130 |
"\n",
|
131 |
"#SBATCH -A matgen\n",
|
132 |
"#SBATCH --mem=0\n",
|
133 |
-
"#SBATCH -t
|
134 |
"#SBATCH -J combustion-water\n",
|
135 |
"#SBATCH -q regular\n",
|
136 |
"#SBATCH -N 1\n",
|
137 |
"#SBATCH -C gpu\n",
|
138 |
"#SBATCH -G 4\n",
|
|
|
139 |
"source ~/.bashrc\n",
|
140 |
"module load python\n",
|
141 |
"source activate /pscratch/sd/c/cyrusyc/.conda/mlip-arena\n",
|
142 |
-
"/pscratch/sd/c/cyrusyc/.conda/mlip-arena/bin/python -m distributed.cli.dask_worker tcp://128.55.64.
|
143 |
"\n"
|
144 |
]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
145 |
}
|
146 |
],
|
147 |
"source": [
|
@@ -154,7 +165,7 @@
|
|
154 |
" memory=\"64 GB\",\n",
|
155 |
" shebang=\"#!/bin/bash\",\n",
|
156 |
" account=\"matgen\",\n",
|
157 |
-
" walltime=\"
|
158 |
" job_mem=\"0\",\n",
|
159 |
" job_script_prologue=[\n",
|
160 |
" \"source ~/.bashrc\",\n",
|
@@ -168,7 +179,7 @@
|
|
168 |
" f\"-N {nodes_per_alloc}\",\n",
|
169 |
" \"-C gpu\",\n",
|
170 |
" f\"-G {gpus_per_alloc}\",\n",
|
171 |
-
"
|
172 |
" # \"--time-min=00:30:00\",\n",
|
173 |
" # \"--comment=1-00:00:00\",\n",
|
174 |
" # \"--signal=B:USR1@60\",\n",
|
@@ -187,7 +198,7 @@
|
|
187 |
},
|
188 |
{
|
189 |
"cell_type": "code",
|
190 |
-
"execution_count":
|
191 |
"metadata": {},
|
192 |
"outputs": [],
|
193 |
"source": [
|
@@ -209,7 +220,7 @@
|
|
209 |
" pressure=None,\n",
|
210 |
" mb_velocity_seed=0,\n",
|
211 |
" traj_file=Path(REGISTRY[model.name][\"family\"])\n",
|
212 |
-
" / f\"{atoms.get_chemical_formula()}.traj\",\n",
|
213 |
" traj_interval=1000,\n",
|
214 |
" restart=True,\n",
|
215 |
" )\n",
|
@@ -229,11 +240,11 @@
|
|
229 |
{
|
230 |
"data": {
|
231 |
"text/html": [
|
232 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
233 |
"</pre>\n"
|
234 |
],
|
235 |
"text/plain": [
|
236 |
-
"18:24:
|
237 |
]
|
238 |
},
|
239 |
"metadata": {},
|
@@ -242,11 +253,11 @@
|
|
242 |
{
|
243 |
"data": {
|
244 |
"text/html": [
|
245 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
246 |
"</pre>\n"
|
247 |
],
|
248 |
"text/plain": [
|
249 |
-
"18:24:
|
250 |
]
|
251 |
},
|
252 |
"metadata": {},
|
@@ -255,11 +266,11 @@
|
|
255 |
{
|
256 |
"data": {
|
257 |
"text/html": [
|
258 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
259 |
"</pre>\n"
|
260 |
],
|
261 |
"text/plain": [
|
262 |
-
"18:24:
|
263 |
]
|
264 |
},
|
265 |
"metadata": {},
|
@@ -268,11 +279,11 @@
|
|
268 |
{
|
269 |
"data": {
|
270 |
"text/html": [
|
271 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
272 |
"</pre>\n"
|
273 |
],
|
274 |
"text/plain": [
|
275 |
-
"18:24:
|
276 |
]
|
277 |
},
|
278 |
"metadata": {},
|
@@ -281,11 +292,11 @@
|
|
281 |
{
|
282 |
"data": {
|
283 |
"text/html": [
|
284 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
285 |
"</pre>\n"
|
286 |
],
|
287 |
"text/plain": [
|
288 |
-
"18:24:
|
289 |
]
|
290 |
},
|
291 |
"metadata": {},
|
@@ -294,11 +305,11 @@
|
|
294 |
{
|
295 |
"data": {
|
296 |
"text/html": [
|
297 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
298 |
"</pre>\n"
|
299 |
],
|
300 |
"text/plain": [
|
301 |
-
"18:24:
|
302 |
]
|
303 |
},
|
304 |
"metadata": {},
|
@@ -307,11 +318,11 @@
|
|
307 |
{
|
308 |
"data": {
|
309 |
"text/html": [
|
310 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
311 |
"</pre>\n"
|
312 |
],
|
313 |
"text/plain": [
|
314 |
-
"18:24:
|
315 |
]
|
316 |
},
|
317 |
"metadata": {},
|
@@ -320,11 +331,11 @@
|
|
320 |
{
|
321 |
"data": {
|
322 |
"text/html": [
|
323 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
324 |
"</pre>\n"
|
325 |
],
|
326 |
"text/plain": [
|
327 |
-
"18:24:
|
328 |
]
|
329 |
},
|
330 |
"metadata": {},
|
@@ -333,11 +344,11 @@
|
|
333 |
{
|
334 |
"data": {
|
335 |
"text/html": [
|
336 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
337 |
"</pre>\n"
|
338 |
],
|
339 |
"text/plain": [
|
340 |
-
"18:24:
|
341 |
]
|
342 |
},
|
343 |
"metadata": {},
|
@@ -346,11 +357,11 @@
|
|
346 |
{
|
347 |
"data": {
|
348 |
"text/html": [
|
349 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
350 |
"</pre>\n"
|
351 |
],
|
352 |
"text/plain": [
|
353 |
-
"18:24:
|
354 |
]
|
355 |
},
|
356 |
"metadata": {},
|
@@ -359,11 +370,11 @@
|
|
359 |
{
|
360 |
"data": {
|
361 |
"text/html": [
|
362 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
363 |
"</pre>\n"
|
364 |
],
|
365 |
"text/plain": [
|
366 |
-
"18:24:
|
367 |
]
|
368 |
},
|
369 |
"metadata": {},
|
@@ -372,11 +383,11 @@
|
|
372 |
{
|
373 |
"data": {
|
374 |
"text/html": [
|
375 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
376 |
"</pre>\n"
|
377 |
],
|
378 |
"text/plain": [
|
379 |
-
"18:24:
|
380 |
]
|
381 |
},
|
382 |
"metadata": {},
|
@@ -385,11 +396,11 @@
|
|
385 |
{
|
386 |
"data": {
|
387 |
"text/html": [
|
388 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
389 |
"</pre>\n"
|
390 |
],
|
391 |
"text/plain": [
|
392 |
-
"18:24:
|
393 |
]
|
394 |
},
|
395 |
"metadata": {},
|
@@ -398,11 +409,11 @@
|
|
398 |
{
|
399 |
"data": {
|
400 |
"text/html": [
|
401 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
402 |
"</pre>\n"
|
403 |
],
|
404 |
"text/plain": [
|
405 |
-
"18:24:
|
406 |
]
|
407 |
},
|
408 |
"metadata": {},
|
@@ -411,11 +422,11 @@
|
|
411 |
{
|
412 |
"data": {
|
413 |
"text/html": [
|
414 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
415 |
"</pre>\n"
|
416 |
],
|
417 |
"text/plain": [
|
418 |
-
"18:24:
|
419 |
]
|
420 |
},
|
421 |
"metadata": {},
|
@@ -424,11 +435,11 @@
|
|
424 |
{
|
425 |
"data": {
|
426 |
"text/html": [
|
427 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
428 |
"</pre>\n"
|
429 |
],
|
430 |
"text/plain": [
|
431 |
-
"18:24:
|
432 |
]
|
433 |
},
|
434 |
"metadata": {},
|
@@ -437,11 +448,11 @@
|
|
437 |
{
|
438 |
"data": {
|
439 |
"text/html": [
|
440 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
441 |
"</pre>\n"
|
442 |
],
|
443 |
"text/plain": [
|
444 |
-
"18:24:
|
445 |
]
|
446 |
},
|
447 |
"metadata": {},
|
@@ -450,11 +461,11 @@
|
|
450 |
{
|
451 |
"data": {
|
452 |
"text/html": [
|
453 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
454 |
"</pre>\n"
|
455 |
],
|
456 |
"text/plain": [
|
457 |
-
"18:24:
|
458 |
]
|
459 |
},
|
460 |
"metadata": {},
|
@@ -463,11 +474,11 @@
|
|
463 |
{
|
464 |
"data": {
|
465 |
"text/html": [
|
466 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
467 |
"</pre>\n"
|
468 |
],
|
469 |
"text/plain": [
|
470 |
-
"18:24:
|
471 |
]
|
472 |
},
|
473 |
"metadata": {},
|
@@ -476,11 +487,11 @@
|
|
476 |
{
|
477 |
"data": {
|
478 |
"text/html": [
|
479 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
480 |
"</pre>\n"
|
481 |
],
|
482 |
"text/plain": [
|
483 |
-
"18:24:
|
484 |
]
|
485 |
},
|
486 |
"metadata": {},
|
@@ -489,11 +500,11 @@
|
|
489 |
{
|
490 |
"data": {
|
491 |
"text/html": [
|
492 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
493 |
"</pre>\n"
|
494 |
],
|
495 |
"text/plain": [
|
496 |
-
"18:24:
|
497 |
]
|
498 |
},
|
499 |
"metadata": {},
|
@@ -502,11 +513,11 @@
|
|
502 |
{
|
503 |
"data": {
|
504 |
"text/html": [
|
505 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
506 |
"</pre>\n"
|
507 |
],
|
508 |
"text/plain": [
|
509 |
-
"18:24:
|
510 |
]
|
511 |
},
|
512 |
"metadata": {},
|
@@ -515,11 +526,11 @@
|
|
515 |
{
|
516 |
"data": {
|
517 |
"text/html": [
|
518 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
519 |
"</pre>\n"
|
520 |
],
|
521 |
"text/plain": [
|
522 |
-
"18:24:
|
523 |
]
|
524 |
},
|
525 |
"metadata": {},
|
@@ -528,11 +539,11 @@
|
|
528 |
{
|
529 |
"data": {
|
530 |
"text/html": [
|
531 |
-
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:
|
532 |
"</pre>\n"
|
533 |
],
|
534 |
"text/plain": [
|
535 |
-
"18:24:
|
536 |
]
|
537 |
},
|
538 |
"metadata": {},
|
|
|
119 |
},
|
120 |
{
|
121 |
"cell_type": "code",
|
122 |
+
"execution_count": 6,
|
123 |
"metadata": {},
|
124 |
"outputs": [
|
125 |
{
|
|
|
130 |
"\n",
|
131 |
"#SBATCH -A matgen\n",
|
132 |
"#SBATCH --mem=0\n",
|
133 |
+
"#SBATCH -t 01:45:00\n",
|
134 |
"#SBATCH -J combustion-water\n",
|
135 |
"#SBATCH -q regular\n",
|
136 |
"#SBATCH -N 1\n",
|
137 |
"#SBATCH -C gpu\n",
|
138 |
"#SBATCH -G 4\n",
|
139 |
+
"#SBATCH --exclusive\n",
|
140 |
"source ~/.bashrc\n",
|
141 |
"module load python\n",
|
142 |
"source activate /pscratch/sd/c/cyrusyc/.conda/mlip-arena\n",
|
143 |
+
"/pscratch/sd/c/cyrusyc/.conda/mlip-arena/bin/python -m distributed.cli.dask_worker tcp://128.55.64.22:36743 --name dummy-name --nthreads 1 --memory-limit 59.60GiB --nanny --death-timeout 86400\n",
|
144 |
"\n"
|
145 |
]
|
146 |
+
},
|
147 |
+
{
|
148 |
+
"name": "stderr",
|
149 |
+
"output_type": "stream",
|
150 |
+
"text": [
|
151 |
+
"/pscratch/sd/c/cyrusyc/.conda/mlip-arena/lib/python3.11/site-packages/distributed/node.py:182: UserWarning: Port 8787 is already in use.\n",
|
152 |
+
"Perhaps you already have a cluster running?\n",
|
153 |
+
"Hosting the HTTP server on port 34167 instead\n",
|
154 |
+
" warnings.warn(\n"
|
155 |
+
]
|
156 |
}
|
157 |
],
|
158 |
"source": [
|
|
|
165 |
" memory=\"64 GB\",\n",
|
166 |
" shebang=\"#!/bin/bash\",\n",
|
167 |
" account=\"matgen\",\n",
|
168 |
+
" walltime=\"01:45:00\",\n",
|
169 |
" job_mem=\"0\",\n",
|
170 |
" job_script_prologue=[\n",
|
171 |
" \"source ~/.bashrc\",\n",
|
|
|
179 |
" f\"-N {nodes_per_alloc}\",\n",
|
180 |
" \"-C gpu\",\n",
|
181 |
" f\"-G {gpus_per_alloc}\",\n",
|
182 |
+
" f\"--exclusive\",\n",
|
183 |
" # \"--time-min=00:30:00\",\n",
|
184 |
" # \"--comment=1-00:00:00\",\n",
|
185 |
" # \"--signal=B:USR1@60\",\n",
|
|
|
198 |
},
|
199 |
{
|
200 |
"cell_type": "code",
|
201 |
+
"execution_count": 7,
|
202 |
"metadata": {},
|
203 |
"outputs": [],
|
204 |
"source": [
|
|
|
220 |
" pressure=None,\n",
|
221 |
" mb_velocity_seed=0,\n",
|
222 |
" traj_file=Path(REGISTRY[model.name][\"family\"])\n",
|
223 |
+
" / f\"{model.name}_{atoms.get_chemical_formula()}.traj\",\n",
|
224 |
" traj_interval=1000,\n",
|
225 |
" restart=True,\n",
|
226 |
" )\n",
|
|
|
240 |
{
|
241 |
"data": {
|
242 |
"text/html": [
|
243 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.187 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | prefect.engine - Created flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> for flow<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\"> 'combustion'</span>\n",
|
244 |
"</pre>\n"
|
245 |
],
|
246 |
"text/plain": [
|
247 |
+
"18:24:16.187 | \u001b[36mINFO\u001b[0m | prefect.engine - Created flow run\u001b[35m 'cinnamon-swine'\u001b[0m for flow\u001b[1;35m 'combustion'\u001b[0m\n"
|
248 |
]
|
249 |
},
|
250 |
"metadata": {},
|
|
|
253 |
{
|
254 |
"data": {
|
255 |
"text/html": [
|
256 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.205 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - View at <span style=\"color: #0000ff; text-decoration-color: #0000ff\">https://app.prefect.cloud/account/f7d40474-9362-4bfa-8950-ee6a43ec00f3/workspace/d4bb0913-5f5e-49f7-bfc5-06509088baeb/flow-runs/flow-run/b40f12fb-6644-4319-8d19-5e01e7e282aa</span>\n",
|
257 |
"</pre>\n"
|
258 |
],
|
259 |
"text/plain": [
|
260 |
+
"18:24:16.205 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - View at \u001b[94mhttps://app.prefect.cloud/account/f7d40474-9362-4bfa-8950-ee6a43ec00f3/workspace/d4bb0913-5f5e-49f7-bfc5-06509088baeb/flow-runs/flow-run/b40f12fb-6644-4319-8d19-5e01e7e282aa\u001b[0m\n"
|
261 |
]
|
262 |
},
|
263 |
"metadata": {},
|
|
|
266 |
{
|
267 |
"data": {
|
268 |
"text/html": [
|
269 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.207 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | prefect.task_runner.dask - Connecting to an existing Dask cluster at tcp://128.55.64.22:36743\n",
|
270 |
"</pre>\n"
|
271 |
],
|
272 |
"text/plain": [
|
273 |
+
"18:24:16.207 | \u001b[36mINFO\u001b[0m | prefect.task_runner.dask - Connecting to an existing Dask cluster at tcp://128.55.64.22:36743\n"
|
274 |
]
|
275 |
},
|
276 |
"metadata": {},
|
|
|
279 |
{
|
280 |
"data": {
|
281 |
"text/html": [
|
282 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.213 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | prefect.task_runner.dask - The Dask dashboard is available at <span style=\"color: #0000ff; text-decoration-color: #0000ff\">http://128.55.64.22:34167/status</span>\n",
|
283 |
"</pre>\n"
|
284 |
],
|
285 |
"text/plain": [
|
286 |
+
"18:24:16.213 | \u001b[36mINFO\u001b[0m | prefect.task_runner.dask - The Dask dashboard is available at \u001b[94mhttp://128.55.64.22:34167/status\u001b[0m\n"
|
287 |
]
|
288 |
},
|
289 |
"metadata": {},
|
|
|
292 |
{
|
293 |
"data": {
|
294 |
"text/html": [
|
295 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.764 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-0' for task 'md'\n",
|
296 |
"</pre>\n"
|
297 |
],
|
298 |
"text/plain": [
|
299 |
+
"18:24:16.764 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-0' for task 'md'\n"
|
300 |
]
|
301 |
},
|
302 |
"metadata": {},
|
|
|
305 |
{
|
306 |
"data": {
|
307 |
"text/html": [
|
308 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.793 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-1' for task 'md'\n",
|
309 |
"</pre>\n"
|
310 |
],
|
311 |
"text/plain": [
|
312 |
+
"18:24:16.793 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-1' for task 'md'\n"
|
313 |
]
|
314 |
},
|
315 |
"metadata": {},
|
|
|
318 |
{
|
319 |
"data": {
|
320 |
"text/html": [
|
321 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.797 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-3' for task 'md'\n",
|
322 |
"</pre>\n"
|
323 |
],
|
324 |
"text/plain": [
|
325 |
+
"18:24:16.797 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-3' for task 'md'\n"
|
326 |
]
|
327 |
},
|
328 |
"metadata": {},
|
|
|
331 |
{
|
332 |
"data": {
|
333 |
"text/html": [
|
334 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.800 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-4' for task 'md'\n",
|
335 |
"</pre>\n"
|
336 |
],
|
337 |
"text/plain": [
|
338 |
+
"18:24:16.800 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-4' for task 'md'\n"
|
339 |
]
|
340 |
},
|
341 |
"metadata": {},
|
|
|
344 |
{
|
345 |
"data": {
|
346 |
"text/html": [
|
347 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.803 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-8' for task 'md'\n",
|
348 |
"</pre>\n"
|
349 |
],
|
350 |
"text/plain": [
|
351 |
+
"18:24:16.803 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-8' for task 'md'\n"
|
352 |
]
|
353 |
},
|
354 |
"metadata": {},
|
|
|
357 |
{
|
358 |
"data": {
|
359 |
"text/html": [
|
360 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.805 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-9' for task 'md'\n",
|
361 |
"</pre>\n"
|
362 |
],
|
363 |
"text/plain": [
|
364 |
+
"18:24:16.805 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-9' for task 'md'\n"
|
365 |
]
|
366 |
},
|
367 |
"metadata": {},
|
|
|
370 |
{
|
371 |
"data": {
|
372 |
"text/html": [
|
373 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.808 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-2' for task 'md'\n",
|
374 |
"</pre>\n"
|
375 |
],
|
376 |
"text/plain": [
|
377 |
+
"18:24:16.808 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-2' for task 'md'\n"
|
378 |
]
|
379 |
},
|
380 |
"metadata": {},
|
|
|
383 |
{
|
384 |
"data": {
|
385 |
"text/html": [
|
386 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.810 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-6' for task 'md'\n",
|
387 |
"</pre>\n"
|
388 |
],
|
389 |
"text/plain": [
|
390 |
+
"18:24:16.810 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-6' for task 'md'\n"
|
391 |
]
|
392 |
},
|
393 |
"metadata": {},
|
|
|
396 |
{
|
397 |
"data": {
|
398 |
"text/html": [
|
399 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.813 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-7' for task 'md'\n",
|
400 |
"</pre>\n"
|
401 |
],
|
402 |
"text/plain": [
|
403 |
+
"18:24:16.813 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-7' for task 'md'\n"
|
404 |
]
|
405 |
},
|
406 |
"metadata": {},
|
|
|
409 |
{
|
410 |
"data": {
|
411 |
"text/html": [
|
412 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:16.949 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Created task run 'md-5' for task 'md'\n",
|
413 |
"</pre>\n"
|
414 |
],
|
415 |
"text/plain": [
|
416 |
+
"18:24:16.949 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Created task run 'md-5' for task 'md'\n"
|
417 |
]
|
418 |
},
|
419 |
"metadata": {},
|
|
|
422 |
{
|
423 |
"data": {
|
424 |
"text/html": [
|
425 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.496 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-9' for execution.\n",
|
426 |
"</pre>\n"
|
427 |
],
|
428 |
"text/plain": [
|
429 |
+
"18:24:17.496 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-9' for execution.\n"
|
430 |
]
|
431 |
},
|
432 |
"metadata": {},
|
|
|
435 |
{
|
436 |
"data": {
|
437 |
"text/html": [
|
438 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.510 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-7' for execution.\n",
|
439 |
"</pre>\n"
|
440 |
],
|
441 |
"text/plain": [
|
442 |
+
"18:24:17.510 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-7' for execution.\n"
|
443 |
]
|
444 |
},
|
445 |
"metadata": {},
|
|
|
448 |
{
|
449 |
"data": {
|
450 |
"text/html": [
|
451 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.520 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-1' for execution.\n",
|
452 |
"</pre>\n"
|
453 |
],
|
454 |
"text/plain": [
|
455 |
+
"18:24:17.520 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-1' for execution.\n"
|
456 |
]
|
457 |
},
|
458 |
"metadata": {},
|
|
|
461 |
{
|
462 |
"data": {
|
463 |
"text/html": [
|
464 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.529 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-5' for execution.\n",
|
465 |
"</pre>\n"
|
466 |
],
|
467 |
"text/plain": [
|
468 |
+
"18:24:17.529 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-5' for execution.\n"
|
469 |
]
|
470 |
},
|
471 |
"metadata": {},
|
|
|
474 |
{
|
475 |
"data": {
|
476 |
"text/html": [
|
477 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.536 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-8' for execution.\n",
|
478 |
"</pre>\n"
|
479 |
],
|
480 |
"text/plain": [
|
481 |
+
"18:24:17.536 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-8' for execution.\n"
|
482 |
]
|
483 |
},
|
484 |
"metadata": {},
|
|
|
487 |
{
|
488 |
"data": {
|
489 |
"text/html": [
|
490 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.550 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-0' for execution.\n",
|
491 |
"</pre>\n"
|
492 |
],
|
493 |
"text/plain": [
|
494 |
+
"18:24:17.550 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-0' for execution.\n"
|
495 |
]
|
496 |
},
|
497 |
"metadata": {},
|
|
|
500 |
{
|
501 |
"data": {
|
502 |
"text/html": [
|
503 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.605 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-3' for execution.\n",
|
504 |
"</pre>\n"
|
505 |
],
|
506 |
"text/plain": [
|
507 |
+
"18:24:17.605 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-3' for execution.\n"
|
508 |
]
|
509 |
},
|
510 |
"metadata": {},
|
|
|
513 |
{
|
514 |
"data": {
|
515 |
"text/html": [
|
516 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.614 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-4' for execution.\n",
|
517 |
"</pre>\n"
|
518 |
],
|
519 |
"text/plain": [
|
520 |
+
"18:24:17.614 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-4' for execution.\n"
|
521 |
]
|
522 |
},
|
523 |
"metadata": {},
|
|
|
526 |
{
|
527 |
"data": {
|
528 |
"text/html": [
|
529 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.621 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-6' for execution.\n",
|
530 |
"</pre>\n"
|
531 |
],
|
532 |
"text/plain": [
|
533 |
+
"18:24:17.621 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-6' for execution.\n"
|
534 |
]
|
535 |
},
|
536 |
"metadata": {},
|
|
|
539 |
{
|
540 |
"data": {
|
541 |
"text/html": [
|
542 |
+
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">18:24:17.635 | <span style=\"color: #008080; text-decoration-color: #008080\">INFO</span> | Flow run<span style=\"color: #800080; text-decoration-color: #800080\"> 'cinnamon-swine'</span> - Submitted task run 'md-2' for execution.\n",
|
543 |
"</pre>\n"
|
544 |
],
|
545 |
"text/plain": [
|
546 |
+
"18:24:17.635 | \u001b[36mINFO\u001b[0m | Flow run\u001b[35m 'cinnamon-swine'\u001b[0m - Submitted task run 'md-2' for execution.\n"
|
547 |
]
|
548 |
},
|
549 |
"metadata": {},
|
mlip_arena/tasks/diatomics/alignn/run.ipynb
DELETED
@@ -1,243 +0,0 @@
|
|
1 |
-
{
|
2 |
-
"cells": [
|
3 |
-
{
|
4 |
-
"cell_type": "code",
|
5 |
-
"execution_count": null,
|
6 |
-
"id": "3200850a-b8fb-4f50-9815-16ae8da0f942",
|
7 |
-
"metadata": {
|
8 |
-
"tags": []
|
9 |
-
},
|
10 |
-
"outputs": [],
|
11 |
-
"source": [
|
12 |
-
"from ase import Atoms, Atom\n",
|
13 |
-
"from ase.io import read, write\n",
|
14 |
-
"from ase.data import chemical_symbols, covalent_radii, vdw_alvarez\n",
|
15 |
-
"from ase.parallel import paropen as open\n",
|
16 |
-
"\n",
|
17 |
-
"from pathlib import Path\n",
|
18 |
-
"import os\n",
|
19 |
-
"import numpy as np\n",
|
20 |
-
"from pymatgen.core import Element\n",
|
21 |
-
"from tqdm.auto import tqdm\n",
|
22 |
-
"import pandas as pd\n",
|
23 |
-
"\n",
|
24 |
-
"\n",
|
25 |
-
"from alignn.ff.ff import AlignnAtomwiseCalculator,default_path\n",
|
26 |
-
"\n",
|
27 |
-
"\n",
|
28 |
-
"model_path = default_path()\n",
|
29 |
-
"calc = AlignnAtomwiseCalculator(path=model_path, device='cuda')\n",
|
30 |
-
"\n",
|
31 |
-
"model_name = 'ALIGNN'\n"
|
32 |
-
]
|
33 |
-
},
|
34 |
-
{
|
35 |
-
"cell_type": "code",
|
36 |
-
"execution_count": null,
|
37 |
-
"id": "90887faa-1601-4c4c-9c44-d16731471d7f",
|
38 |
-
"metadata": {
|
39 |
-
"scrolled": true,
|
40 |
-
"tags": []
|
41 |
-
},
|
42 |
-
"outputs": [],
|
43 |
-
"source": [
|
44 |
-
"\n",
|
45 |
-
"\n",
|
46 |
-
"for symbol in tqdm(chemical_symbols):\n",
|
47 |
-
" \n",
|
48 |
-
" s = set([symbol])\n",
|
49 |
-
" \n",
|
50 |
-
" if 'X' in s:\n",
|
51 |
-
" continue\n",
|
52 |
-
" \n",
|
53 |
-
" try:\n",
|
54 |
-
" atom = Atom(symbol)\n",
|
55 |
-
" rmin = covalent_radii[atom.number] * 0.95\n",
|
56 |
-
" rvdw = vdw_alvarez.vdw_radii[atom.number] if atom.number < len(vdw_alvarez.vdw_radii) else np.nan \n",
|
57 |
-
" rmax = 3.1 * rvdw if not np.isnan(rvdw) else 6\n",
|
58 |
-
" rstep = 0.01 #if rmin < 1 else 0.4\n",
|
59 |
-
"\n",
|
60 |
-
" a = 2 * rmax\n",
|
61 |
-
"\n",
|
62 |
-
" npts = int((rmax - rmin)/rstep)\n",
|
63 |
-
"\n",
|
64 |
-
" rs = np.linspace(rmin, rmax, npts)\n",
|
65 |
-
" e = np.zeros_like(rs)\n",
|
66 |
-
"\n",
|
67 |
-
" da = symbol + symbol\n",
|
68 |
-
"\n",
|
69 |
-
" out_dir = Path(str(da))\n",
|
70 |
-
"\n",
|
71 |
-
" os.makedirs(out_dir, exist_ok=True)\n",
|
72 |
-
"\n",
|
73 |
-
" skip = 0\n",
|
74 |
-
" \n",
|
75 |
-
" element = Element(symbol)\n",
|
76 |
-
" \n",
|
77 |
-
" try:\n",
|
78 |
-
" m = element.valence[1]\n",
|
79 |
-
" if element.valence == (0, 2):\n",
|
80 |
-
" m = 0\n",
|
81 |
-
" except:\n",
|
82 |
-
" m = 0\n",
|
83 |
-
" \n",
|
84 |
-
" \n",
|
85 |
-
" r = rs[0]\n",
|
86 |
-
" \n",
|
87 |
-
" positions = [\n",
|
88 |
-
" [a/2-r/2, a/2, a/2],\n",
|
89 |
-
" [a/2+r/2, a/2, a/2],\n",
|
90 |
-
" ]\n",
|
91 |
-
" \n",
|
92 |
-
" traj_fpath = out_dir / f\"{model_name}.extxyz\"\n",
|
93 |
-
"\n",
|
94 |
-
" if traj_fpath.exists():\n",
|
95 |
-
" traj = read(traj_fpath, index=\":\")\n",
|
96 |
-
" skip = len(traj)\n",
|
97 |
-
" atoms = traj[-1]\n",
|
98 |
-
" else:\n",
|
99 |
-
" # Create the unit cell with two atoms\n",
|
100 |
-
" atoms = Atoms(\n",
|
101 |
-
" da, \n",
|
102 |
-
" positions=positions,\n",
|
103 |
-
" # magmoms=magmoms,\n",
|
104 |
-
" cell=[a, a+0.001, a+0.002], \n",
|
105 |
-
" pbc=True\n",
|
106 |
-
" )\n",
|
107 |
-
" \n",
|
108 |
-
" print(atoms)\n",
|
109 |
-
"\n",
|
110 |
-
" calc = calc\n",
|
111 |
-
"\n",
|
112 |
-
" atoms.calc = calc\n",
|
113 |
-
"\n",
|
114 |
-
" for i, r in enumerate(tqdm(rs)):\n",
|
115 |
-
"\n",
|
116 |
-
" if i < skip:\n",
|
117 |
-
" continue\n",
|
118 |
-
"\n",
|
119 |
-
" positions = [\n",
|
120 |
-
" [a/2-r/2, a/2, a/2],\n",
|
121 |
-
" [a/2+r/2, a/2, a/2],\n",
|
122 |
-
" ]\n",
|
123 |
-
" \n",
|
124 |
-
" # atoms.set_initial_magnetic_moments(magmoms)\n",
|
125 |
-
" \n",
|
126 |
-
" atoms.set_positions(positions)\n",
|
127 |
-
"\n",
|
128 |
-
" e[i] = atoms.get_potential_energy()\n",
|
129 |
-
" \n",
|
130 |
-
" atoms.calc.results.update({\n",
|
131 |
-
" \"forces\": atoms.get_forces()\n",
|
132 |
-
" })\n",
|
133 |
-
"\n",
|
134 |
-
" write(traj_fpath, atoms, append=\"a\")\n",
|
135 |
-
" except Exception as e:\n",
|
136 |
-
" print(e)\n"
|
137 |
-
]
|
138 |
-
},
|
139 |
-
{
|
140 |
-
"cell_type": "code",
|
141 |
-
"execution_count": null,
|
142 |
-
"id": "a0ac2c09-370b-4fdd-bf74-ea5c4ade0215",
|
143 |
-
"metadata": {},
|
144 |
-
"outputs": [],
|
145 |
-
"source": [
|
146 |
-
"\n",
|
147 |
-
"\n",
|
148 |
-
"df = pd.DataFrame(columns=['name', 'method', 'R', 'E', 'F', 'S^2'])\n",
|
149 |
-
"\n",
|
150 |
-
"for symbol in tqdm(chemical_symbols):\n",
|
151 |
-
" \n",
|
152 |
-
" da = symbol + symbol\n",
|
153 |
-
" \n",
|
154 |
-
" out_dir = Path(da)\n",
|
155 |
-
" \n",
|
156 |
-
" traj_fpath = out_dir / f\"{model_name}.extxyz\"\n",
|
157 |
-
"\n",
|
158 |
-
"\n",
|
159 |
-
" if traj_fpath.exists():\n",
|
160 |
-
" traj = read(traj_fpath, index=\":\")\n",
|
161 |
-
" else:\n",
|
162 |
-
" continue\n",
|
163 |
-
" \n",
|
164 |
-
" Rs, Es, Fs, S2s = [], [], [], []\n",
|
165 |
-
" for atoms in traj:\n",
|
166 |
-
" \n",
|
167 |
-
" vec = atoms.positions[1] - atoms.positions[0]\n",
|
168 |
-
" r = np.linalg.norm(vec)\n",
|
169 |
-
" e = atoms.get_potential_energy()\n",
|
170 |
-
" f = np.inner(vec/r, atoms.get_forces()[1])\n",
|
171 |
-
" # s2 = np.mean(np.power(atoms.get_magnetic_moments(), 2))\n",
|
172 |
-
" \n",
|
173 |
-
" Rs.append(r)\n",
|
174 |
-
" Es.append(e)\n",
|
175 |
-
" Fs.append(f)\n",
|
176 |
-
" # S2s.append(s2)\n",
|
177 |
-
" \n",
|
178 |
-
" data = {\n",
|
179 |
-
" 'name': da,\n",
|
180 |
-
" 'method': 'ALIGNN',\n",
|
181 |
-
" 'R': Rs,\n",
|
182 |
-
" 'E': Es,\n",
|
183 |
-
" 'F': Fs,\n",
|
184 |
-
" 'S^2': S2s\n",
|
185 |
-
" }\n",
|
186 |
-
"\n",
|
187 |
-
" df = pd.concat([df, pd.DataFrame([data])], ignore_index=True)\n",
|
188 |
-
"\n",
|
189 |
-
"json_fpath = 'homonuclear-diatomics.json'\n",
|
190 |
-
"\n",
|
191 |
-
"df.to_json(json_fpath, orient='records') "
|
192 |
-
]
|
193 |
-
},
|
194 |
-
{
|
195 |
-
"cell_type": "code",
|
196 |
-
"execution_count": null,
|
197 |
-
"id": "e0dd4367-3dca-440f-a7a9-7fdd84183f2c",
|
198 |
-
"metadata": {
|
199 |
-
"tags": []
|
200 |
-
},
|
201 |
-
"outputs": [],
|
202 |
-
"source": [
|
203 |
-
"df"
|
204 |
-
]
|
205 |
-
},
|
206 |
-
{
|
207 |
-
"cell_type": "code",
|
208 |
-
"execution_count": null,
|
209 |
-
"id": "4e6ae884-89f3-43f2-8fd9-19bf00c91566",
|
210 |
-
"metadata": {},
|
211 |
-
"outputs": [],
|
212 |
-
"source": []
|
213 |
-
}
|
214 |
-
],
|
215 |
-
"metadata": {
|
216 |
-
"kernelspec": {
|
217 |
-
"display_name": "mlip-arena",
|
218 |
-
"language": "python",
|
219 |
-
"name": "mlip-arena"
|
220 |
-
},
|
221 |
-
"language_info": {
|
222 |
-
"codemirror_mode": {
|
223 |
-
"name": "ipython",
|
224 |
-
"version": 3
|
225 |
-
},
|
226 |
-
"file_extension": ".py",
|
227 |
-
"mimetype": "text/x-python",
|
228 |
-
"name": "python",
|
229 |
-
"nbconvert_exporter": "python",
|
230 |
-
"pygments_lexer": "ipython3",
|
231 |
-
"version": "3.11.8"
|
232 |
-
},
|
233 |
-
"widgets": {
|
234 |
-
"application/vnd.jupyter.widget-state+json": {
|
235 |
-
"state": {},
|
236 |
-
"version_major": 2,
|
237 |
-
"version_minor": 0
|
238 |
-
}
|
239 |
-
}
|
240 |
-
},
|
241 |
-
"nbformat": 4,
|
242 |
-
"nbformat_minor": 5
|
243 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mlip_arena/tasks/diatomics/chgnet/homonuclear-diatomics.json
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
mlip_arena/tasks/diatomics/equiformer/homonuclear-diatomics.json
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
mlip_arena/tasks/diatomics/m3gnet/homonuclear-diatomics.json
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
mlip_arena/tasks/diatomics/mace-mp/homonuclear-diatomics.json
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
mlip_arena/tasks/diatomics/mace-off/homonuclear-diatomics.json
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
mlip_arena/tasks/diatomics/orb/homonuclear-diatomics.json
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
mlip_arena/tasks/diatomics/run.ipynb
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
mlip_arena/tasks/diatomics/sevennet/homonuclear-diatomics.json
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
pyproject.toml
CHANGED
@@ -37,16 +37,37 @@ dependencies=[
|
|
37 |
]
|
38 |
|
39 |
[project.optional-dependencies]
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
44 |
app = [
|
45 |
"streamlit",
|
46 |
"plotly",
|
47 |
"bokeh==2.4.3",
|
48 |
"statsmodels"
|
49 |
]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
|
51 |
[project.urls]
|
52 |
Homepage = "https://github.com/atomind-ai/mlip-arena"
|
|
|
37 |
]
|
38 |
|
39 |
[project.optional-dependencies]
|
40 |
+
run = [
|
41 |
+
"torch==2.2.0",
|
42 |
+
"e3nn==0.5.1",
|
43 |
+
"matgl==1.1.2",
|
44 |
+
"dgl==2.4.0+cu121",
|
45 |
+
"mace-torch==0.3.4",
|
46 |
+
"chgnet==0.3.8",
|
47 |
+
"fairchem-core==0.1.0",
|
48 |
+
"sevenn==0.9.3.post1",
|
49 |
+
"orb-models==0.3.1",
|
50 |
+
"alignn==2024.5.27"
|
51 |
+
]
|
52 |
app = [
|
53 |
"streamlit",
|
54 |
"plotly",
|
55 |
"bokeh==2.4.3",
|
56 |
"statsmodels"
|
57 |
]
|
58 |
+
test = [
|
59 |
+
"torch==2.2.0",
|
60 |
+
"e3nn==0.5.1",
|
61 |
+
"matgl==1.1.2",
|
62 |
+
"dgl==2.4.0+cu121",
|
63 |
+
"mace-torch==0.3.4",
|
64 |
+
"chgnet==0.3.8",
|
65 |
+
"fairchem-core==0.1.0",
|
66 |
+
"sevenn==0.9.3.post1",
|
67 |
+
"orb-models==0.3.1",
|
68 |
+
"alignn==2024.5.27",
|
69 |
+
"pytest"
|
70 |
+
]
|
71 |
|
72 |
[project.urls]
|
73 |
Homepage = "https://github.com/atomind-ai/mlip-arena"
|
scripts/install-pyg.sh
CHANGED
@@ -1,15 +1,11 @@
|
|
1 |
|
2 |
|
3 |
# PyTorch Geometric (OCP)
|
4 |
-
TORCH=2.
|
5 |
CUDA=cu121
|
6 |
|
7 |
pip install --verbose --no-cache torch-scatter -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html
|
8 |
pip install --verbose --no-cache torch-sparse -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html
|
9 |
|
10 |
-
# DGL (M3GNet)
|
11 |
-
pip install
|
12 |
-
|
13 |
-
|
14 |
-
# DGL (ALIGNN)
|
15 |
-
# pip install --verbose --no-cache dgl -f https://data.dgl.ai/wheels/torch-2.2/cu122/repo.html
|
|
|
1 |
|
2 |
|
3 |
# PyTorch Geometric (OCP)
|
4 |
+
TORCH=2.3.1
|
5 |
CUDA=cu121
|
6 |
|
7 |
pip install --verbose --no-cache torch-scatter -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html
|
8 |
pip install --verbose --no-cache torch-sparse -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html
|
9 |
|
10 |
+
# DGL (M3GNet, ALIGNN)
|
11 |
+
pip install dgl -U -f https://data.dgl.ai/wheels/torch-2.3/cu121/repo.html
|
|
|
|
|
|
|
|
tests/download_models.py
DELETED
@@ -1,5 +0,0 @@
|
|
1 |
-
from huggingface_hub import hf_hub_download
|
2 |
-
|
3 |
-
fpath = hf_hub_download(repo_id="cyrusyc/mace-universal", subfolder="pretrained", filename="2023-12-12-mace-128-L1_epoch-199.model")
|
4 |
-
|
5 |
-
print(fpath)
|
|
|
|
|
|
|
|
|
|
|
|
tests/hf_hub.ipynb
DELETED
@@ -1,480 +0,0 @@
|
|
1 |
-
{
|
2 |
-
"cells": [
|
3 |
-
{
|
4 |
-
"cell_type": "code",
|
5 |
-
"execution_count": 7,
|
6 |
-
"metadata": {},
|
7 |
-
"outputs": [],
|
8 |
-
"source": [
|
9 |
-
"import torch\n",
|
10 |
-
"from huggingface_hub import hf_hub_download\n",
|
11 |
-
"from ase.calculators.calculator import Calculator\n",
|
12 |
-
"# from mlip_arena.models import MLIP, MLIPCalculator, ModuleMLIP\n",
|
13 |
-
"\n",
|
14 |
-
"from mlip_arena.models.externals import MACE_MP_Medium\n",
|
15 |
-
"\n",
|
16 |
-
"from mlip_arena.models.utils import MLIPMap, MLIPEnum"
|
17 |
-
]
|
18 |
-
},
|
19 |
-
{
|
20 |
-
"cell_type": "code",
|
21 |
-
"execution_count": 9,
|
22 |
-
"metadata": {},
|
23 |
-
"outputs": [
|
24 |
-
{
|
25 |
-
"data": {
|
26 |
-
"text/plain": [
|
27 |
-
"True"
|
28 |
-
]
|
29 |
-
},
|
30 |
-
"execution_count": 9,
|
31 |
-
"metadata": {},
|
32 |
-
"output_type": "execute_result"
|
33 |
-
}
|
34 |
-
],
|
35 |
-
"source": [
|
36 |
-
"issubclass(MLIPEnum[\"MACE-MP(M)\"].value, Calculator)"
|
37 |
-
]
|
38 |
-
},
|
39 |
-
{
|
40 |
-
"cell_type": "code",
|
41 |
-
"execution_count": 13,
|
42 |
-
"metadata": {},
|
43 |
-
"outputs": [
|
44 |
-
{
|
45 |
-
"data": {
|
46 |
-
"text/plain": [
|
47 |
-
"True"
|
48 |
-
]
|
49 |
-
},
|
50 |
-
"execution_count": 13,
|
51 |
-
"metadata": {},
|
52 |
-
"output_type": "execute_result"
|
53 |
-
}
|
54 |
-
],
|
55 |
-
"source": [
|
56 |
-
"isinstance(MLIPEnum[\"MACE-MP(M)\"], MLIPEnum)# in MLIPEnum"
|
57 |
-
]
|
58 |
-
},
|
59 |
-
{
|
60 |
-
"cell_type": "code",
|
61 |
-
"execution_count": 16,
|
62 |
-
"metadata": {},
|
63 |
-
"outputs": [
|
64 |
-
{
|
65 |
-
"data": {
|
66 |
-
"text/plain": [
|
67 |
-
"['MACE-MP(M)', 'CHGNet', 'EquiformerV2(OC22)', 'eSCN(OC20)']"
|
68 |
-
]
|
69 |
-
},
|
70 |
-
"execution_count": 16,
|
71 |
-
"metadata": {},
|
72 |
-
"output_type": "execute_result"
|
73 |
-
}
|
74 |
-
],
|
75 |
-
"source": [
|
76 |
-
"MLIPEnum._member_names_"
|
77 |
-
]
|
78 |
-
},
|
79 |
-
{
|
80 |
-
"cell_type": "code",
|
81 |
-
"execution_count": 9,
|
82 |
-
"metadata": {},
|
83 |
-
"outputs": [
|
84 |
-
{
|
85 |
-
"data": {
|
86 |
-
"text/plain": [
|
87 |
-
"{'MACE-MP(M)': mlip_arena.models.externals.MACE_MP_Medium,\n",
|
88 |
-
" 'CHGNet': mlip_arena.models.externals.CHGNet,\n",
|
89 |
-
" 'EquiformerV2(OC22)': mlip_arena.models.externals.EquiformerV2,\n",
|
90 |
-
" 'eSCN(OC20)': mlip_arena.models.externals.eSCN}"
|
91 |
-
]
|
92 |
-
},
|
93 |
-
"execution_count": 9,
|
94 |
-
"metadata": {},
|
95 |
-
"output_type": "execute_result"
|
96 |
-
}
|
97 |
-
],
|
98 |
-
"source": [
|
99 |
-
"MLIPMap"
|
100 |
-
]
|
101 |
-
},
|
102 |
-
{
|
103 |
-
"cell_type": "code",
|
104 |
-
"execution_count": 8,
|
105 |
-
"metadata": {},
|
106 |
-
"outputs": [
|
107 |
-
{
|
108 |
-
"name": "stdout",
|
109 |
-
"output_type": "stream",
|
110 |
-
"text": [
|
111 |
-
"MLIPEnum.MACE-MP(M)\n",
|
112 |
-
"MLIPEnum.CHGNet\n",
|
113 |
-
"MLIPEnum.EquiformerV2(OC22)\n",
|
114 |
-
"MLIPEnum.eSCN(OC20)\n"
|
115 |
-
]
|
116 |
-
}
|
117 |
-
],
|
118 |
-
"source": [
|
119 |
-
"for mlip in MLIPEnum:\n",
|
120 |
-
" print(mlip)"
|
121 |
-
]
|
122 |
-
},
|
123 |
-
{
|
124 |
-
"cell_type": "code",
|
125 |
-
"execution_count": 4,
|
126 |
-
"metadata": {},
|
127 |
-
"outputs": [
|
128 |
-
{
|
129 |
-
"data": {
|
130 |
-
"text/plain": [
|
131 |
-
"mlip_arena.models.externals.MACE_MP_Medium"
|
132 |
-
]
|
133 |
-
},
|
134 |
-
"execution_count": 4,
|
135 |
-
"metadata": {},
|
136 |
-
"output_type": "execute_result"
|
137 |
-
}
|
138 |
-
],
|
139 |
-
"source": [
|
140 |
-
"MLIPMap['MACE-MP(M)']"
|
141 |
-
]
|
142 |
-
},
|
143 |
-
{
|
144 |
-
"cell_type": "code",
|
145 |
-
"execution_count": 2,
|
146 |
-
"metadata": {},
|
147 |
-
"outputs": [
|
148 |
-
{
|
149 |
-
"name": "stdout",
|
150 |
-
"output_type": "stream",
|
151 |
-
"text": [
|
152 |
-
"Using Materials Project MACE for MACECalculator with /global/homes/c/cyrusyc/.cache/mace/5yyxdm76\n",
|
153 |
-
"Selected GPU cuda:0 with 40338.06 MB free memory from 1 GPUs\n",
|
154 |
-
"Default dtype float32 does not match model dtype float64, converting models to float32.\n"
|
155 |
-
]
|
156 |
-
}
|
157 |
-
],
|
158 |
-
"source": [
|
159 |
-
"mace_mp = MACE_MP_Medium()"
|
160 |
-
]
|
161 |
-
},
|
162 |
-
{
|
163 |
-
"cell_type": "code",
|
164 |
-
"execution_count": 3,
|
165 |
-
"metadata": {},
|
166 |
-
"outputs": [
|
167 |
-
{
|
168 |
-
"name": "stdout",
|
169 |
-
"output_type": "stream",
|
170 |
-
"text": [
|
171 |
-
"Select GPU cuda:0 with 40316.98 MB free memory from 1 GPUs\n",
|
172 |
-
"CHGNet v0.3.0 initialized with 412,525 parameters\n",
|
173 |
-
"CHGNet will run on cuda:0\n"
|
174 |
-
]
|
175 |
-
},
|
176 |
-
{
|
177 |
-
"name": "stderr",
|
178 |
-
"output_type": "stream",
|
179 |
-
"text": [
|
180 |
-
"WARNING:root:Detected old config, converting to new format. Consider updating to avoid potential incompatibilities.\n",
|
181 |
-
"WARNING:root:Skipping scheduler setup. No training set found.\n"
|
182 |
-
]
|
183 |
-
}
|
184 |
-
],
|
185 |
-
"source": [
|
186 |
-
"from mlip_arena.models.externals import EquiformerV2, CHGNet\n",
|
187 |
-
"\n",
|
188 |
-
"chgnet = CHGNet()\n",
|
189 |
-
"\n",
|
190 |
-
"equiformer_v2 = EquiformerV2()\n"
|
191 |
-
]
|
192 |
-
},
|
193 |
-
{
|
194 |
-
"cell_type": "code",
|
195 |
-
"execution_count": 2,
|
196 |
-
"metadata": {},
|
197 |
-
"outputs": [],
|
198 |
-
"source": [
|
199 |
-
"\n",
|
200 |
-
"fpath = hf_hub_download(\n",
|
201 |
-
" repo_id=\"cyrusyc/mace-universal\",\n",
|
202 |
-
" subfolder=\"pretrained\",\n",
|
203 |
-
" filename=\"2023-12-12-mace-128-L1_epoch-199.model\",\n",
|
204 |
-
" revision=None, # TODO: Add revision\n",
|
205 |
-
")\n",
|
206 |
-
"\n",
|
207 |
-
"model = torch.load(fpath, map_location=\"cpu\")"
|
208 |
-
]
|
209 |
-
},
|
210 |
-
{
|
211 |
-
"cell_type": "code",
|
212 |
-
"execution_count": 3,
|
213 |
-
"metadata": {},
|
214 |
-
"outputs": [],
|
215 |
-
"source": [
|
216 |
-
"module = ModuleMLIP(model=model)"
|
217 |
-
]
|
218 |
-
},
|
219 |
-
{
|
220 |
-
"cell_type": "code",
|
221 |
-
"execution_count": 4,
|
222 |
-
"metadata": {},
|
223 |
-
"outputs": [
|
224 |
-
{
|
225 |
-
"data": {
|
226 |
-
"text/plain": [
|
227 |
-
"CommitInfo(commit_url='https://huggingface.co/atomind/mace-mp-medium/commit/eb12c5387b9e655d83a4e2e10c0f0779c3745227', commit_message='Push model using huggingface_hub.', commit_description='', oid='eb12c5387b9e655d83a4e2e10c0f0779c3745227', pr_url=None, pr_revision=None, pr_num=None)"
|
228 |
-
]
|
229 |
-
},
|
230 |
-
"execution_count": 4,
|
231 |
-
"metadata": {},
|
232 |
-
"output_type": "execute_result"
|
233 |
-
}
|
234 |
-
],
|
235 |
-
"source": [
|
236 |
-
"module.save_pretrained(\n",
|
237 |
-
" \"mace\",\n",
|
238 |
-
" repo_id=\"atomind/MACE_MP_Medium\".lower().replace(\"_\", \"-\"),\n",
|
239 |
-
" push_to_hub=True\n",
|
240 |
-
")"
|
241 |
-
]
|
242 |
-
},
|
243 |
-
{
|
244 |
-
"cell_type": "code",
|
245 |
-
"execution_count": 1,
|
246 |
-
"metadata": {},
|
247 |
-
"outputs": [
|
248 |
-
{
|
249 |
-
"name": "stderr",
|
250 |
-
"output_type": "stream",
|
251 |
-
"text": [
|
252 |
-
"/pscratch/sd/c/cyrusyc/.conda/mlip-arena/lib/python3.11/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
|
253 |
-
" from .autonotebook import tqdm as notebook_tqdm\n"
|
254 |
-
]
|
255 |
-
}
|
256 |
-
],
|
257 |
-
"source": [
|
258 |
-
"\n",
|
259 |
-
"from mlip_arena.models.mace import MACE_MP_Medium\n",
|
260 |
-
"import torch\n",
|
261 |
-
"\n",
|
262 |
-
"calc = MACE_MP_Medium(device=torch.device(\"cuda\"))"
|
263 |
-
]
|
264 |
-
},
|
265 |
-
{
|
266 |
-
"cell_type": "code",
|
267 |
-
"execution_count": 2,
|
268 |
-
"metadata": {},
|
269 |
-
"outputs": [
|
270 |
-
{
|
271 |
-
"data": {
|
272 |
-
"text/plain": [
|
273 |
-
"ScaleShiftMACE(\n",
|
274 |
-
" (node_embedding): LinearNodeEmbeddingBlock(\n",
|
275 |
-
" (linear): Linear(89x0e -> 128x0e | 11392 weights)\n",
|
276 |
-
" )\n",
|
277 |
-
" (radial_embedding): RadialEmbeddingBlock(\n",
|
278 |
-
" (bessel_fn): BesselBasis(r_max=6.0, num_basis=10, trainable=False)\n",
|
279 |
-
" (cutoff_fn): PolynomialCutoff(p=5.0, r_max=6.0)\n",
|
280 |
-
" )\n",
|
281 |
-
" (spherical_harmonics): SphericalHarmonics()\n",
|
282 |
-
" (atomic_energies_fn): AtomicEnergiesBlock(energies=[-3.6672, -1.3321, -3.4821, -4.7367, -7.7249, -8.4056, -7.3601, -7.2846, -4.8965, 0.0000, -2.7594, -2.8140, -4.8469, -7.6948, -6.9633, -4.6726, -2.8117, -0.0626, -2.6176, -5.3905, -7.8858, -10.2684, -8.6651, -9.2331, -8.3050, -7.0490, -5.5774, -5.1727, -3.2521, -1.2902, -3.5271, -4.7085, -3.9765, -3.8862, -2.5185, 6.7669, -2.5635, -4.9380, -10.1498, -11.8469, -12.1389, -8.7917, -8.7869, -7.7809, -6.8500, -4.8910, -2.0634, -0.6396, -2.7887, -3.8186, -3.5871, -2.8804, -1.6356, 9.8467, -2.7653, -4.9910, -8.9337, -8.7356, -8.0190, -8.2515, -7.5917, -8.1697, -13.5927, -18.5175, -7.6474, -8.1230, -7.6078, -6.8503, -7.8269, -3.5848, -7.4554, -12.7963, -14.1081, -9.3549, -11.3875, -9.6219, -7.3244, -5.3047, -2.3801, 0.2495, -2.3240, -3.7300, -3.4388, -5.0629, -11.0246, -12.2656, -13.8556, -14.9331, -15.2828])\n",
|
283 |
-
" (interactions): ModuleList(\n",
|
284 |
-
" (0): RealAgnosticResidualInteractionBlock(\n",
|
285 |
-
" (linear_up): Linear(128x0e -> 128x0e | 16384 weights)\n",
|
286 |
-
" (conv_tp): TensorProduct(128x0e x 1x0e+1x1o+1x2e+1x3o -> 128x0e+128x1o+128x2e+128x3o | 512 paths | 512 weights)\n",
|
287 |
-
" (conv_tp_weights): FullyConnectedNet[10, 64, 64, 64, 512]\n",
|
288 |
-
" (linear): Linear(128x0e+128x1o+128x2e+128x3o -> 128x0e+128x1o+128x2e+128x3o | 65536 weights)\n",
|
289 |
-
" (skip_tp): FullyConnectedTensorProduct(128x0e x 89x0e -> 128x0e+128x1o | 1458176 paths | 1458176 weights)\n",
|
290 |
-
" (reshape): reshape_irreps()\n",
|
291 |
-
" )\n",
|
292 |
-
" (1): RealAgnosticResidualInteractionBlock(\n",
|
293 |
-
" (linear_up): Linear(128x0e+128x1o -> 128x0e+128x1o | 32768 weights)\n",
|
294 |
-
" (conv_tp): TensorProduct(128x0e+128x1o x 1x0e+1x1o+1x2e+1x3o -> 256x0e+384x1o+384x2e+256x3o | 1280 paths | 1280 weights)\n",
|
295 |
-
" (conv_tp_weights): FullyConnectedNet[10, 64, 64, 64, 1280]\n",
|
296 |
-
" (linear): Linear(256x0e+384x1o+384x2e+256x3o -> 128x0e+128x1o+128x2e+128x3o | 163840 weights)\n",
|
297 |
-
" (skip_tp): FullyConnectedTensorProduct(128x0e+128x1o x 89x0e -> 128x0e | 1458176 paths | 1458176 weights)\n",
|
298 |
-
" (reshape): reshape_irreps()\n",
|
299 |
-
" )\n",
|
300 |
-
" )\n",
|
301 |
-
" (products): ModuleList(\n",
|
302 |
-
" (0): EquivariantProductBasisBlock(\n",
|
303 |
-
" (symmetric_contractions): SymmetricContraction(\n",
|
304 |
-
" (contractions): ModuleList(\n",
|
305 |
-
" (0): Contraction(\n",
|
306 |
-
" (contractions_weighting): ModuleList(\n",
|
307 |
-
" (0-1): 2 x GraphModule()\n",
|
308 |
-
" )\n",
|
309 |
-
" (contractions_features): ModuleList(\n",
|
310 |
-
" (0-1): 2 x GraphModule()\n",
|
311 |
-
" )\n",
|
312 |
-
" (weights): ParameterList(\n",
|
313 |
-
" (0): Parameter containing: [torch.float64 of size 89x4x128 (cuda:0)]\n",
|
314 |
-
" (1): Parameter containing: [torch.float64 of size 89x1x128 (cuda:0)]\n",
|
315 |
-
" )\n",
|
316 |
-
" (graph_opt_main): GraphModule()\n",
|
317 |
-
" )\n",
|
318 |
-
" (1): Contraction(\n",
|
319 |
-
" (contractions_weighting): ModuleList(\n",
|
320 |
-
" (0-1): 2 x GraphModule()\n",
|
321 |
-
" )\n",
|
322 |
-
" (contractions_features): ModuleList(\n",
|
323 |
-
" (0-1): 2 x GraphModule()\n",
|
324 |
-
" )\n",
|
325 |
-
" (weights): ParameterList(\n",
|
326 |
-
" (0): Parameter containing: [torch.float64 of size 89x6x128 (cuda:0)]\n",
|
327 |
-
" (1): Parameter containing: [torch.float64 of size 89x1x128 (cuda:0)]\n",
|
328 |
-
" )\n",
|
329 |
-
" (graph_opt_main): GraphModule()\n",
|
330 |
-
" )\n",
|
331 |
-
" )\n",
|
332 |
-
" )\n",
|
333 |
-
" (linear): Linear(128x0e+128x1o -> 128x0e+128x1o | 32768 weights)\n",
|
334 |
-
" )\n",
|
335 |
-
" (1): EquivariantProductBasisBlock(\n",
|
336 |
-
" (symmetric_contractions): SymmetricContraction(\n",
|
337 |
-
" (contractions): ModuleList(\n",
|
338 |
-
" (0): Contraction(\n",
|
339 |
-
" (contractions_weighting): ModuleList(\n",
|
340 |
-
" (0-1): 2 x GraphModule()\n",
|
341 |
-
" )\n",
|
342 |
-
" (contractions_features): ModuleList(\n",
|
343 |
-
" (0-1): 2 x GraphModule()\n",
|
344 |
-
" )\n",
|
345 |
-
" (weights): ParameterList(\n",
|
346 |
-
" (0): Parameter containing: [torch.float64 of size 89x4x128 (cuda:0)]\n",
|
347 |
-
" (1): Parameter containing: [torch.float64 of size 89x1x128 (cuda:0)]\n",
|
348 |
-
" )\n",
|
349 |
-
" (graph_opt_main): GraphModule()\n",
|
350 |
-
" )\n",
|
351 |
-
" )\n",
|
352 |
-
" )\n",
|
353 |
-
" (linear): Linear(128x0e -> 128x0e | 16384 weights)\n",
|
354 |
-
" )\n",
|
355 |
-
" )\n",
|
356 |
-
" (readouts): ModuleList(\n",
|
357 |
-
" (0): LinearReadoutBlock(\n",
|
358 |
-
" (linear): Linear(128x0e+128x1o -> 1x0e | 128 weights)\n",
|
359 |
-
" )\n",
|
360 |
-
" (1): NonLinearReadoutBlock(\n",
|
361 |
-
" (linear_1): Linear(128x0e -> 16x0e | 2048 weights)\n",
|
362 |
-
" (non_linearity): Activation [x] (16x0e -> 16x0e)\n",
|
363 |
-
" (linear_2): Linear(16x0e -> 1x0e | 16 weights)\n",
|
364 |
-
" )\n",
|
365 |
-
" )\n",
|
366 |
-
" (scale_shift): ScaleShiftBlock(scale=0.804154, shift=0.164097)\n",
|
367 |
-
")"
|
368 |
-
]
|
369 |
-
},
|
370 |
-
"execution_count": 2,
|
371 |
-
"metadata": {},
|
372 |
-
"output_type": "execute_result"
|
373 |
-
}
|
374 |
-
],
|
375 |
-
"source": [
|
376 |
-
"calc.model\n"
|
377 |
-
]
|
378 |
-
},
|
379 |
-
{
|
380 |
-
"cell_type": "code",
|
381 |
-
"execution_count": 2,
|
382 |
-
"metadata": {},
|
383 |
-
"outputs": [],
|
384 |
-
"source": [
|
385 |
-
"from mlip_arena.models import MLIP\n",
|
386 |
-
"\n",
|
387 |
-
"model = MLIP.from_pretrained(\"atomind/mace-mp-medium\", map_location=\"cuda\", revision=\"main\")"
|
388 |
-
]
|
389 |
-
},
|
390 |
-
{
|
391 |
-
"cell_type": "code",
|
392 |
-
"execution_count": 5,
|
393 |
-
"metadata": {},
|
394 |
-
"outputs": [
|
395 |
-
{
|
396 |
-
"data": {
|
397 |
-
"text/plain": [
|
398 |
-
"<generator object Module.modules at 0x7ff33915f920>"
|
399 |
-
]
|
400 |
-
},
|
401 |
-
"execution_count": 5,
|
402 |
-
"metadata": {},
|
403 |
-
"output_type": "execute_result"
|
404 |
-
}
|
405 |
-
],
|
406 |
-
"source": [
|
407 |
-
"model.modules()"
|
408 |
-
]
|
409 |
-
},
|
410 |
-
{
|
411 |
-
"cell_type": "code",
|
412 |
-
"execution_count": 8,
|
413 |
-
"metadata": {},
|
414 |
-
"outputs": [
|
415 |
-
{
|
416 |
-
"ename": "AttributeError",
|
417 |
-
"evalue": "MLIP has no attribute `model`",
|
418 |
-
"output_type": "error",
|
419 |
-
"traceback": [
|
420 |
-
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
|
421 |
-
"\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)",
|
422 |
-
"Cell \u001b[0;32mIn[8], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43mmodel\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_submodule\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mmodel\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n",
|
423 |
-
"File \u001b[0;32m/pscratch/sd/c/cyrusyc/.conda/mlip-arena/lib/python3.11/site-packages/torch/nn/modules/module.py:681\u001b[0m, in \u001b[0;36mModule.get_submodule\u001b[0;34m(self, target)\u001b[0m\n\u001b[1;32m 678\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m item \u001b[38;5;129;01min\u001b[39;00m atoms:\n\u001b[1;32m 680\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mhasattr\u001b[39m(mod, item):\n\u001b[0;32m--> 681\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mAttributeError\u001b[39;00m(mod\u001b[38;5;241m.\u001b[39m_get_name() \u001b[38;5;241m+\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m has no \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 682\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mattribute `\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;241m+\u001b[39m item \u001b[38;5;241m+\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m`\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 684\u001b[0m mod \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mgetattr\u001b[39m(mod, item)\n\u001b[1;32m 686\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(mod, torch\u001b[38;5;241m.\u001b[39mnn\u001b[38;5;241m.\u001b[39mModule):\n",
|
424 |
-
"\u001b[0;31mAttributeError\u001b[0m: MLIP has no attribute `model`"
|
425 |
-
]
|
426 |
-
}
|
427 |
-
],
|
428 |
-
"source": [
|
429 |
-
"model.get_submodule(\"model\")"
|
430 |
-
]
|
431 |
-
},
|
432 |
-
{
|
433 |
-
"cell_type": "code",
|
434 |
-
"execution_count": null,
|
435 |
-
"metadata": {},
|
436 |
-
"outputs": [],
|
437 |
-
"source": [
|
438 |
-
"for name, param in model.named_parameters():\n",
|
439 |
-
" print(name, param.data)"
|
440 |
-
]
|
441 |
-
},
|
442 |
-
{
|
443 |
-
"cell_type": "code",
|
444 |
-
"execution_count": null,
|
445 |
-
"metadata": {},
|
446 |
-
"outputs": [],
|
447 |
-
"source": [
|
448 |
-
"print(module)"
|
449 |
-
]
|
450 |
-
},
|
451 |
-
{
|
452 |
-
"cell_type": "code",
|
453 |
-
"execution_count": null,
|
454 |
-
"metadata": {},
|
455 |
-
"outputs": [],
|
456 |
-
"source": []
|
457 |
-
}
|
458 |
-
],
|
459 |
-
"metadata": {
|
460 |
-
"kernelspec": {
|
461 |
-
"display_name": "Python 3",
|
462 |
-
"language": "python",
|
463 |
-
"name": "python3"
|
464 |
-
},
|
465 |
-
"language_info": {
|
466 |
-
"codemirror_mode": {
|
467 |
-
"name": "ipython",
|
468 |
-
"version": 3
|
469 |
-
},
|
470 |
-
"file_extension": ".py",
|
471 |
-
"mimetype": "text/x-python",
|
472 |
-
"name": "python",
|
473 |
-
"nbconvert_exporter": "python",
|
474 |
-
"pygments_lexer": "ipython3",
|
475 |
-
"version": "3.11.8"
|
476 |
-
}
|
477 |
-
},
|
478 |
-
"nbformat": 4,
|
479 |
-
"nbformat_minor": 2
|
480 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tests/oxygen_diatomics.ipynb
DELETED
The diff for this file is too large to render.
See raw diff
|
|