diff --git a/README.md b/README.md index cc41a7a..864290d 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ CARE (*Catalysis Automated Reaction Evaluator*) is a tool for generating and manipulating chemical reaction networks (CRNs) on catalytic surfaces. CARE is powered with [GAME-Net-UQ](https://github.com/LopezGroup-ICIQ/gamenet_uq), a graph neural network with uncertainty quantification targeting the DFT energy of relaxed species and transition states. -## Installation +## 🪛 Installation Installing CARE requires Conda ang Git locally installed. The following instructions are optimized to install CARE on Linux systems, while for macOS we noticed a lower performance in the CRN generation mainly due to Python multiprocessing (see *Contexts and start methods* in the [documentation](https://docs.python.org/3/library/multiprocessing.html)) @@ -47,25 +47,20 @@ conda install pytorch cpuonly pyg -c pytorch -c pyg *NOTE: MacOS users might need to install pytorch geometric using pip.* -5. (optional) Install [Julia](https://julialang.org/) to perform microkinetic simulations with Julia solvers. As alternative, simulations can run with the implemented Scipy solver. +5. (optional) Install [Julia](https://julialang.org/) and the ODE packages required to perform microkinetic simulations. As alternative, simulations can run with the implemented Scipy solver. ```bash -curl -fsSL https://install.julialang.org | sh +curl -fsSL https://install.julialang.org | sh +python3 -m pip install juliacall # Python-Julia bridge +julia -e 'import Pkg; Pkg.add("DifferentialEquations"); Pkg.add("DiffEqGPU"); Pkg.add("CUDA");' ``` -*NOTE: For some systems Julia may present some error while using sh. If that is the case, please install Julia by running instead the following command.* +*NOTE: For some systems Julia may present some error while using sh. If that is the case, please install Julia by running instead:* ```bash curl -fsSL https://install.julialang.org | sh -s -- -y ``` -6. (optional) Install JuliaCall to run Julia code from Python and the required Julia dependencies by running the following: - -```bash -python3 -m pip install juliacall -julia -e 'import Pkg; Pkg.add("DifferentialEquations"); Pkg.add("DiffEqGPU"); Pkg.add("CUDA");' -``` - -## Usage and tutorials +## 💥 Usage and tutorials The current way to generate chemical reaction networks and running microkinetic simulations with CARE requires configuring a .toml configuration file and running the `care_run` script: @@ -91,15 +86,15 @@ with open('path_to_output_dir/crn.pkl', 'rb') as pickle_file: crn = load(pickle_file) ``` -## Notes +## ❗️Notes The DFT database in ASE format used to retrieve available CRN intermediates will be uploaded soon in Zenodo. -## License +## ✒️ License The code is released under the [MIT](./LICENSE) license. -## Reference +## 📜 Reference - **A Foundational Model for Reaction Networks on Metal Surfaces** Authors: S. Morandi, O. Loveday, T. Renningholtz, S. Pablo-García, R. A. Vargas Hernáńdez, R. R. Seemakurthi, P. Sanz Berman, R. García-Muelas, A. Aspuru-Guzik, and N. López