Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

PhasesResearchLab/dfttk

Open more actions menu

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

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  
Morty Proxy This is a proxified and sanitized view of the page, visit original site.