Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OCx24 Release #915

Merged
merged 29 commits into from
Nov 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
deedc3f
initial ocx scripts
mshuaibii Nov 4, 2024
1fd586b
adding documentation
brookwander Nov 6, 2024
787c70d
adding summary figure
brookwander Nov 14, 2024
df5b27e
final updates to ml inference needs documentation and data
brookwander Nov 15, 2024
4f61fdc
adding docs + small tweaks
brookwander Nov 15, 2024
7e0eb89
adding all data
brookwander Nov 15, 2024
5148cbe
Merge branch 'main' into ocx
brookwander Nov 15, 2024
0c078ca
ocx updates
mshuaibii Nov 16, 2024
5d15cb6
add xrf data
mshuaibii Nov 18, 2024
a8cfe86
create data readme
mshuaibii Nov 18, 2024
c9bfc44
simplify readme
mshuaibii Nov 18, 2024
d42117e
add supporting data
mshuaibii Nov 18, 2024
e5603ab
experimental metadata
mshuaibii Nov 18, 2024
d2fa2a8
Update README.md
brookwander Nov 18, 2024
97b16f0
adding links to the analysis readme
brookwander Nov 18, 2024
6623e40
rip a space
brookwander Nov 18, 2024
d84342a
updating the md file for the gitbook page
brookwander Nov 18, 2024
12dfb40
adding XRD html tar files
brookwander Nov 18, 2024
05656b9
Create README.md for the experimental data folder
brookwander Nov 18, 2024
e04a5dc
Create README.md for the processed data folder
brookwander Nov 18, 2024
d18f70b
fix paths
mshuaibii Nov 18, 2024
0469dd7
Update experimental data readme to include supporting data info
brookwander Nov 18, 2024
cceef9b
readme edits and adding cod lookup file
brookwander Nov 18, 2024
5a8f77a
fix link
mshuaibii Nov 18, 2024
ff4bfc0
Add files via upload
mshuaibii Nov 18, 2024
9447fc2
small readme tweaks
brookwander Nov 18, 2024
f329f11
Merge branch 'ocx' of github.com:FAIR-Chem/fairchem into ocx
brookwander Nov 18, 2024
445e974
add abbreviations
mshuaibii Nov 18, 2024
f3f0598
adding last file and paper link
brookwander Nov 19, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/_toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ parts:
- file: core/datasets/oc20dense
- file: core/datasets/oc20neb
- file: core/datasets/omat24
- file: core/datasets/ocx24
- file: core/model_checkpoints
- caption: Making your own datasets
chapters:
Expand Down
27 changes: 27 additions & 0 deletions docs/core/datasets/ocx24.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
## Open Catalyst Experiments 2024 (OCx24): Bridging Experiments and Computational Models
In this work, we seek to directly bridge the gap between computational descriptors and experimental outcomes for heterogeneous catalysis. We consider two important green chemistries: the hydrogen evolution reaction and the electrochemical reduction of carbon dioxide. To do this, we created a curated dataset of experimental results with materials synthesized and tested in a reproducible manner under industrially relevant conditions. We used this data to build models to directly predict experimental outcomes using computational features. For more information, please read the manuscript [paper](http://arxiv.org/abs/2411.11783).

### Experimental datasets
To support this work, we performed X-ray fluorescence (XRF), X-ray diffraction (XRD), and electrochemical testing. Summaries of this data is all publically available [here](https://github.com/FAIR-Chem/fairchem/tree/main/src/fairchem/applications/ocx/data/experimental_data).

### Computational datasets
|Splits |Size of uncompressed version (in bytes) | MD5 checksum (download link) |
|--- |--- |--- |
|Computational screening data |1.5G | [9e75b95bb1a2ae691f07cf630eac3378](https://dl.fbaipublicfiles.com/opencatalystproject/data/ocx24/comp_df_241022.csv) |


### Citing this work

If you use this codebase in your work, please consider citing:

```bibtex
@misc{abed2024opencatalystexperiments2024,
title={Open Catalyst Experiments 2024 (OCx24): Bridging Experiments and Computational Models},
author={Jehad Abed and Jiheon Kim and Muhammed Shuaibi and Brook Wander and Boris Duijf and Suhas Mahesh and Hyeonseok Lee and Vahe Gharakhanyan and Sjoerd Hoogland and Erdem Irtem and Janice Lan and Niels Schouten and Anagha Usha Vijayakumar and Jason Hattrick-Simpers and John R. Kitchin and Zachary W. Ulissi and Aaike van Vugt and Edward H. Sargent and David Sinton and C. Lawrence Zitnick},
year={2024},
eprint={2411.11783},
archivePrefix={arXiv},
primaryClass={cond-mat.mtrl-sci},
url={https://arxiv.org/abs/2411.11783},
}
```
48 changes: 48 additions & 0 deletions packages/fairchem-applications-ocx/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
[build-system]
requires = ["hatchling", "hatch-vcs", "hatch-fancy-pypi-readme>=24"]
build-backend = "hatchling.build"

[project]
name = "fairchem-applications-ocx"
dynamic = ["version", "readme"]
description = "Bridging Experiments to Computational Models"
license = {text = "MIT License"}
dependencies = [
"scipy",
"numpy",
"scikit-learn",
"pandas",
"matminer",
"plotly",
"matplotlib",
"yellowbrick",
"statsmodels",
"seaborn",
]

[project.urls]
repository = "http://github.com/Fair-Chem/src/fairchem/applications/ocx"
documentation = "https://fair-chem.github.io/"

[tool.hatch.version]
source = "vcs"

[tool.hatch.version.raw-options]
root = "../../"
git_describe_command = 'git describe --tags --match fairchem_applications_ocx-*'

[tool.hatch.build]
directory = "../../dist-applications-ocx"

[tool.hatch.build.targets.sdist]
only-include = ["src/fairchem/applications/ocx"]

[tool.hatch.build.targets.wheel]
sources = ["src"]
only-include = ["src/fairchem/applications/ocx"]

[tool.hatch.metadata.hooks.fancy-pypi-readme]
content-type = "text/markdown"
fragments = [
{ path = "src/fairchem/applications/ocx/README.md" },
]
1 change: 1 addition & 0 deletions packages/fairchem-applications-ocx/src
25 changes: 25 additions & 0 deletions src/fairchem/applications/ocx/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
## Open Catalyst Experiments 2024 (OCx24): Bridging Experiments and Computational Models
![summary figure](co2rr_summary_figure.png)
In this work, we seek to directly bridge the gap between computational descriptors and experimental outcomes for heterogeneous catalysis. We consider two important green chemistries: the hydrogen evolution reaction (HER) and the electrochemical reduction of carbon dioxide (CO2RR). To do this, we created a curated dataset of experimental results with materials synthesized and tested in a reproducible manner under industrially relevant conditions. We used this data to build models to directly predict experimental outcomes using computational features. For more information, please read the manuscript [paper](https://arxiv.org/abs/2411.11783).

### Datasets
All computational and experimental datasets can be accessed [here](data/).

### Analysis
All code related to the training and inference performed in this work can be found [here](analysis/).

### Citing this work

If you use this codebase in your work, please consider citing:

```bibtex
@misc{abed2024opencatalystexperiments2024,
title={Open Catalyst Experiments 2024 (OCx24): Bridging Experiments and Computational Models},
author={Jehad Abed and Jiheon Kim and Muhammed Shuaibi and Brook Wander and Boris Duijf and Suhas Mahesh and Hyeonseok Lee and Vahe Gharakhanyan and Sjoerd Hoogland and Erdem Irtem and Janice Lan and Niels Schouten and Anagha Usha Vijayakumar and Jason Hattrick-Simpers and John R. Kitchin and Zachary W. Ulissi and Aaike van Vugt and Edward H. Sargent and David Sinton and C. Lawrence Zitnick},
year={2024},
eprint={2411.11783},
archivePrefix={arXiv},
primaryClass={cond-mat.mtrl-sci},
url={https://arxiv.org/abs/2411.11783},
}
```
16 changes: 16 additions & 0 deletions src/fairchem/applications/ocx/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
"""
Copyright (c) Meta, Inc. and its affiliates.

This source code is licensed under the MIT license found in the
LICENSE file in the root directory of this source tree.
"""

from __future__ import annotations

from importlib.metadata import PackageNotFoundError, version

try:
__version__ = version("fairchem.applications.ocx")
except PackageNotFoundError:
# package is not installed
__version__ = ""
5 changes: 5 additions & 0 deletions src/fairchem/applications/ocx/analysis/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
## Instructions for use

The `ml_inference.py` and `ml_train.py` files were used to generate data/figures for the hybrid modeling portions of the manuscript. Each of these files expect command line arguments which specify important details about what will be modeled. Each argument has a help string, so consult the help strings where useful. There is one additional thing worth mentioning. Combining the XRD, electrochemical testing, and computational data is time consuming, so `ml_train.py` can be run in two "modes" to avoid reprocessing the data. The first mode fully processes and combines data, while the second allows a processed data file to be read in, rather than the raw data. Processed data will have fixed input parameters (i.e. you can not change the characteristics of XRD matching -- max Rwp and min q-score). The args have been categorized with comments to make it clear when each one is necessary across these two "modes".

Pre-processed data has been supplied for CO2R and HER in the [processed data folder](https://github.com/FAIR-Chem/fairchem/tree/main/src/fairchem/applications/ocx/data/processed_data) where 40 is the max Rwp and 70 is the minimum q-score. To process the data yourself, use the XRD (`XRDDataDump-YYMMDD.csv`) and electrochemical testing (`ExptDataDump_YYMMDD_clean.csv`) csvs in the [experimental data folder](https://github.com/FAIR-Chem/fairchem/tree/main/src/fairchem/applications/ocx/data/experimental_data).
Loading