You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Over the years, many tools have been developed to help set up and/or automate DFT calculations with VASP, as well as provide various post-processing features, such as [atomate2](https://github.com/materialsproject/atomate2), [quacc](https://github.com/Quantum-Accelerators/quacc), [AFLOW](https://www.aflowlib.org/), [AiiDA](https://www.aiida.net/), [pyiron](https://pyiron.org/), and [VASPKIT](https://vaspkit.com/). The **Density Functional Theory ToolKit (DFTTK)** is another addition to this space, with a philosophy of keeping the interface between the user and VASP as minimal as possible and making the automation and post-processing steps easy to see and understand.
10
11
11
-
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](https://github.com/materialsproject/custodian), and data storage is handled via [PyMongo](https://github.com/mongodb/mongo-python-driver).
12
+
DFTTK workflows use [Custodian](https://github.com/materialsproject/custodian) for job management. The usefulness of Custodian is that it allows many VASP jobs to be chained together and includes various self-correction strategies for handling VASP errors.
12
13
13
-
## 🔧 What does DFTTK do?
14
+
Current key features are listed below.
15
+
16
+
## Key Features
14
17
15
18
### Enumeration of Configurations
16
-
- Enumerates **unique collinear magnetic configurations** for a given structure.
19
+
- Enumerates unique collinear magnetic configurations for a given structure.
17
20
18
21
### VASP Workflows
19
-
- Performs **convergence tests** for:
22
+
- Performs convergence tests for:
20
23
- Cutoff energy (`ENCUT`)
21
24
- k-points grid density (`kppa`)
22
-
- Computes **free energy** using the **quasiharmonic approximation**.
23
-
24
-
### MongoDB Storage
25
-
- Stores and retrieves VASP **input data** and **post-processed results** in MongoDB.
26
-
27
-
## ⚙️ Installation
25
+
- Computes contributions to the Helmholtz energy, $F_k = E_k + F_{k,\text{vib}} + F_{k,\text{el}}$:
26
+
- $E_k$ — Energy–volume curves
27
+
- $F_{k,\text{vib}}$ — Phonons (post-processed with YPHON)
28
+
- $F_{k,\text{el}}$ — From the electronic DOS
29
+
30
+
### Post-processing
31
+
- $E_k$ — Fit energy–volume curves using an EOS
32
+
- $F_{k,\text{vib}}$:
33
+
- Debye–Grüneisen model
34
+
- Phonons (via YPHON)
35
+
- $F_{k,\text{el}}$ — From the electronic DOS
36
+
37
+
### Configuration Class
38
+
The Configuration class orchestrates VASP workflows to compute contributions to $F_k$, along with post-processing and storing results in MongoDB.
39
+
40
+
## Installation
28
41
It is recommended first to set up a virtual environment using Conda:
29
42
30
43
conda create -n dfttk python=3.12
@@ -43,43 +56,28 @@ Or clone a specific branch:
43
56
cd dfttk
44
57
pip install -e .
45
58
46
-
> 🛠️ **Note:** A PyPI release is currently under development.
59
+
> **Note:** A PyPI release is currently under development.
60
+
61
+
## Example Notebooks
62
+
Click the badge below to open the project in GitHub Codespaces.
63
+
Then, browse the `examples` folder to explore and run the example notebooks:
47
64
48
-
## 📖 Documentation
65
+
[](https://codespaces.new/PhasesResearchLab/dfttk?quickstart=1)
49
66
50
-
For a comprehensive description of **DFTTK** and its capabilities, please refer to the [Official Documentation](https://vasp-job-automation.readthedocs.io/en/latest/index.html).
67
+
| Notebooks | Description |
68
+
|--------------|-------------|
69
+
| DebyeGruneisen | Compute and plot vibrational contributions to the Helmholtz energy using the Debye–Grüneisen model for Al |
70
+
| ThermalElectronic | Compute and plot thermal electronic contributions to the Helmholtz energy for Al using Fermi–Dirac statistics and the electronic DOS|
71
+
| Configuration | Orchestrate VASP workflows to compute all contributions to $F_k$, with post-processing, plotting, and MongoDB storage for Al and Fe<sub>3</sub>Pt|
51
72
52
-
> 🛠️ **Note:** The documentation is currently under construction. Some sections may be incomplete or subject to change.
73
+
## Documentation
74
+
For a comprehensive description of **DFTTK** and its capabilities, please refer to the [Official Documentation](https://www.dfttk.org/en/main/).
53
75
54
-
## 📚 Citing DFTTK
76
+
> **Note:** The documentation is currently under construction. Some sections may be incomplete or subject to change.
55
77
78
+
## Citing DFTTK
56
79
If you use **DFTTK** in your work, please cite the following publication:
57
80
58
81
> **N. Hew et al.**,
59
82
> *Density Functional Theory ToolKit (DFTTK) to automate first-principles thermodynamics via the quasiharmonic approximation*, **Computational Materials Science**, Volume 258, 2025, 114072, ISSN 0927-0256.
60
83
> [https://doi.org/10.1016/j.commatsci.2025.114072](https://doi.org/10.1016/j.commatsci.2025.114072) ([View on ScienceDirect](https://www.sciencedirect.com/science/article/pii/S092702562500415X))
61
-
62
-
## 🤝 Contributing
63
-
64
-
We welcome bug reports, feature suggestions, and pull requests!
0 commit comments