SolvationStructure: MD and DFT Study of
- Project Overview
- Clone the Repository
- Tutorials
- Obtaining OPLS-AA Parameters
- Generating Initial Input Files For MD Simulations
- Running MD Simulations in LAMMPS
- Runing DFT Calculation in VASP
- Documentation
- Project Organization
- Contact Information
- License
- References
Figure: MD snapshots of the simulation box at 5 ns of the production run: (a) DPE+1.8M
This project focuses on studying the solvation structures of lithium ions
-
$\ce{LiFSI}$ with Dipropyl Ether (DPE) -
$\ce{LiFSI}$ with 2,2-Difluoroethyl Methyl Ether (FEME) -
$\ce{LiPF6}$ with a mixture of Ethylene Carbonate (EC) and Diethyl Carbonate (DEC)
The solvation behavior is analyzed through Molecular Dynamics (MD) simulations and Density Functional Theory (DFT) calculations. Key aspects, including radial distribution functions (RDF), coordination numbers (CN), quantum mechanical properties, and concentration effects, are explored to enhance the understanding of each electrolyte structure.
Download the files or clone the repository:
git clone https://github.com/mana121/SolvationStructure.git
This tutorial will guide you on how to model an electrolyte system.
In this tutorial, you will learn to:
- Obtain OPLS-AA force field parameters using the LigParGen server.
- Utilize the fftool to create initial files for MD simulations.
- Utilize PACKMOL to pack molecules into the simulation box.
- Generate input files for running:
A detailed discussion of Steps 1, 2, and 3 can be found in this blog post.
Visualization Software:
-
Download the
.mol
file of solvent from ChemSpider. -
Upload and submit the
.mol
file in LigParGen server. -
Download the
.itp
,.lmp
, and.xyz
files from LigParGen server. -
Convert the LigParGen generated parameters into fftool style parameters using convertLigParGen.py.
Here is the command of parameter conversion for DPE:
python convertLigParGen.py -g UNK_FBC5C6.itp -l UNK_FBC5C6.lmp -o DPE.ff
-
For ionic liquids avoid steps 1 to 4. Use
.zmat
.zmat andil.ff
il.ff files.
-
Calculate the number of salt and solvent molecules in the simulation box for a specific concentration using solvent_salt_molecule_count.ipynb. For DPE+1.8M
$\ce{LiFSI}$ electrolyte system with a simulation box of length 50 Å, the composition is:- 542 DPE molecules
- 135
$\ce{Li+}$ ions - 135
$\ce{FSI-}$ ions.
-
Use fftool to create an input file (
pack.inp
) for PACKMOL.fftool 542 DPE.xyz 135 Li.zmat 135 fsi.zmat -b 50.0
-
Use PACKMOL to generate the atomic coordinates in the simulation box which will save in
simbox.xyz
.packmol < pack.inp
-
Use fftool to create the initial LAMMPS input script
in.lmp
and data filedata.lmp
.fftool 542 DPE.xyz 135 Li.zmat 135 fsi.zmat -b 50.0 -l
We conduct two separate MD simulations for each electrolyte system on the NJIT HPC Wulver cluster:
- Energy minimization and equilibration: Performed using the initial electrolyte configuration generated by fftool and PACKMOL.
- Melting, quenching, and production run: Conducted using the equilibrated system from Step 1.
Remote cluster:
sbatch submit_lammps.slurm
Local machine (For small system):
lmp_serial -i in.lmp
mpirun -np 8 lmp_mpi -i in.lmp
Rrequired input files for geometry optimization/structure relaxation:
- INCAR
- KPOINTS
- POSCAR
- POTCAR
The SCF calculation is performed on the optimized structure (CONTCAR) following geometry optimization. Rrequired input files for SCF calculation:
- INCAR
- KPOINTS
- POSCAR (copy CONTCAR to POSCAR)
- POTCAR
Full documentation of this project is available on arXiv
├── AUTHORS.md <- List of authors.
├── README.md <- README for users.
├── molecule_count <- Python code to calculate salt and solvent molecules in the simulation box.
├── results <- RDF and CN graphs.
├── LICENSE <- LICENSE file.
└── simulation
├── electrolyte
│ ├── LAMMPS <- Modified LAMMPS input scripts for energy minimization, equilibration, melting, quenching, and production run.
│ ├── LigParGen server <- Parameters from LigParGen.
│ ├── convert LigParGen <- fftool style parameter conversion.
│ └── fftool PACKMOL <- Initial LAMMPS input scripts.
└── solvation structure
├── INCAR <- INCAR files for DFT in VASP.
└── geometry opt <- CONTCAR files from DFT in VASP.
- Rumana Hasan manarum.hasan@gmail.com
This project is distributed under the MIT License; refer to the LICENSE file for more information.
- https://longkunxuluke.github.io/posts/2020/11/blog-post-4/
- LigParGen server: https://doi.org/10.1093/nar/gkx312
- PACKMOL package: https://doi.org/10.1002/jcc.21224
- LAMMPS software: https://doi.org/10.1016/j.cpc.2021.108171
- LAMMPS documentation
- VASP manual
- VASPKIT documentation
@misc{hasan2025computationalstudylisolvation,
title={Computational Study of Li+ Solvation Structures in Fluorinated Ether, Non-Fluorinated Ether, and Organic Carbonate-Based Electrolytes at Low and High Salt Concentrations},
author={Rumana Hasan and Dibakar Datta},
year={2025},
eprint={2501.11932},
archivePrefix={arXiv},
primaryClass={physics.chem-ph},
url={https://arxiv.org/abs/2501.11932},
}
This project used LAMMPS, version 23 Jun 2022.