Reading: Kittel chapter 9: Energy bands or R. Gross und A. Marx: Energiebänder.
Electronic band structure
The Hamiltonian that describes any molecule or solid is,
The first sum describes the kinetic energy of the electrons. The electrons are labeled with the subscript $i$. The second sum describes the kinetic energy of all of the atomic nuclei. The atoms are labeled with the subscript $a$. The third sum describes the attractive Coulomb interaction between the the positively charged nuclei and the negatively charge electrons. $Z_a$ is the atomic number (the number of protons) of nucleus $a$. The fourth sum describes the repulsive electronelectron interactions. Notice the plus sign before the sum for repulsive interactions. The fifth sum describes the repulsive nucleinuclei interactions.
This Hamiltonian neglects some small details like the spinorbit interaction and relativistic effects. These effects will be ignored in this discussion. If they are relevant, they could be included as perturbations later. Any observable quantity of any solid can also be calculated from this Hamiltonian. It turns out, however, that solving the Schrödinger equation associated with this Hamiltonian is usually terribly difficult. Using BornOppenheimer approximation and making some assumptions about the electronelectron interactions, the manyelectron wavefunction can often be written as an antisymmetrized product of singleelectron wave functions that solve the Schrödinger equation,
\[ \begin{equation} \label{eq:schr}  \frac{\hbar^2}{2m_e}\nabla^2\psi(\vec{r}) +V(\vec{r})\psi(\vec{r}) = E\psi(\vec{r}), \end{equation} \]where $V(\vec{r})$ is a periodic potential with the periodicity of the crystal.
Bloch theorem
The Bloch theorem states that the periodic symmetry of a crystal requires that the solution to the Schrödinger equation \eqref{eq:schr} must have the form, $\psi(\vec{r}) = e^{i\vec{k}\cdot\vec{r}}u_{\vec{k}}(\vec{r})$, where $\vec{k}$ is a reciprocal lattice vector and $u_\vec{k}(\vec{r})$ is a periodic function with the periodicity of the crystal. These solutions separate into states in bands and states in band gaps. Electron states in a band have wave functions that extend over the whole crystal. These states have a finite group velocity which is proportional to $\psi^* \nabla\psi\psi \nabla \psi^*$. States in a band gap decay exponentially from the edge of the sample. The group velocity for states in a band gap is zero, $\psi^* \nabla\psi\psi \nabla \psi^* =0$. Bloch waves are analogous to molecular orbitals. Because of spin, each Bloch wave can be occupied by two electrons.
Onedimensional potentials
For any onedimensional potential, the wave functions, as well as the dispersion relations, group velocities, and densities of states can be calculated numerically. For the onedimensional KronigPenney model, these quantities can be calculated analytically.
Empty lattice approximation
The dispersion relation for free electrons is $E=\frac{\hbar^2k^2}{2m}$. The dispersion relation for weak periodic potentials will be close to the free electron dispersion relation except for close to the Brillouin zone boundaries where dipersion relation will bend to strike the Brillouin zone boundary at 90°. The empty lattice approximation can be used to construct an approximate dispersion relation for weak periodic potentials.
Tight binding
Tight binding is a method calculate the electronic band structure of a crystal. It is similar to the method of Linear Combination of Atomic Orbitals (LCAO) used to construct molecular orbitals. The tightbinding wavefunction is,
Here $\vec{r}_i$ is the position of the nucleus for the $i$th orbital and $c_{i}$ are coefficients that are determined by substituting the wave function into the Schrödinger equation \eqref{eq:schr}. If there is only one atomic orbital in the sum \eqref{eq:unitcell}, then the dispersion realtion has the form,
$$E(\vec{k})= \epsilon  t\sum \limits_me^{i\vec{k}\cdot\vec{\rho}_m},$$where $\epsilon = \langle\phi_{\text{2s}}\left(\vec{r}\right)\hat{H}\phi_{\text{2s}}\left(\vec{r}\right)\rangle$ is the onsite energy, $t =  \langle\phi_{\text{2s}}\left(\vec{r}\right)\hat{H}\phi_{\text{2s}}\left(\vec{r}\vec{a}_1\right)\rangle$ is the overlap energy, $\vec{\rho}_m$ is the position of nearest neighbor atom $m$, and $m$ sums over the nearest neighbors.
Some tight binding calculations are found in this table.
Plane wave method
Another method to find the solutions to the Schrödinger equation \eqref{eq:schr} is the Plane Wave Method.
The potential and the wave function are expressed as Fourier series,
\begin{equation} V(\vec{r})=\sum\limits_{\vec{G}}V_{\vec{G}}e^{i\vec{G}\cdot\vec{r}},\hspace{1.5cm}\psi(\vec{r})=\sum\limits_{\vec{k}}C_{\vec{k}}e^{i\vec{k}\cdot\vec{r}}. \end{equation}These expressions are substituted into the Schrödinger equation and terms with the same wavelength are collected together. This results in the central equations,
\begin{equation} \left(\frac{\hbar^2k^2}{2m}E\right)C_{\vec{k}}+\sum\limits_{\vec{G}}V_{\vec{G}}C_{\vec{k}\vec{G}}=0. \end{equation}These equations are algebraic equations that can be written in matrix form and solved for every $\vec{k}$ vector in the first Brillouin zone.
Metals, semiconductors, and insulators
If we consider a crystal with $N$ primitive unit cells and periodic boundary conditions, there are $N$ allowed $\vec{k}$vectors. Associated with each $\vec{k}$vector is a sequence of electron states that have Bloch form, $\psi(\vec{r}) = e^{i\vec{k}\cdot\vec{r}}u_{b,\vec{k}}(\vec{r})$. Here the band index $b$ has been introduced. The collection of electron states with the lowest energy at each $\vec{k}$vector forms the lowest band $(b=1)$. The collection of electron states with the second lowest energy at each $\vec{k}$vector forms the second band $(b=2)$, etc. Two electrons can occupy each Bloch state so there are $2N$ electron states in a band. If we imagine filling the Bloch states with the electrons in the crystal, for $p$ electrons per primitive unit cell, $p/2$ bands will be filled. A metal is a material with a partially filled band. The chemical potential of a metal at low temperature coincides with the highest occupied electron state. A semimetal is a metal with a low density of states at the chemical potential. For semiconductors or insulators, the filled bands are separated by a band gap from the empty bands. The chemical potential of a semiconductor or insulator is in the middle of the band gap at low temperatures. Semiconductors have a band gap less than about 3 eV so that there is some thermal activation of electrons across the band gap at room temperature and they exhibit some measureable electrical conductivity. Insulators have a band gap larger than about 3 eV and show no electrical conductivity at room temperature.
Example dispersion relations
Some example electronic dispersion relations are: GaN, 6H SiC, GaAs, GaP, Ge, InAs,
A perioidic table of bandstructures.
Densities of states
There are other more exact methods to calculate the band structure of a material such as density functional theory or the HartreeFock method. In these methods the Schrödinger equation is solved and some approximation is used to include the electronelectron interactions. The results of these calculations can be found in the scientific literature. The electron density of states can be calculated numerically by choosing uniformly distributed $\vec{k}$ vectors in the first Brillouin zone and calculating the allowed energies using the dispersion relation. The density of states is proportional to the histogram of the energies that occur.
Some examples of calculated electronic density of states are: Al fcc, Au fcc, Cu fcc, Li bcc, Na bcc, Pt fcc, W bcc, Si diamond, Fe bcc, Ni fcc, Co fcc, Mn bcc, Cr bcc, Gd hcp, Pd fcc, Pd_{3}Cr, Pd_{3}Mn, PdCr, PdMn, GaN, 6H SiC, GaAs, GaP, Ge, InAs.
Thermodynamic properties
Using the density of states, the thermodynamic properties can be calculated numerically.
Chemical potential:  \begin{equation} \nonumber n = \int_{\infty}^{\infty}D(E)f(E)dE. \end{equation}  
 
 
Internal energy density:  \[ \begin{equation} \nonumber u= \int_{\infty}^{\infty}\frac{ED(E)}{\exp\left(\frac{E\mu}{k_BT}\right)+1}. \end{equation} \]  
 
Specific heat:  \[ \begin{equation} \nonumber c_v=\frac{du}{dT}= \int_{\infty}^{\infty}\frac{ED(E)(E\mu)\exp\left(\frac{E\mu}{k_BT}\right)}{k_BT^2\left(\exp\left(\frac{E\mu}{k_BT}\right)+1\right)^2}dE. \end{equation} \]  
Entropy density:  \begin{equation} \nonumber s=\int \frac{c_v}{T}dT=\frac{1}{T}\int\limits_{\infty}^{\infty}D(E)\left[\frac{E\mu}{1+\exp\left(\frac{E\mu}{k_BT}\right)}+k_BT\ln\left(\exp\left(\frac{E\mu}{k_BT}\right)+1\right)\right]dE \end{equation}  
 
Helmholz free energy density:  \[ \begin{equation} \nonumber f=u Ts= \int_{\infty}^{\infty}D(E)\left(\frac{\mu}{\exp\left(\frac{E\mu}{k_BT}\right)+1} k_BT\ln\left(\exp\left(\frac{E\mu}{k_BT}\right)+1 \right)\right)dE. \end{equation} \]  

Experimental methods
Since any measureable quantity can be calculated from the Schrödinger equation, any measurement can be used to test a band structure calculation. A fairly direct measurement of the dispersion relation and density of states can be made with photoemission. In photoemission, photons strike the solid and eject electrons into the vacuum above the sample. The momentum and the energy of the ejected electrons is then analyzed. From this data some information is obtained about the momentum and energy of the electron state that the electron was ejected from. Analyzing both the energy and momentum is done with Angle Resolved Photoelectron Spectroscopy (ARPES). The dispersion relation below the Fermi energy can be measured with ARPES. Only the states below the Fermi energy are measured because there are no electrons in the states above the Fermi energy to eject. If only the energy is analyzed, the technique is called Ultraviolet Photoelectron Spectroscopy (UPS). The density of states below the Fermi energy is measured with UPS. There are complementary techniques called AngleResolved InversePhotoemission Spectrocopy (ARIPES) and Inverse Photoemission Spectroscopy (IPES) where an electron is sent into an empty state above the Fermi energy and the photon that is emitted as the electron falls to the Fermi energy is detected. Using these techniques, the dispersion relation and density of states above the Fermi energy can be measured.