gftool.lattice.lieb.dos
- gftool.lattice.lieb.dos(eps, half_bandwidth)[source]
DOS of non-interacting 2D Lieb lattice.
The delta-peak at eps=0 is ommited and must be treated seperately! Without it, the DOS integrates to 2/3.
Besides the delta-peak, the DOS diverges at eps=±half_bandwidth/2**0.5.
The Green’s function and therefore the DOS of the 2D Lieb lattice can be expressed in terms of the 2D square lattice
gftool.lattice.square.dos
, see [kogan2021].- Parameters:
- epsfloat np.ndarray or float
DOS is evaluated at points eps.
- half_bandwidthfloat
Half-bandwidth of the DOS, DOS(| eps | > half_bandwidth) = 0. The half_bandwidth corresponds to the nearest neighbor hopping t=D * 2**1.5.
- Returns:
- float np.ndarray or float
The value of the DOS.
See also
gftool.lattice.lieb.dos_mp
Multi-precision version suitable for integration.
gftool.lattice.square.dos
References
[kogan2021]Kogan, E., Gumbs, G., 2020. Green’s Functions and DOS for Some 2D Lattices. Graphene 10, 1–12. https://doi.org/10.4236/graphene.2021.101001
Examples
>>> eps = np.linspace(-1.5, 1.5, num=1001) >>> dos = gt.lattice.lieb.dos(eps, half_bandwidth=1)
>>> import matplotlib.pyplot as plt >>> for pos in (-2**-0.5, 0, +2**-0.5): ... _ = plt.axvline(pos, color='black', linewidth=0.8) >>> _ = plt.plot(eps, dos) >>> _ = plt.xlabel(r"$\epsilon/D$") >>> _ = plt.ylabel(r"DOS * $D$") >>> _ = plt.ylim(bottom=0) >>> _ = plt.xlim(left=eps.min(), right=eps.max()) >>> plt.show()