Skip to main content
`Ctrl`+`K`

# Band gap

ase.dft.bandgap.bandgap(calc=None, direct=False, spin=<object object>, eigenvalues=None, efermi=None, output=None, kpts=None)

  Calculates the band-gap.

  Parameters:

  calc: Calculator object

    Electronic structure calculator object.

  direct: bool

    Calculate direct band-gap.

  eigenvalues: ndarray of shape (nspin, nkpt, nband) or (nkpt, nband)

    Eigenvalues.

  efermi: float

    Fermi level (defaults to 0.0).

  Returns a (gap, p1, p2) tuple where p1 and p2 are tuples of indices of the valence and conduction points (s, k, n).

  Example:

      >>> gap, p1, p2 = bandgap(silicon.calc)
      >>> print(gap, p1, p2)
      1.2 (0, 0, 3), (0, 5, 4)
      >>> gap, p1, p2 = bandgap(silicon.calc, direct=True)
      >>> print(gap, p1, p2)
      3.4 (0, 0, 3), (0, 0, 4)