Ab-Initio Molecular Dynamics Potential Development
DFTFIT is a python code that used Ab Initio data from DFT calculations such as VASP, Quantum Espresso, and Siesta to develop molecular dynamic potentials. Our package differs from other similar codes in that we leverage LAMMPS as a calculator enabling a wide variety of potentials. The potentials include custom python functions and a wide variety or three-body interactions including the Tersoff, Stillinger-Weber, Gao-Weber, Vashishta, and COMB Potentials. All of which can be combined to have for example a Buckingham + Coulomb + ZBL potential. We also have an extensive set of multi-objective and single-objective optimizersthat can evaluate a potential for many properties including energy, forces, stress, lattice constants, elastic constants, bulk modulus, and shear modulus.
In general three things are required from the user.
- Ab-Initio Training Data includes VASP, Siesta, and Quantum Espresso Calculations. Additionally the user may supply measured properties such as lattice constants, elastic constants, bulk modulus, and shear modulus.
- configuration: specifies optimization algorithm and number of steps, sqlite database to store results, and MD calculator to use.
- Potential among a rich set of two and three body potentials. Including a custom python function.
Any combination of the following potentials is a valid potential in DFTFIT.
- custom python function
- coulombic interaction
- Lennard Jones
- Stillinger Weber
- Gao Weber
- lattice constants (lengths)
- elastic constants (voigt)
- bulk modulus
- shear modulus
We use generalized least squares method for finding the optimal parameters for a proposed potential. DFTFIT integrates with existing MD software as a potential calculator. Currently only LAMMPS is supported. This means the user has the freedom to use any of the potentials available in LAMMPS.
Our algorithm follows a highly cited publication that proposes a method for determining a new potential for Silicon using the force matching of DFT calcultions.
- n_c: number of system configurations
- N number of atoms in each configuration
- α, β: tensor with 3D dimensions [x, y, z]
- cl: classical results from molecular dynamics potential
- ai: ab initio results from dft simulation
- w_f, w_s, w_e: weights to assign respectively for force, stress, energy
- F, S, E: force, stress, and energy respectively.
- MD Calculator: LAMMPS
- Ab Initio data from either VASP or Quantum Espresso
pypi installation. Note that installation of
fail and is required. You will need to install
here. You may have to do
pip install numpy cython.
pip install dftfit
conda install -c costrouc -c matsci -c conda-forge dftfit
docker pull costrouc/dftfit
The official documentation is hosted on github pages: https://chrisostrouchov.com/dftfit/
DFTFIT provides a command line interface. Of course the package can be used as a standard python package.
Tutorial and Documentation
All contributions, bug reports, bug fixes, documentation improvements, enhancements and ideas are welcome. These should be submitted at the Github repository.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size dftfit-0.5.1.tar.gz (46.1 kB)||File type Source||Python version None||Upload date||Hashes View|