The code uses SOAP descriptors through the Dscribe Library, Machine Learning tools of the scikit-learn Library and the Atomic Simulation Environment (ASE) Library.
Three main libraries are required to run the code : Dscribe (SOAP descriptors), Scikit-learn (Machine Learning tools) and ASE (Atomic Simulation Environment).
Here is the list of libraries you need to install to execute the code:
More precisely :
- python==3.10
- python==3.10
- ase==3.22.1
- ase==3.22.1
- scikit-learn==1.4.1
- scikit-learn==1.4.1
...
@@ -12,7 +12,7 @@ Here is the list of libraries you need to install to execute the code:
...
@@ -12,7 +12,7 @@ Here is the list of libraries you need to install to execute the code:
- scipy==1.12.0
- scipy==1.12.0
- matplotlib==3.8.3
- matplotlib==3.8.3
All of them can be installed via `pip` , e.g.
All libraries can be installed via `pip` , e.g.
```
```
pip install -r requirements.txt
pip install -r requirements.txt
```
```
...
@@ -20,9 +20,9 @@ pip install -r requirements.txt
...
@@ -20,9 +20,9 @@ pip install -r requirements.txt
## Usage
## Usage
The code builts Energy Adsorption Map (EAM) using machine learning.
The code builts Energy Adsorption Maps (EAMs) using machine learning.
The running file "run.py" (i) trains a model from a training set containing adsorption energies calculated on selected sites (".traj" file), and (ii) predicts adsorption energies of new sites located on a n $\times$ n regular grid above the surface. Results are written in the file "result.txt".
The file "run.py" (i) trains a model from a training set containing adsorption energies calculated on selected sites (".traj" file), and (ii) predicts adsorption energies of new sites located on a n $\times$ n regular grid above the surface. Results are written in the file "result.txt".
The ".traj" file contains data useful to describe the simulation box, the atomic positions, the grid (n) as well as parameters for the SOAP descriptors and the Gaussian Process Regression.
The ".traj" file contains data useful to describe the simulation box, the atomic positions, the grid (n) as well as parameters for the SOAP descriptors and the Gaussian Process Regression.