Afterwards you can install DFTK like any other package in Julia. For example run in your Julia REPL terminal:
import Pkg Pkg.add("DFTK")
which will install the latest DFTK release. Alternatively (if you like to be fully up to date) install the master branch:
import Pkg Pkg.add(name="DFTK", rev="master")
DFTK is continuously tested on Debian, Ubuntu, mac OS and Windows and should work on these operating systems out of the box.
While not strictly speaking required to use DFTK it is usually convenient to install a couple of standard packages from the AtomsBase ecosystem to make working with DFT more convenient. Examples are
- AtomsIO and AtomsIOPython, which allow you to read (and write) a large range of standard file formats for atomistic structures. In particular AtomsIO is lightweight and highly recommended.
- ASEconvert, which integrates DFTK with a number of convenience features of the ASE, the atomistic simulation environment. See Creating and modelling metallic supercells for an example where ASE is used within a DFTK workflow.
You can install these packages using
import Pkg Pkg.add(["AtomsIO", "AtomsIOPython", "ASEconvert"])
There are two main packages to use Python dependencies from Julia, namely PythonCall and PyCall. These packages can be used side by side, but some care is needed. By installing AtomsIOPython and ASEconvert you indirectly install PythonCall which these two packages use to manage their third-party Python dependencies. This might cause complications if you plan on using PyCall-based packages (such as PyPlot) In contrast AtomsIO is free of any Python dependencies and can be safely installed in any case.
If you want to contribute to DFTK, see the Developer setup for some additional recommendations on how to setup Julia and DFTK.