I am trying to calculate band gap in CP2K for an electrolyte.
On the internet, I found two ways to find the band gap.
i) Look into one of the .pdos files generated by CP2K and find the energies where the occupation number changes from 2 to 0. Subtract the two energies and convert the result from Hartree to eV.
For example, in the .pdos file I have the following values of energies where the occupation number of the s orbital changes from 2 to 0.
# Projected DOS for atomic kind F5 at iteration step i = 0, E(Fermi) = -0.047273 a.u.
# MO Eigenvalue [a.u.] Occupation s p d
623 -0.047273 2.000000 0.00025286 0.00408688 0.00012177
624 0.133668 0.000000 0.00642493 0.02456380 0.00249863
So band gap =
ii) Use Tiziano’s script for each of the .pdos files, add the pdos values of all the element types (keeping the corresponding energy value same) to get TDOS.
Plot E vs TDOS, and look for the band where TDOS stays at zero.
I am not sure which method to choose to get band gap and I am getting slightly different answers from the two methods. Also, in case of TDOS, how to choose the tolerance below which I can say that the TDOS is zero, to define the band gap? Currently I am using the criterion that all values less than 0.05 % of the maximum will be considered as zero.
Read more here: Source link