Skip to content

DFTTK is a Python package for automating VASP workflows and storing results in MongoDB.

License

Notifications You must be signed in to change notification settings

PhasesResearchLab/dfttk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

1,414 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

DFTTK

DFTTK Logo

GitHub Actions Documentation Status

๐Ÿ“ Overview

The Density Functional Theory Toolkit (DFTTK) is a Python package designed to automate VASP jobs and manage relevant results in MongoDB. VASP workflows leverage Custodian, and data storage is handled via PyMongo.

๐Ÿ”ง What does DFTTK do?

Enumeration of Configurations

  • Enumerates unique collinear magnetic configurations for a given structure.

VASP Workflows

  • Performs convergence tests for:
    • Cutoff energy (ENCUT)
    • k-points grid density (kppa)
  • Computes free energy using the quasiharmonic approximation.

MongoDB Storage

  • Stores and retrieves VASP input data and post-processed results in MongoDB.

โš™๏ธ Installation

It is recommended first to set up a virtual environment using Conda:

conda create -n dfttk python=3.12      
conda activate dfttk

Clone the main branch of the repository:

git clone https://github.com/PhasesResearchLab/dfttk.git

Or clone a specific branch:

git clone -b <branch_name> https://github.com/PhasesResearchLab/dfttk.git

Then move to dfttk directory and install in editable (-e) mode.

cd dfttk
pip install -e .

๐Ÿ› ๏ธ Note: A PyPI release is currently under development.

๐Ÿ“– Documentation

For a comprehensive description of DFTTK and its capabilities, please refer to the Official Documentation.

๐Ÿ› ๏ธ Note: The documentation is currently under construction. Some sections may be incomplete or subject to change.

๐Ÿ“š Citing DFTTK

If you use DFTTK in your work, please cite the following publication:

N. Hew et al.,
Density Functional Theory ToolKit (DFTTK) to automate first-principles thermodynamics via the quasiharmonic approximation, Computational Materials Science, Volume 258, 2025, 114072, ISSN 0927-0256.
https://doi.org/10.1016/j.commatsci.2025.114072 (View on ScienceDirect)

๐Ÿค Contributing

We welcome bug reports, feature suggestions, and pull requests!

Getting Started

  1. Fork and clone the repo:

    git clone https://github.com/<your-username>/dfttk.git
    
  2. Create a new branch:

    git checkout -b my-feature
    
  3. Make changes, commit, push, and open a pull request to main.

๐Ÿ› Reporting Issues

Found a bug or have a suggestion?
Please open an issue at GitHub Issues with:

  • A clear description
  • Steps to reproduce (if applicable)
  • Logs or screenshots

Thanks for helping improve DFTTK!

About

DFTTK is a Python package for automating VASP workflows and storing results in MongoDB.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •