Package: dftfit
DFTFITDFTFIT 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 ofpotentials. 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-objectiveoptimizersthat 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
Dataincludes 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.Potentialamong a rich set of two and three body potentials. Including a
custom python function.Latest ReleasePackage StatusLicenseBuild StatusDocumentationdocumentationPresentations:HTCMC 2016MRS 2017PotentialsAny combination of the following potentials is a valid potential in DFTFIT.Two-Body Potentialscustom python functionZBLBuckinghamBeckcoulombic interactionLennard JonesThree-Body PotentialsTersoffStillinger WeberGao WeberVashishtaCOMB/COMB3Measured Propertiesenergystressforceslattice constants (lengths)elastic constants (voigt)bulk modulusshear modulusAlgorithmWe 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 onlyLAMMPSis supported. This
means the user has the freedom to use any of the potentials available
in LAMMPS.Our algorithm follows ahighly cited publicationthat
proposes a method for determining a new potential for Silicon using the force matching of DFT calcultions.Parametersn_c: number of system configurationsN number of atoms in each configurationα, β: tensor with 3D dimensions [x, y, z]cl: classical results from molecular dynamics potentialai: ab initio results from dft simulationw_f, w_s, w_e: weights to assign respectively for force, stress,
energyF, S, E: force, stress, and energy respectively.DependenciesMD Calculator:LAMMPSpymatgen_lammps (run as command)lammps-cython (python interface)pagmo2pymatgenAb Initio data from eitherVASPorQuantum
EspressoInstallationForpypiinstallation. Note that installation oflammps-cythonmay
fail and is required. You will need to installLAMMPSas
documentedhere. You may have to dopip install numpy cython.pipinstalldftfitForcondainstallationcondainstall-ccostrouc-cmatsci-cconda-forgedftfitFordockerinstallationdockerpullcostrouc/dftfitDocumentationThe official documentation is hosted on github pages:https://chrisostrouchov.com/dftfit/RunningDFTFIT provides acommand line
interface. Of
course the package can be used as a standard python package.Tutorial and DocumentationMgO tutorialDocumentationContributingAll contributions, bug reports, bug fixes, documentation improvements,
enhancements and ideas are welcome. These should be submitted at theGithub repository.LicenseMIT