You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
where $\epsilon_i$ is the orbital energy, $t_{ij}$ is the tunneling matrix elements between sites $i$ and $j$, and $\sigma$ is the spin label. Spin label, and the corresponding summation will be dropped from now on, unless when it is necessary to include. In the multiorbital case, one also needs to sum over orbitals, and hence label $i$ should be replaced with $i\alpha$ where $\alpha$ is the orbital label.
In translationally invariant systems, it's convenient to work in momentum space. Accordingly, we'll first Fourier transform $\hat H_0$ starting with the orbital energy term.
Since $t_{ij}$ doesn't explicitly depend on $i$ or $j$ rather their relative difference: $t_{ij} = t(\mathbf R_j - \mathbf R_i) = t(\mathbf R)$ where we define $\mathbf R \equiv \mathbf R_j - \mathbf R_i$. Hence
It's instructive to calculate $t(\mathbf k)$ for the simple case of single-band system with nearest neighbour only tunneling. Along $x$ dimension, for a given site a particle can tunnel to the left ($R = \hat x$ ) and right ($R= - \hat x$) with magnitude $-t$. Accordingly:
$$t_x(\mathbf k) = \sum_{\mathbf R} t(\mathbf R) e^{i\mathbf k \cdot \mathbf R} = -te^{i \mathbf k \cdot \hat x } -te^{i \mathbf k \cdot (-\hat x)} = -t(e^{ik_x} + e^{-ik_x}) = -2t\cos k_x$$
Similarly tunneling matrix along $y$ direction is $-2t\cos k_y$. As a result
where default filling is number of orbitals minus 0.4. Other filling can be specified by passing filling option. Hence, for single band cuprate system the Fermi surface is:
By default, the Fermi surface is plotted in the extended zone with First Brilloin Zone is indicated. These can customized by passing relevant options as can been seen in the source code.
Density of States (DoS)
DoS is simply a histogram of energy levels: number of energy levels in a given $dE$ interval. DoS appears in many physical properties of a system, and can be measured experimentally. Below we show literally a histogram plot of energy levels in single band cuprate system:
fromtbaimport*x=System()
x.histogram_of_states()
More precisely, DoS is calculated using a delta function such as of Lorenz'ian form:
where $\gamma$ is a small broadenning parameter, such as $\gamma=0.05$.
Hence DoS can be plotted as:
fromtbaimport*x=System()
x.density_of_states()
In multiorbital systems, sometimes it's of interest how much each orbital contributes to DoS.
This property is calculated via eigenvectors associated with energy values, i.e. eigenvalues.
For a given vector, the norm of the i'th element yields contribution from i'th orbital in the Hamiltonian matrix basis.
This property is plotted as
fromtbaimport*x=System(model=cuprate_three_band)
# currently orbital weight plot is very slowx.density_of_states(orb_wgt=True,fast=False)
Van-Hove Singularities
A Van-Hove singularity (VHS) is basically where DoS exhibits a spike or a kink.
A spike can be due to an energy band being flat with respect to momenta, where a lot of energy levels exist in a narrow energy interval.
This is easily visualized by plotting DoS along side energy band cuts along symmetry points: