using DFTK using Plots a = 3.01794 # bohr b = 5.22722 # bohr c = 9.77362 # bohr lattice = [[-a -a 0]; [-b b 0]; [0 0 -c]] Mg = ElementPsp(:Mg, psp=load_psp("hgh/pbe/Mg-q2")) atoms = [Mg => [[2/3, 1/3, 1/4], [1/3, 2/3, 3/4]]]; kspacing = 0.5 # Minimal spacing of k-points, # in units of wavevectors (inverse Bohrs) Ecut = 5 # kinetic energy cutoff in Hartree temperature = 0.01 # Smearing temperature in Hartree model = model_DFT(lattice, atoms, [:gga_x_pbe, :gga_c_pbe]; temperature=temperature, smearing=DFTK.Smearing.FermiDirac()) kgrid = kgrid_size_from_minimal_spacing(lattice, kspacing) basis = PlaneWaveBasis(model, Ecut, kgrid=kgrid); scfres = self_consistent_field(basis); scfres.occupation[1] scfres.energies plot_dos(scfres)