boroml
This repo contains data and scripts for MLIPs for borophene on silver
Science Score: 49.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.3%) to scientific vocabulary
Keywords
Repository
This repo contains data and scripts for MLIPs for borophene on silver
Basic Info
- Host: GitHub
- Owner: colinbousige
- License: mit
- Language: Python
- Default Branch: main
- Homepage: https://boroml.streamlit.app/
- Size: 59.4 MB
Statistics
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
- Releases: 2
Topics
Metadata Files
README.md
Neural network approach for a rapid prediction of metal-supported borophene properties 
This archive contains various files and scripts linked with the articles listed in the How to cite section below. It includes sample LAMMPS input files, potential files for different machine learning interatomic potentials (MLIPs) for borophene on silver, and various scripts for structure generation, post-treatment of data, and adaptive training of neural network potentials.
The MLIPs files included are for the following methods: - DeePMD - n2p2 - NNMP
Please cite these articles if you use any of the files in this archive.
Table of contents
Contents of this archive
- potential: The potential files for the n2p2, DeePMD and NNMP MLIPs
- lammps: Sample LAMMPS input files for launching an MD simulation with the n2p2, DeePMD and NNMP MLIPs
- scripts: Various scripts used for post-treating the data or generating structures
Description of the scripts
Install all necessary libraries with:
bash
pip install -r requirements.txt
Structure generators
BoroPy.py:- Streamlit GUI tool to build and visualize borophene structures
- Usage (local):
streamlit run BoroPy.py - Or use the online app
xgenerate-structure:- Generate a borophene structure to stdout
- Usage:
python xgenerate-structure -hto get the help
generatorfunctions.py:- Set of functions to generate borophene structures, write LAMMPS input files, etc. Called in other scripts.
Post-treatment scripts
gofr.c:- C code to compute the radial distribution function from a LAMMPS dump file.
- Compile with
gcc gofr.c -o GofR -lm - Usage:
gofr -hto get the help
xconvert:- Conversion from and to VASP, N2P2 and LAMMPS
- Usage:
python xconvert -hto get the help
xGDOS:- python code to read a LAMMPS dump file containing atomic velocities and compute the GDOS
- Usage:
python xGDOS -hto get the help
xLAMMPStoNNP:- Convert and concatenate many dump files into a single file to use with N2P2. Also look for structure generating extrapolation warnings and store them apart.
- Usage:
python xLAMMPStoNNP -hto get the help
xOUTCARtoLAMMPS:- Convert an OUTCAR trajectory file into a LAMMPS dump file
- Usage:
python xOUTCARtoLAMMPS -hto get the help
xplotLAMMPSlog:- Plot a LAMMPS log file
- Usage:
python xplotLAMMPSlog -hto get the help
xprepareDPdata:- Prepare the data for a DeepMD potential training from a n2p2 data file
- Usage:
python xprepareDPdata -hto get the help
xreadLAMMPSlog:- Read a LAMMPS log file and extract the thermodynamic properties, prints to stdout
- Usage:
python xreadLAMMPSlog -hto get the help
xSTM:- Compute an STM image from a CHGCAR or PARCHGCAR file
- Usage:
python xSTM -hto get the help
Adaptive training scripts
You will need to adapt these scripts to your own cluster and problem...
Especially the xjobadaptive and adaptive_learning/SlurmJob.py scripts where some paths and cluster configuration are hardcoded.
adaptive_learning/adaptive_training.py:- Script using the following classes to perform an adaptive training of a NNP and distribute jobs on the fly on a SLURM cluster
adaptive_learning/AdaptiveTraining.py:- Class
AdaptiveTrainingto perform an adaptive training of a NNP
- Class
adaptive_learning/Cluster.py:- Class
Clusterto help distributing jobs on a cluster
- Class
adaptive_learning/SlurmJob.py:- Class
SlurmJobto help launch and follow jobs on a SLURM cluster
- Class
adaptive_learning/functions.py:- Some user-defined functions
adaptive_learning/xjobadaptive:- Launch an adaptive training of a NNP on a SLURM cluster. You need to edit the script to set the correct paths and cluster definition for you.
How to cite
Please cite the following articles if you use any of the files in this archive (click to see the bibtex entry):
"Neural network approach for a rapid prediction of metal-supported borophene properties", P. Mignon, A.R. Allouche, N.R. Innis, and C. Bousige, J. Am. Chem. Soc. 145 (2023), 27857-27866
```bibtex @article{mignon_neural_2023, title = {Neural Network Approach for a Rapid Prediction of Metal-Supported Borophene Properties}, author = {Pierre Mignon and Abdul-Rahman Allouche and Neil Richard Innis and Colin Bousige}, journal = {Journal of the American Chemical Society}, year = {2023}, doi = {10.1021/jacs.3c11549}, volume = {145}, number = {50}, pages = {27857-27866} } ```"A portable dataset for borophene growth modeling with reactive neural network potentials", C. Bousige, A.A. Delenda, A.R. Allouche, and P. Mignon (submitted)
```bibtex @article{bousige_portable_2025, title = {A portable dataset for borophene growth modeling with reactive neural network potentials}, author = {Colin Bousige and Anouar-Akacha Delenda and Abdul-Rahman Allouche and Pierre Mignon}, journal = {(submitted)}, year = {2025}, doi = {}, volume = {}, number = {}, pages = {} } ```Author
Colin BOUSIGE, CNRS, Laboratoire des Multimatriaux et Interfaces, Lyon, France
License
This project is licensed under the MIT License - see the LICENSE file for details
Acknowledgments
This work was supported by the French National Research Agency grant ANR-21-CE09-0001-01.
Owner
- Login: colinbousige
- Kind: user
- Repositories: 2
- Profile: https://github.com/colinbousige
GitHub Events
Total
- Release event: 1
- Watch event: 1
- Push event: 5
- Create event: 1
Last Year
- Release event: 1
- Watch event: 1
- Push event: 5
- Create event: 1