enhancing_reaxff_dft_database

Database used for retraining the ReaxFF force field for the inorganic compound LiF.

https://github.com/paolodeangelis/enhancing_reaxff_dft_database

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 8 DOI reference(s) in README
  • Academic publication links
    Links to: nature.com, zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.3%) to scientific vocabulary

Keywords

battery database density-functional-theory jupyter molecular-dynamics python reaxff
Last synced: 6 months ago · JSON representation ·

Repository

Database used for retraining the ReaxFF force field for the inorganic compound LiF.

Basic Info
  • Host: GitHub
  • Owner: paolodeangelis
  • License: cc-by-4.0
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage:
  • Size: 3.48 MB
Statistics
  • Stars: 5
  • Watchers: 1
  • Forks: 1
  • Open Issues: 1
  • Releases: 3
Topics
battery database density-functional-theory jupyter molecular-dynamics python reaxff
Created almost 3 years ago · Last pushed 7 months ago
Metadata Files
Readme Contributing License Citation Zenodo

README.md

Enhancing the ReaxFF DFT database

Data FAIR Made with Python OS - Linux Contributions - welcome Code style - black

pre-commit.ci status Codacy Badge License - CC BY 4.0 DOI

This repository contains the database used to re-parametrize the ReaxFF force field for LiF, an inorganic compound. The purpose of the database is to improve the accuracy and reliability of ReaxFF calculations for LiF. The results and method used were published in the article Enhancing ReaxFF for Molecular Dynamics Simulations of Lithium-Ion Batteries: An interactive reparameterization protocol.

This database was made using the simulation obtained using the protocol published in Enhancing ReaxFF repository.

Table of Contents

Installation

To use the database and interact with it, ensure that you have the following Python requirements installed:

Minimum Requirements:

  • Python 3.9 or above
  • Atomic Simulation Environment (ASE) library
  • Jupyter Lab

Requirements for Re-running or Performing New Simulations:

  • SCM (Software for Chemistry & Materials) Amsterdam Modeling Suite
  • PLAMS (Python Library for Automating Molecular Simulation) library

You can install the required Python packages using pip:

shell pip install -r requirements.txt

Warning

Make sure to have the appropriate licenses and installations of SCM Amsterdam Modeling Suite and any other necessary software for running simulations.

Folder Structure

The repository has the following folder structure:

bash . ├── CONTRIBUTING.md ├── CREDITS.md ├── LICENSE ├── README.md ├── requirements.txt ├── assets ├── data │ ├── LiF.db │ ├── LiF.json │   └── LiF.yaml ├── notebooks │ ├── browsing_db.ipynb │ └── running_simulation.ipynb └── tools ├── db ├── plams_experimental └── scripts

  • CONTRIBUTING.md: This file provides guidelines and instructions for contributing to the repository. It outlines the contribution process, coding conventions, and other relevant information for potential contributors.
  • CREDITS.md: This file acknowledges and credits the individuals or organizations that have contributed to the repository.
  • LICENSE: This file contains the license information for the repository (CC BY 4.0). It specifies the terms and conditions under which the repository's contents are distributed and used.
  • README.md: This file.
  • requirements.txt: This file lists the required Python packages and their versions. (see installation section)
  • assets: This folder contains any additional assets, such as images or documentation, related to the repository.
  • data: This folder contains the data files used in the repository.
    • LiF.db: This file is the SQLite database file that includes the DFT data used for the ReaxFF force field. Specifically, it contains data related to the inorganic compound LiF.
    • LiF.json: This file provides the database metadata in a human-readable format using JSON.
    • LiF.yaml: This file also contains the database metadata in a more human-readable format, still using YAML.
  • notebooks: This folder contains Jupyter notebooks that provide demonstrations and examples of how to use and analyze the database.
    • browsing_db.ipynb: This notebook demonstrates how to handle, select, read, and understand the data points in the LiF.db database using the ASE database Python interface. It serves as a guide for exploring and navigating the database effectively.
    • running_simulation.ipynb: In this notebook, you will find an example of how to get a data point from the LiF.db database and use it to perform a new simulation. The notebook showcases how to utilize either the PLAMS library or the AMSCalculator and ASE Python library to conduct simulations based on the retrieved data and then store it as a new data point in the LiF.db database. It provides step-by-step instructions and code snippets for a seamless simulation workflow.
  • tools: This directory contains a collection of Python modules and scripts that are useful for reading, analyzing, and re-running simulations stored in the database. These tools are indispensable for ensuring that this repository adheres to the principles of Interoperability and Reusability, as outlined by the FAIR principles.
    • db: This Python module provides functionalities for handling, reading, and storing data in the database.
    • plasm_experimental: This Python module includes the necessary components for using the AMSCalculator with PLASM and the SCM software package, utilizing the ASE API. It facilitates running simulations, and performing calculations.
    • scripts: This directory contains additional scripts for advanced usage scenarios of this repository.

Interacting with the Database

There are three ways to interact with the database: using the ASE db command line, the web interface, and the ASE Python interface.

ASE db Command-line

To interact with the database using the ASE db terminal command, follow these steps:

  1. Open a terminal and navigate to the directory containing the LiF.db file.

  2. Run the following command to start the ASE db terminal:

shell ase db LiF.db

  1. You can now use the available commands in the terminal to query and manipulate the database. More information can be found in the ASE database documentation.

Web Interface

To interact with the database using the web interface, follow these steps:

  1. Open a terminal and navigate to the directory containing the LiF.db file.

  2. Run the following command to start the ASE db terminal:

shell ase db -w LiF.db

  1. Open your web browser and connect to the local server at http://127.0.0.1:5000.

Example of Web Interface

Warning

To visualize the 3D structure of the system, you need to install the JMOL extension. You can use the script tools/scripts/install_jmol.py to automatically download and install it:

shell cd tools/scripts/ python install_jmol.py

ASE Python Interface

To interact with the database using the ASE Python interface, you can use the following example code:

```python from ase.db import connect

Connect to the database

db = connect("LiF.db")

Query the database

results = db.select("success=True")

Iterate over the results

for row in results: print(f"ID: {row.id}, Energy: {row.energy}") ```

For a more detailed example, refer to the notebook notebooks/browsing_db.ipynb. To learn how to perform a simulation, check the notebook notebooks/running_simulation.ipynb.

Contributing

If you would like to contribute to the Enhancing ReaxFF DFT Database by performing new simulations and expanding the database, please follow the guidelines outlined in the Contribution Guidelines. You are welcome to submit pull requests or open issues in the repository. Your contributions are greatly appreciated!

How to Cite

If you use the database or the tools provided in this repository for your work, please cite it using the following BibTeX entries:

bibtex @article{deangelis2023enhancing, title={Enhancing ReaxFF for molecular dynamics simulations of lithium-ion batteries: an interactive reparameterization protocol}, author={De Angelis, Paolo and Cappabianca, Roberta and Fasano, Matteo and Asinari, Pietro and Chiavazzo, Eliodoro}, journal={Scientific Reports}, volume={14}, number={1}, pages={978}, year={2024}, publisher={Nature Publishing Group UK London} }

bibtex @dataset{EnhReaxFFdatabase, author = {De Angelis, Paolo and Cappabianca, Roberta and Fasano, Matteo and Asinari, Pietro and Chiavazzo, Eliodoro}, title = {{Enhancing the ReaxFF DFT database}}, month = may, year = 2023, publisher = {Zenodo}, version = {1.0.0-beta}, doi = {10.5072/zenodo.1204707}, url = {https://doi.org/10.5281/zenodo.7959121} }

License

The contents of this repository are licensed under the Creative Commons Attribution 4.0 International License.

Acknowledgments

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 957189. The project is part of BATTERY 2030+, the large-scale European research initiative for inventing the sustainable batteries of the future.

The authors also acknowledge that the simulation results of this database have been achieved using the DECI resource ARCHER2 based in UK at EPCC with support from the PRACE aisbl.


Creative Commons Licence   BIG MAP site   SMALL site   POLITO site

Owner

  • Name: Paolo De Angelis
  • Login: paolodeangelis
  • Kind: user
  • Location: Torino
  • Company: Politecnico di Torino

Citation (CITATION.cff)

cff-version: 1.2.0
title: Enhancing ReaxFF DFT database
message: >-
  If you use this dataset, please cite it using the metadata
  from this file, and cite also the research article
  https://doi.org/10.1038/s41598-023-50978-5
type: dataset
authors:
  - given-names: Paolo
    family-names: De Angelis
    email: paolo.deangelis@polito.it
    affiliation: Politecnico di Torino
    orcid: 'https://orcid.org/0000-0003-1866-2988'
  - given-names: Roberta
    family-names: Cappabianca
    email: roberta.cappabianca@polito.it
    affiliation: Politecnico di Torino
    orcid: 'https://orcid.org/0000-0002-3789-9676'
  - given-names: Matteo
    family-names: Fasano
    email: matteo.fasano@polito.it
    affiliation: Politecnico di Torino
    orcid: 'https://orcid.org/0000-0002-3997-3681'
  - given-names: Pietro
    family-names: Asinari
    email: pietro.asinari@polito.it
    affiliation: Politecnico di Torino
    orcid: 'https://orcid.org/0000-0003-1814-3846'
  - given-names: Eliodoro
    family-names: Chiavazzo
    email: eliodoro.chiavazzo@polito.it
    affiliation: Politecnico di Torino
    orcid: 'https://orcid.org/0000-0001-6165-7434'
identifiers:
  - type: doi
    value: 10.1038/s41598-023-50978-5
    description: >-
      Research Article on Database production and
      utilization
  - type: doi
    value: 10.5281/zenodo.7959121
    description: Database zenodo permalink
repository-code: >-
  https://github.com/paolodeangelis/Enhancing_ReaxFF
repository: 'https://github.com/paolodeangelis/Enhancing_ReaxFF_DFT_database'
abstract: >-
  Database stored as ASE-DB used to re-parametrize the
  ReaxFF force field for LiF, an inorganic compound.
keywords:
  - Density Functional Theory
  - Lithium-ion Battery
  - Ractive Molecular Dynamics
  - Solid Electrolyte Interphase
license: CC-BY-4.0
version: 1.0.0
doi: 10.5281/zenodo.7959121
date-released: 2024-01-15

GitHub Events

Total
  • Watch event: 1
  • Push event: 14
  • Pull request event: 2
  • Fork event: 1
Last Year
  • Watch event: 1
  • Push event: 14
  • Pull request event: 2
  • Fork event: 1

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 83
  • Total Committers: 3
  • Avg Commits per committer: 27.667
  • Development Distribution Score (DDS): 0.12
Past Year
  • Commits: 83
  • Committers: 3
  • Avg Commits per committer: 27.667
  • Development Distribution Score (DDS): 0.12
Top Committers
Name Email Commits
paolodeangelis p****s@p****t 73
pre-commit-ci[bot] 6****] 8
Paolo De Angelis 6****s 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: about 2 years ago

All Time
  • Total issues: 0
  • Total pull requests: 7
  • Average time to close issues: N/A
  • Average time to close pull requests: 24 days
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 7
Past Year
  • Issues: 0
  • Pull requests: 7
  • Average time to close issues: N/A
  • Average time to close pull requests: 24 days
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 7
Top Authors
Issue Authors
Pull Request Authors
  • pre-commit-ci[bot] (12)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

package.json npm
pyproject.toml pypi
requirements.txt pypi
  • Flask ==2.3.2
  • ase ==3.22.1
  • colorama *
  • jupyterlab ==3.6.3
  • matplotlib ==3.7.1
  • nglview ==3.0.4
  • numpy ==1.24.3
  • pandas ==2.0.1
  • plams ==1.5.1
  • pre-commit *
  • scipy ==1.10.1