Abstract
elphbolt is a modern Fortran (2018 standard) code for efficiently solving the coupled electron–phonon Boltzmann transport equations from first principles. Using results from density functional and density functional perturbation theory as inputs, it can calculate the effect of the nonequilibrium phonons on the electronic transport (phonon drag) and nonequilibrium electrons on the phononic transport (electron drag) in a fully selfconsistent manner and obeying the constraints mandated by thermodynamics. It can calculate the lattice, charge, and thermoelectric transport coefficients for the temperature gradient and electric fields, and the effect of the mutual electron–phonon drag on these transport properties. The code fully exploits the symmetries of the crystal and the transportactive window to allow the sampling of extremely fine electron and phonon wave vector meshes required for accurately capturing the drag phenomena. The coarray feature of modern Fortran, which offers native and convenient support for parallelization, is utilized. The code is compact, readable, welldocumented, and extensible by design.
Similar content being viewed by others
Introduction
Ab initio computation of the transport properties of materials allows a deeper understanding and probing of the rich underlying physics. It is also crucial for the predictive designing of materials for industrial applications. The advances in density functional theory (DFT)^{1,2} and density functional perturbation theory (DFPT)^{3} have enabled accurate electron (e) and phonon (ph) band structure calculations. Furthermore, various freely available codes exist that allow fast computation of the ph–ph^{4} and e–ph^{5,6} interactions. On the transport side, significant progress has been made that allows computations of the mode (band/branch and wave vector) resolved lifetimes of electrons and phonons. The phonon thermal and the electronic charge conductivity can now be calculated ab initio in the relaxation time approximation (RTA) or, going one step further, from a full solution of the corresponding singlespecies Boltzmann transport equation (BTE)^{4,6,7,8,9}. In an interacting e–ph gas, however, the transport of the two systems is intimately connected, and a unified, coupled e–ph transport may, instead, be needed for an accurate description of the underlying physics.
The idea of a complete separation of the e and ph BTEs dates back to the 1930s and is known as Bloch’s Assumption^{10}. A paradoxical consequence of this assumption is that when one solves the e (ph) BTE, the phonon (electron) system is taken to remain in equilibrium. This framework was promptly questioned by Peierls^{11}, who argued that there must exist a momentummixing between the electrons and the phonons, which would, in turn, cause both systems to move under the influence of a driving field. A theory of the coupled e–ph transport was developed by Gurevich in 1946^{12}, which allowed calculation of the effect of the nonequilibrium electrons (phonons) on the phonons (electrons). The first is called the electron drag and the latter, phonon drag. In an interacting electron–phonon gas, however, the two effects are inseparable and a mutual electron–phonon drag effect occurs. A decade later the first experimental evidence for the drag effect on the thermopower of germanium and silicon was found by Frederikse^{13} and Geballe and Hull^{14,15}. Around the same time, an influential theory was developed by Conyers Herring^{16} to explain the experimental findings. Herring’s theory, which contains several freeparameters, partially decouples the e and the ph BTEs, retaining an approximate term to account for the drag effect. From a physical point of view, however, Herring’s theory violates a deep, thermodynamic connection between the Seebeck and the Peltier effects known as the Kelvin–Onsager relationship^{17}. Semianalytical work on 2D systems was carried out in 1987 by Cantrell, Butcher, and coworkers^{18,19}. More recently, in 2014, a semianalytical model with ab initio fitted parameters and a partially decoupled framework was employed by Mahan, Lindsay, and Broido to calculate the drag effect on the thermopower of silicon^{20}. Soon after, fully ab initio drag calculations with partially decoupled solutions of the e and ph BTEs were devised by Zhou et. al. in 2015 for silicon^{21}. The code used from that work was released in 2020^{22}. Ab initio solutions to partially decoupled e and ph BTEs were also developed by Fiorentini and Bonini in 2016 for silicon^{23} and Macheda and Bonini^{24} in 2018 for diamond. Finally, in 2020, a fully coupled e–ph BTEs solution was devised and applied to gallium arsenide using model e–ph interactions by Protik and Broido^{25}. In the same year, that method was improved to include fully ab initio e–ph interactions to calculate the drag effect in silicon carbide by Protik and Kozinsky^{26}.
Here we present elphbolt (short for electron–phonon Boltzmann transport), a code that features major improvements over the methods given in refs. ^{25,26}. Moreover, we release the code as Free/Libre software under the GNU General Public License version 3, bringing the capabilities for calculating the e–ph drag physics via an ab initio solution of the fully coupled e–ph BTEs, almost a century after Peierls’ conception of the idea, to the broader transport physics community. Our code is hosted on github^{27}.
Using an ab initio and Kelvin–Onsager relationship conserving solution of the coupled e–ph BTEs, elphbolt gives access to the:

mode resolved phonon thermal conductivity;

mode resolved phonon Peltier coefficient;

mode resolved electronic charge conductivity;

mode resolved electronic thermal conductivity;

mode resolved electronic Seebeck and Peltier coefficients;

and the effect of e–ph drag on all of the above quantities.
This code is suitable for the study of 3d and 2d insulators, semiconductors, semimetals, and metals.
In the sections below, we present the theory behind elphbolt, the implementation, and the outlook.
Results
In this section, we give results for the calculated thermopower, mobility, and thermal conductivity of ndoped silicon. First, the basic ingredients of the theory are described in detail. We present the elementary interactions considered in this work. This is followed by a discussion of the BTEs in the forms in which they are implemented, and the various types of solutions that elphbolt offers. Lastly, we present the transport coefficients that are obtained from the solution of the BTEs along with a brief discussion of the Kelvin–Onsager reciprocal relationship connecting the thermoelectric coefficients.
Electrons, phonons, and interactions
First, we need the electrons and phonons, and their interactions calculated on arbitrarily fine wave vector meshes. These are achieved by the Wannier interpolation techniques described in refs. ^{5,28,29,30}. We refer the readers to these seminal works for the details of the calculation of the Wannier functions and obtaining the Wannier representations of the various physical quantities starting from their Bloch representations. In particular, the expressions for the Hamiltonian, dynamical matrix, and the e–ph matrix elements are given in refs. ^{5,30}. Below we simply provide the expressions for the Wannier to Bloch transformations that are computed within elphbolt.
The Hamiltonian in the Bloch representation can be obtained by the Fourier transformation:
where m and n are band indices, k is an arbitrary wave vector, H(R_{e}) is the Hamiltonian in the Wannier representation, living on the real space spanned by {R_{e}}, and N_{e} is the number of real space unit cells.
Diagonalizing H(k), we obtain the electronic band energies ϵ_{mk}. The unitary matrix U_{k} digonalizing the Hamiltonian contains the eigenstates \(\leftm{{{\bf{k}}}}\right\rangle\). The band velocities are obtained from the Hellmann–Feynman theorem^{31}:
where ℏ is the reduced Planck constant.
Similarly, the dynamical matrix in the Bloch representation is obtained from its Wannier representation using
where s and \(s^{\prime}\) denote the phonon branches, q is an arbitrary wave vector, \({D}_{ss^{\prime} }({{{{\bf{R}}}}}_{{{\mathrm{ph}}}})\) is the dynamical matrix in the Wannier representation, and R_{ph} locates each unit cell in real space containing N_{ph} cells. The first term is shortranged, and the term \({D}_{ss^{\prime} }^{\,{{\mathrm{NAC}}}\,}\) is the longrange (the, socalled, nonanalytic) correction due to the dipole–dipole interaction given by^{32}
where e is the electronic charge, V is the primitive unit cell volume, τ and \(\tau ^{\prime}\) label the basis atoms with masses m_{τ} and \({m}_{\tau ^{\prime} }\), Z^{*} is the Born effective charge tensor, ε_{0} is the permittivity of free space, and ϵ^{∞} is the highfrequency dielectric tensor. This additional term is only required for polar materials.
We obtain the phonon branch energies ℏω_{sq} and the eigenstates \(\lefts{{{\bf{q}}}}\right\rangle\) by diagonalizing \({D}_{ss^{\prime} }({{{\bf{q}}}})\) with the unitary matrix u_{q}. Here ω_{sq} is the phonon angular frequency. The phonon group velocities are calculated using
Equipped with these electronic and phononic quantities, we move on to the calculation of the various interactions in the electron–phonon system.
We start with the e–ph interactions. The vertices (matrix elements) in Bloch space are given by^{30}
where \({g}_{{{{{\bf{R}}}}}_{{{\mathrm{e}}}}{{{{\bf{R}}}}}_{{{\mathrm{ph}}}}}^{smn}\) are the e–ph matrix elements in Wannier space. The additional final term is the longrange correction due to the socalled Fröhlich interaction^{33,34} required for polar materials. For these materials, the \({g}_{{{{{\bf{R}}}}}_{{{\mathrm{e}}}}{{{{\bf{R}}}}}_{{{\mathrm{ph}}}}}\) is constructed to be the shortrange part of the full interaction. The Fröhlich term takes the following form:
where ξ_{τ,sq} = u_{τ,sq} is the eigendisplacement of the basis atom τ due to the phonon mode sq, r_{τ} is the position of the atom τ in the primitive unit cell, and the sum over the reciprocal lattice vectors \({{{\mathcal{G}}}}\) is performed using the Ewald sum technique by multiplying each term of the summation by the factor \(\exp [({{{\bf{q}}}}+{{{\mathcal{G}}}})\cdot {\epsilon }^{\infty }\cdot ({{{\bf{q}}}}+{{{\mathcal{G}}}})/(4\alpha )]\), where the parameter α is set to 1 Bohr^{−2}.
Recently, it has been shown that quadrupolar corrections may be important for an accurate description of the eacoustic phonon interactions^{35,36}. Particularly, the electron mobility can be strongly affected for those piezoelectric materials in which the transportactive band extremum is at the BZ center. Currently, we do not have the capabilities for including the quadrupolar corrections. As such, care must be taken when dealing with strongly polar materials such as cubic GaAs and wurtzite GaN that feature zonecentered band extrema. We plan to include support for quadrupolar corrections in a future release of the code.
In terms of the e–ph matrix elements described above, the temperaturedependent transition rates of the electrons due to the phonon absorption (+) and emission (−) processes are given by^{37}
where \({f}^{0}\) (n^{0}) is the equilibrium, i.e., the Fermi (Bose), distribution of the electron (phonon) gas, and the delta functions enforce the energy conservation in a scattering process. The notation \(\langle {{{\bf{k}}}}\rangle {{{\bf{k}}}}^{\prime}  {{{\bf{q}}}}\) above means that the initial electron wave vector is taken to be in the irreducible Brillouin zone (IBZ), the final electron wave vector is on the full first Brillouin zone (FBZ), the phonon wave vector mediating this transition is \({{{\bf{q}}}}=[{{{\bf{k}}}}^{\prime} \langle {{{\bf{k}}}}\rangle ]\), with the square brackets denoting a modulo operation with a reciprocal lattice vector. N_{k} is the number of electronic wave vectors in the FBZ.
In elphbolt, we have the option of including electroncharged impurity (echimp) scattering to capture the effect of charged dopants on the transport properties. The echimp interaction is calculated within the first Born approximation, taking the impurity potential to have a static, Yukawa (screened Coulomb) form. The modulus squared of the interaction vertex is given by (generalized from ref. ^{38})
where i = p, n denotes p or ntype doping, n_{i} is the concentration of the dopant, Z_{i} is the ionization of the dopant, e is the absolute electronic charge, ϵ^{0} is the zero frequency dielectric constant of the material, q is the wave vector magnitude measured from the nearest BZ center, and q_{TF} is the Thomas–Fermi screening wave vector given by
where d_{s} is the spin degeneracy of the electronic state, and \(\beta \equiv {({k}_{{{\mathrm{B}}}}T)}^{1}\) in terms of the Boltzmann constant k_{B} and temperature T.
In terms of the matrix elements, the charged impurity mediated m〈k〉 to \(n{{{\bf{k}}}}^{\prime}\) transition rates are given by
where we have multiplied the squared matrix elements with a transport factor corresponding to the inscattering for elastic processes. Note that this term suppresses forward scattering.
At the present, we do not include e–e interactions. Typically, the e–e scattering does not strongly affect the transport in metals^{37}. However, in degenerate semiconductors, its effects might be strong^{39}. A rigorous treatment of the e–e interaction necessarily requires the calculation of the dynamical screening of the electron gas. Typically, this is done in the random phase approximation which introduces an additional Bosonic system—the plasmons. We wish to include e–e and the related eplasmon scattering in a future release.
Next, we look at the interactions of the phonons. We start with the ph–e interaction. The lowestorder process involves two electrons, and the transition probabilities are given by^{37}
where N_{q} is the number of phonon wave vectors in the FBZ and \({{{\bf{k}}}}^{\prime} =[{{{\bf{k}}}}+\langle {{{\bf{q}}}}\rangle ]\). This describes the same + process given in Eq. (8).
The lowestorder ph–ph interaction vertices describing the \({{{\bf{q}}}}^{\prime\prime} \to {{{\bf{q}}}}\pm {{{\bf{q}}}}^{\prime}\) processes are given by^{4}
where i, j, k label the atoms in the supercell, the primed sum indicates restriction to the central primitive unit cell, the Greek letters are Cartesian directions, \({{{{\bf{e}}}}}_{j,s^{\prime} {{{\bf{q}}}}^{\prime} }=\exp (i{{{{\bf{r}}}}}_{j}\cdot {{{\bf{q}}}}^{\prime} ){{{{\boldsymbol{\xi }}}}}_{j,s^{\prime} {{{\bf{q}}}}^{\prime} }\) is the eigendisplacement of atom j in the supercell due to the phonon mode \(s^{\prime} {{{\bf{q}}}}^{\prime}\), and Ψ_{ijk} are the thirdorder anharmonic force constants.
We will require only the modulus squared of the above expression. As such, we need only calculate the V^{−} processes, since \({\left{V}_{{{{\bf{q}}}}{{{\bf{q}}}}^{\prime} {{{\bf{q}}}}^{\prime\prime} }^{+,ss^{\prime} s^{\prime\prime} }\right}^{2}={\left{V}_{{{{\bf{q}}}}{{{\bf{q}}}}^{\prime} {{{\bf{q}}}}^{\prime\prime} }^{,ss^{\prime} s^{\prime\prime} }\right}^{2}\).
In terms of the ph–ph vertices, the anharmonic phonon transition rates can be calculated as^{4}
We note that fourphonon interactions have been shown to be important for phonon transport in strongly anharmonic materials and those that feature anomalously weak threephonon scattering rates for modes that dominate the transport at high temperatures; see ref. ^{40} and the references therein. We do not currently have the functionality for calculating fourphonon interactions but plan to include it in a future release.
In elphbolt, we may also consider lowestorder ph–isotope and ph–substitution defect interactions within the first Born approximation and assuming the defect to be an onsite perturbation and low in concentration. This approximation can be described as the Tamura model^{41}. The transition rates for these twophonon processes are given by
where x = {iso, subs} for isotope and substitution defect scattering, respectively, and
is the mass variance parameter of the host atom τ, t denotes the type—isotope or substitution—of the guest atom, f_{tτ} is the ratio of typet guest to typeτ host, and 〈M〉_{τ} is the average onsite mass.
It is worth noting that the above description of the phdefect interaction is simplistic and can fail for defects which cause extended bond perturbations. There exist advanced diagrammatic techniques that can handle such cases better^{42,43,44}. Such methods are planned for inclusion in a future release of elphbolt.
Coupled and decoupled BTEs
In elphbolt we may consider the electric (E) and temperature gradient (∇T) fields as the drivers of the electron and the phonon currents. These applied fields cause the distribution functions of the electrons and the phonons, f_{mk} and n_{sq}, respectively, to deviate from their equilibrium forms. In the linear response regime, these are given by
The deviation functions above of the electrons and the phonons, respectively, can be written as
where I_{mk}(F_{sq}) is the electron (phonon) response function that measures the deviation from an equilibrium of the occupation of the electron (phonon) state mk (sq) due to the applied ∇T field. Similarly, J_{mk}(G_{sq}) is the electron (phonon) response to the E field.
The coupled electron and phonon BTEs have been given in numerous references, e.g., refs. ^{21,23,24,25,26,37}. Here, we write them in the following form in terms of the response functions:
In the equations above, the terms with the superscript 0 are the relaxation time approximation (RTA) terms. These involve a direct coupling to the applied field, which is why in the phonon equation to the E field, the RTA term is identically zero. Furthermore, the RTA only involves outscattering processes. Truncating the BTEs up to the RTA term is equivalent to ignoring the inscattering corrections and the drag effect. Next, the inscattering corrections are given by the terms with the superscript S. These terms are functionals of the response function of the same species and, as such, they are called the self terms. The inclusion of these terms renders the BTEs (barring the one for G) into a set of decoupled equations which can be solved iteratively. Truncating the BTEs up to the self term, however, still ignores the drag effect. This is because, at this level of the approximation, the electron equations implicitly take phonons to remain in equilibrium, while the phonon equations take electrons to remain in equilibrium. Finally, the terms with the superscript D represent the drag terms. These are functionals of the response function of the other species. The inclusion of these terms allows an accurate description of the mutual drag effect in the interacting electron–phonon system. At this level, each pair of BTEs must be solved selfconsistently. Furthermore, there exists a thermodynamic restriction known as the Kelvin–Onsager relationship^{17} that reflects a deeper coupling of the two pairs of equations for the two fields. In elphbolt, we have devised a fast, iterative scheme that allows us to obtain the full solution of the Eqs. (19), while respecting the thermodynamic restrictions mandated by the Kelvin–Onsager relationship. This is discussed further in the Transport coefficients subsection.
Now we provide the expressions for each term in the BTEs in Eq. (19). First, we give the expressions for the electronic equations. The field coupling, RTA terms are given by
where μ_{c} is the chemical potential of the electronic system. The electron RTA scattering rates are given by
The summation above of the independent scattering channels at the RTA level is known as Matthiessen’s Rule.
The self terms are given by
Lastly, the drag terms are
Similarly, for the phonons we have
where the phonon RTA scattering rates are given by
The self and drag terms are, respectively
and
With these expressions, we solve the coupled e–ph BTEs, Eqs. (19), using an iterative procedure which is an improvement over the one used earlier in refs. ^{25,26}. Here we use a unified scheme, indexed by a single iterator, that of the ph BTE. In this approach, for a coupled BTEs solution, the e BTE is internally iterated to selfconsistency for each iteration of the ph BTE. Thus, once the ph BTE has achieved selfconsistency, the e BTE is guaranteed to do so also. This procedure is physically justified since the electron system is, in general, faster than the phonon system. Moreover, this scheme allows the strict enforcement of the Kelvin–Onsager relationship after each ph BTE iteration because the electron system is always brought to consistency with the current nonequilibrium phonon system. However, since the Kelvin–Onsager relationship mandates a thermodynamic constraint over the thermoelectric transport coefficients of both the electron and the phonon systems (see subsection Transport coefficients), in order to confirm that this relationship is satisfied, the coupled BTEs iteration must be performed for both the E and ∇T fields, simultaneously. Thus, all four BTEs in Eqs. (19) are tightly coupled. This approach is an improvement over the simple, dual iterator scheme used in refs. ^{25,26}, both conceptually and numerically.
We offer four different levels of solutions of the BTE for each species and field: RTA, partially decoupled, dragless full, and dragged full. Note that the RTA and dragless full solutions for the case of the phonons under the influence of the electric field are trivially zero. In our iterative approach, the computational time and space difference between the partially decoupled solution and the dragged full solution is not large, and both the RTA (iteration 0) and partially decoupled (iteration 1) solutions are provided en route to the dragged full solution. By default, elphbolt will carry out a set of decoupled, hence, dragless, ph and e BTEs immediately after the coupled BTEs are fully solved. This allows the users to compare the transport coefficients in all the abovementioned approximation levels after a single computational run. The users, however, also have the option of calculating only the decoupled e and ph BTEs (dragless full), if they wish to do so.
Transport coefficients
From the solutions of the response functions, we can obtain the following transport coefficient tensors.
From the electronic charge current, we get
where σ is the electronic charge conductivity and S is the (Seebeck) thermopower.
From the electronic heat current, we get
where α_{el} is closely related to the electronic Peltier coefficient. The electronic component of the (Peltier) thermopower is given by Q_{el} = α_{el}(σT)^{−1}. The tensor κ_{0,el} is the electronic thermal conductivity in the zero E field (closed circuit) condition. The electronic thermal conductivity in the open circuit condition, which is what can be measured in experiments, is given by κ_{el} = κ_{0,el} − α_{el}S.
Lastly, from the phonon heat current, we obtain
where κ_{ph} is the phonon thermal conductivity and α_{ph} is related to the phonon Peltier coefficient. Specifically, the phonon component of the (Peltier) thermopower is given by Q_{ph} = α_{ph}(σT)^{−1}.
The Kelvin–Onsager relationship unifies the Seebeck and the Peltier effects and mandates that
where α = α_{el} + α_{ph}^{17}. Note that this implies that the same thermopower Q ≡ S = Q_{el} + Q_{ph} is obtained by both the Seebeck and the Peltier pictures.
As such, the above relationship connects the ∇T field e BTE and the ∇T and E field ph BTEs. Since, for a given field, the BTE for one species is coupled to the one for the other via the drag term, the Kelvin–Onsager relationship effectively leads to a tight physical connection between all the four BTEs of the interacting e–ph system. However, during the course of the iterations, numerical issues may cause the system of equations to deviate from the Kelvin–Onsager relationship. To remedy this, corrective measures must be employed. Now, within the iterative scheme described in the previous subsection, it is straightforward to enforce the Kelvin–Onsager relationship. To do this, we split σS into a diffusion and a drag term and draw a parallel with the Peltier decomposition:
Then, decomposing I as (band and wave vector indices dropped for brevity)
and demanding σS_{diff}[I_{diff}] = α_{el}T^{−1}, we can arrive at the relation:
The problem of enforcing the Kelvin–Onsager relationship then boils down to satisfying
where λ is a small, corrective scalar which can be easily found using a bisection method.
Implementation
The coupled BTEs solver described above is implemented in Fortran 2018. This allows us to make use of the objectoriented programming (OOP) support and the builtin coarray functionality that provides concise, the native syntax for parallelization. Specifically, we create the following seven derived types: crystal, symmetry, numerics, electron, phonon, epw_wannier, and bte dealing with the components of the problem that the names suggest. Each derived type contains its own data and procedures (functions and subroutines). Apart from these, there are separate modules for immutable parameters, helper procedures, etc. This hybrid OOP/procedural design enables the extensibility of the code. Boilerplate getter and setter functions are generally avoided. Instead, the intent and use, only keywords of Fortran are strictly used to control the read, write, and use access of the different components of the code. This design strategy makes the code compact (about 6700 lines) for what it offers and easily readable. As a general rule, code repetition is avoided unless the generalizations lead to a slow or physically unclear source. We tried to strike a balance between the speed of development, execution, readability, and extensibility. Below we discuss the general workflow and the logical structure of the program.
Workflow and structure
In Fig. 1 we present the workflow of elphbolt. For a full calculation complete with the e–ph drag effect, we require the secondorder interatomic force constants (IFC2s) from Quantum Espresso^{45,46,47}; the thirdorder interatomic force constants (IFC3s) from thirdorder.py^{4} which provides an interface with Quantum Espresso; and the Wannier space electronic Hamiltonian, dynamical matrix, e–ph matrix elements, and the real space cell maps and degeneracies from EPW^{5,30,34}. EPW internally interfaces with Quantum Espresso and Wannier90^{48}. The generation of the IFC2s and IFC3s are also part of the ShengBTE workflow, and the users of that code will find that only one extra step—i.e., an EPW calculation—is required to generate all the input data for an e–ph coupled BTEs calculation with elphbolt. We have provided two modified EPW source files that allow the generation of some of the required Wannier space information. The user also needs to provide an input file called input.nml. The format of the input is described in details in the file README.org.
Next, we outline the logical flow of the program. The main program is in the file elphbolt.f90. The program starts with creating objects of the seven derived types mentioned earlier. Then, following a welcome message, it initializes the crystal object. This involves reading the information about the crystal and initializing the appropriate internal variables. Following this, the numerics object is initialized which involves the reading in of the transport wave vector meshes, data output directory, BTE solution type, etc. Next, the symmetry object is initialized. At this step, the symmetries of the crystal and the BZ are calculated. Following this, the epw_wannier object is initialized which involves reading in the Wannier space information. Next, we initialize the electron object. In this step, the information about the bands, transportactive energy window, chemical potential, etc. are read in. The transport energy window restricted electronic IBZ is generated along with the bands, eigenstates, and velocities. Next, we initialize the phonon object which involves the calculation of the phonon branches, eigenstates, and velocities. The next major step is the calculation of the interaction vertices. These zero temperature quantities are stored in the disk for later temperature and carrier concentration sweeps. The temperaturedependent transition rates are calculated and stored in the disk also for their reuse in the various types of BTE solutions that are available. The transition rates expressions include the energyconserving delta functions. We provide two methods for the evaluation of these delta functions: the triangular method^{49,50} and the analytic tetrahedron method^{51}. The first is the only option for 2d systems and is the default for 3d systems. Unlike the more commonly used Gaussian or Lorentzian methods, the triangular and tetrahedron methods do not have any additional smearing parameter, and, as such, the electron and phonon wave vector meshes are the only parameters to converge. Finally, the bte object is used to solve the BTEs. The code produces a large amount of data for analysis, including the RTA scattering rates, band/branch resolved transport tensors, response functions at the RTA, partially decoupled, and fully iterated levels, among others. The users may also run the code in a postprocessing mode to generate spectral transport coefficients if required. Full descriptions of all the input options and the output data are provided in the README.org file.
Example: cubic silicon
As a demonstration of the code, we calculate the drag effect on the thermopower in cubic silicon. In addition, we include calculations of the mobility and thermal conductivity.
We consider first an ntype doped sample of low carrier density 2.75 × 10^{14} cm^{−3} over a range of temperatures. This is close to the carrier concentration in the best sample (number 537) of Geballe and Hull’s experimental work^{15}. We show in Fig. 2 a comparison of the calculated and the measured thermopower magnitudes. The experimental data is collected from Fig. 1 of ref. ^{15}. The black curve is the calculated total thermopower. In the Seebeck picture, this includes the phonon drag contribution. And in the Peltier picture, this is the sum of the electronic contribution and the phonon contribution, the latter being purely due to the electron drag effect. The Peltier picture also allows a clean separation of the electronic and the phonon contributions. This Peltier breakdown of the total thermopower is shown in Fig. 2. The solid blue curve is the electronic contribution to the thermopower. This contribution decreases slightly with decreasing temperature. The solid green curve is the phonon thermopower. This starts off as significantly lower than the electronic thermopower at 300 K, but quickly overtakes the latter around 175 K, before dominating by more than an order of magnitude at 50 K. The calculated total thermopower is in excellent agreement with the experimental measurements (red circles). Without the drag effect, the phonon contribution would be trivially zero, and the electronic contribution would be an order of magnitude off from the experimental values at low temperatures. Furthermore, without drag, the temperature dependence of the thermopower would be spectacularly wrong. The explanation of the origin of the strong drag effect in silicon has previously been given in refs. ^{21,23}, and is not reproduced here. These earlier ab initio works captured the strong drag behavior using a partially decoupled solution of the e and ph BTEs. Nevertheless, they found excellent agreement with experimental measurements. Our calculations corroborate their finding that the partially decoupled solution is indeed sufficient to capture the strong drag effect in silicon—the green and blue squares denote the partially decoupled solutions, and they coincide nearly perfectly with corresponding full drag curves. For this case, the RTA and dragless full solutions of the e BTE also give essentially the same result and are not shown on the plot to reduce clutter. However, this is not guaranteed to hold true for all materials, and, in general, a full drag solution of the e–ph BTEs should be used.
Figure 3 shows the calculated thermopower of an ntype sample with a high density of 2.7 × 10^{19} cm^{−3}, matching that of sample 140 in ref. ^{15}. Good agreement with measured data is again obtained. The percentage difference of the calculated total thermopower from the experimental value near 50 (300) K is around 15 (1)%. Note that the calculated thermopower without the phonon component again significantly underestimates the measured thermopower across the full range of temperatures considered.
In Fig. 4, we present the calculated temperaturedependent mobilities for a carrier concentration of 2.75 × 10^{14} cm^{−3}. Excellent agreement is found over the entire temperature range considered here with experimental measurements (shown in red circles) on similar lowdoped samples^{52}. The effect of phonon drag on this quantity is negligible. In fact, the difference between the dragged full, RTA, dragless full, and partially decoupled solutions is very small, and, to reduce clutter, we do not show the latter two results on the plot. This corroborates the finding in ref. ^{21}.
Figure 5 shows the calculated temperaturedependent mobilities for a degenerate carrier concentration of 2 × 10^{19} cm^{−3} and the comparison to experimental data from samples with similar electron concentrations from ref. ^{53}. The calculated mobilities including echimp scattering (solid blue curve) are between a factor of 4 to 5 higher than the measured values (red circles). The RTA, dragless full, and partially decoupled solutions give nearly the same values as the dragged full solution and, to reduce clutter, we do not show these points on this plot. The large discrepancy between the calculated and the measured mobilities could be due to a combination of multiple reasons. First, the measurements were done on compensated samples and the acceptor and donor compositions were not reported in ref. ^{53}. Our calculations have assumed that the mobile electron concentration is equal to the ionized donor density, while the acceptor density has been taken to be zero. In the actual samples, acceptors provide additional charge scattering centers, thus lowering the mobility. Second, the echimp scattering employed in the calculation assumes a static, Thomas–Fermi screened Coulomb interaction treated in the Born approximation. It is known that the Thomas–Fermi model leads to a significant overscreening of the interaction in the degenerate limit^{38}. The validity of the Born approximation is also stretched in this limit and more sophisticated nonperturbative approaches might be better suited. Lastly, the consideration of the eplasmon scattering, which is currently not included in our calculation, has been shown to reduce the mobility of silicon significantly at high carrier concentrations^{39}. A more rigorous treatment of the echimp scattering along with e–e scattering is planned for a future version of elphbolt.
We also show in Fig. 5 the calculated mobility with the echimp interaction turned off (dashed blue curve). Here we envision that the mobile charge carriers are created in a region in which charged dopants do not exist, which could happen, for example, through modulation doping^{54}, or in GaN/AlGaN heterostructures^{55}. In this case, the phonon drag effect leads to a large increase in mobility—at 300 (50) K, the drag gain of mobility is about a factor of 2.5 (50). Such high gains in mobility can, potentially, be exploited along with those previously identified in the thermopower^{21,23,56} to boost the thermoelectric figureofmerit. Note that, in this case, the phonon drag effect is not fully captured by the partially decoupled solution, which predicts about half the value given by the dragged full solution at 50 K. At this temperature, the RTA and dragless full solutions undershoot the value of the dragged full solution by about a factor of 5.
Finally, in Fig. 6 we compare the calculated phonon thermal conductivities against measurements on high purity samples of natural silicon. The measured values (red circles) are taken from ref. ^{57}. Remarkable agreement is found over the full temperature range considered for the low concentration case (solid blue curve). We also plot the results for a high concentration case in dashed green. The ph–e interactions cause a weaker suppression at high temperatures compared to that in the lowtemperature limit even at a high carrier concentration of 2 × 10^{19} cm^{−3}. This happens because the ph–ph scattering rates dominate over the ph–e ones at high temperatures. This is consistent with the findings in ref. ^{58}. At low temperatues, the low energy acoustic phonons progressively contribute more to the thermal conductivity, while, at the same time, the ph–e scattering rates begin to dominate over the ph–ph ones for these modes. This results in a stronger suppression of the thermal conductivity at low temperatures for the high doped case. The electron drag effect on the phonon thermal conductivity is found to be small in this material, as has been shown earlier in refs. ^{21,23}. This has also been shown to be true for gallium arsenide^{25} and silicon carbide^{26}. The reason for this has been discussed in these references. The dragged full, dragless full, partially decoupled, and the RTA solutions all give nearly the same results and only the first type is shown on the plot.
Discussion
In this work, we discussed the theory and implementation of elphbolt—an efficient code for solving the coupled electron–phonon Boltzmann transport equations. This gives ab initio access to the thermal, charge, and thermoelectric transport properties in materials, and the effect of e–ph drag on them. The code is distributed as Free/Libre software under the GNU General Public License version 3 that gives the user the right to use, modify, and distribute the original and their modified versions of the software. The code combines concepts of the objectoriented and procedural programming styles, has a clean, modular structure, features coarray parallelization, and is welldocumented. This makes the code easy to extend. For future releases, we plan to include a more rigorous treatment of impurity scattering, electron–electron interactions, provisions for including fourphonon interactions^{59}, quadrupolar corrections, and magnetotransport.
Methods
Calculation details
We use the normconserving, Perdew–Zunger, local density approximation (LDA) pseudopotential^{60}. A relaxed lattice constant of 5.40 Å is found. The phonon calculation is performed using a 12 × 12 × 12 kmesh and a 6 × 6 × 6 qmesh. The EPW calculation is done with four valence and four conduction bands, using an initial guess of sp^{3} projections on the two basis atoms. The IFC3s are calculated using a 5 × 5 × 5 supercells (250 atoms) with a six nearest neighbor cutoff and Γpoint sampling. In the transport calculations, we include e–ph, echimp (assuming singly charged impurities), ph–ph, ph–e, and phiso scattering. For the transport calculations, converged 50 × 50 × 50 q and 150 × 150 × 150 kmeshes, denoted (50, 150), are used. We use a gcc build of elphbolt with the OpenCoarrays library^{61} for coarray support.
A typical calculation of the fully coupled e–ph BTEs using the (50, 150) mesh set takes on the order of 3000 CPUhours. A breakdown of the various important components is given in Table 1. These numbers were calculated on four nodes each equipped with 28 Intel(R) Xeon(R) CPU E52680 v4 @ 2.40 GHz cores for an ntype carrier concentration of 2.75 × 10^{14} cm^{−3} at 300 K and a relative convergence threshold of 0.0001. The coupled e–ph BTEs required six iterations to converge, whereas the decoupled e and ph BTEs took four and seven iterations, respectively. The total run time, of course, can vary significantly depending on the speed of disk read/write and that of the CPUs, the temperature, and the carrier concentration. Note that once the interaction vertices are calculated, these can then be reused during the solutions of the BTEs for different temperatures and carrier concentrations.
Data availability
The input files needed to generate both the force constants and Wannier space data required to reproduce the results in this work are available from github^{27}.
Code availability
The code used in this work is available from github^{27}.
Change history
30 March 2022
A Correction to this paper has been published: https://doi.org/10.1038/s41524022007462
References
Hohenberg, P. & Kohn, W. Inhomogeneous electron gas. Phys. Rev. 136, B864 (1964).
Kohn, W. & Sham, L. J. Selfconsistent equations including exchange and correlation effects. Phys. Rev. 140, A1133 (1965).
Baroni, S., De Gironcoli, S., Dal Corso, A. & Giannozzi, P. Phonons and related crystal properties from densityfunctional perturbation theory. Rev. Mod. Phys. 73, 515 (2001).
Li, W., Carrete, J., Katcho, N. A. & Mingo, N. ShengBTE: a solver of the Boltzmann transport equation for phonons. Comput. Phys. Commun. 185, 1747–1758 (2014).
Poncé, S., Margine, E. R., Verdi, C. & Giustino, F. EPW: electron–phonon coupling, transport and superconducting properties using maximally localized Wannier functions. Comput. Phys. Commun. 209, 116–133 (2016).
Zhou, J.J. et al. Perturbo: a software package for ab initio electron–phonon interactions, charge transport and ultrafast dynamics. Comput. Phys. Commun. 264, 107970 (2021).
Broido, D. A., Malorny, M., Birner, G., Mingo, N. & Stewart, D. A. Intrinsic lattice thermal conductivity of semiconductors from first principles. Appl. Phys. Lett. 91, 231922 (2007).
Liu, T.H., Zhou, J., Liao, B., Singh, D. J. & Chen, G. Firstprinciples modebymode analysis for electronphonon scattering channels and mean free path spectra in GaAs. Phys. Rev. B 95, 75206 (2017).
Poncé, S., Margine, E. R. & Giustino, F. Towards predictive manybody calculations of phononlimited carrier mobilities in semiconductors. Phys. Rev. B 97, 121201 (2018).
Bloch, F. Zum elektrischen Widerstandsgesetz bei tiefen Temperaturen. Z. f.ür. Phys. 59, 208–214 (1930).
Peierls, R. Zur Theorie der elektrischen und thermischen Leitfähigkeit von Metallen. Ann. Phys. 396, 121–148 (1930).
Gurevich, Y. G. & Mashkevich, O. L. The electronphonon drag and transport phenomena in semiconductors. Phys. Rep. 181, 327–394 (1989).
Frederikse, H. P. R. Thermoelectric power of germanium below room temperature. Phys. Rev. 92, 248 (1953).
Geballe, T. H. & Hull, G. W. Seebeck effect in germanium. Phys. Rev. 94, 1134 (1954).
Geballe, T. H. & Hull, G. W. Seebeck effect in silicon. Phys. Rev. 98, 940 (1955).
Herring, C. Theory of the thermoelectric power of semiconductors. Phys. Rev. 96, 1163 (1954).
Sondheimer, E. H. The Kelvin relations in thermoelectricity. Proc. R. Soc. Lond. Ser. A. Math. Phys. Sci. 234, 391–398 (1956).
Cantrell, D. G. & Butcher, P. N. A calculation of the phonondrag contribution to the thermopower of quasi2D electrons coupled to 3D phonons. I. General theory. J. Phys. C. Solid State Phys. 20, 1985 (1987).
Cantrell, D. G. & Butcher, P. N. A calculation of the phonondrag contribution to the thermopower of quasi2D electrons coupled to 3D phonons. II. Applications. J. Phys. C. Solid State Phys. 20, 1993 (1987).
Mahan, G. D., Lindsay, L. & Broido, D. A. The Seebeck coefficient and phonon drag in silicon. J. Appl. Phys. 116, 245102 (2014).
Zhou, J. et al. Ab initio optimization of phonon drag effect for lowertemperature thermoelectric energy conversion. Proc. Natl Acad. Sci. USA 112, 14777–14782 (2015).
Zhou, J. et al. Firstprinciples simulation of electron transport and thermoelectric property of materials, including electronphonon scattering, defect scattering, and phonon drag. Mater. Cloud Arch. 2020 (2020).
Fiorentini, M. & Bonini, N. Thermoelectric coefficients of ndoped silicon from first principles via the solution of the Boltzmann transport equation. Phys. Rev. B 94, 85204 (2016).
Macheda, F. & Bonini, N. Magnetotransport phenomena in pdoped diamond from first principles. Phys. Rev. B 98, 201201 (2018).
Protik, N. H. & Broido, D. A. Coupled transport of phonons and carriers in semiconductors: a case study of ndoped GaAs. Phys. Rev. B 101, 75202 (2020).
Protik, N. H. & Kozinsky, B. Electronphonon drag enhancement of transport properties from a fully coupled ab initio Boltzmann formalism. Phys. Rev. B 102, 245202 (2020).
Protik, N. H. elphbolt. https://github.com/nakib/elphbolt (2021).
Marzari, N. & Vanderbilt, D. Maximally localized generalized Wannier functions for composite energy bands. Phys. Rev. B 56, 12847 (1997).
Souza, I., Marzari, N. & Vanderbilt, D. Maximally localized Wannier functions for entangled energy bands. Phys. Rev. B 65, 35109 (2001).
Giustino, F., Cohen, M. L. & Louie, S. G. Electronphonon interaction using Wannier functions. Phys. Rev. B 76, 165108 (2007).
Feynman, R. P. Forces in molecules. Phys. Rev. 56, 340 (1939).
Pick, R. M., Cohen, M. H. & Martin, R. M. Microscopic theory of force constants in the adiabatic approximation. Phys. Rev. B 1, 910 (1970).
Sjakste, J., Vast, N., Calandra, M. & Mauri, F. Wannier interpolation of the electronphonon matrix elements in polar semiconductors: polaroptical coupling in GaAs. Phys. Rev. B 92, 54307 (2015).
Verdi, C. & Giustino, F. Fröhlich electronphonon vertex from first principles. Phys. Rev. Lett. 115, 176401 (2015).
Brunin, G. et al. Electronphonon beyond Fröhlich: dynamical quadrupoles in polar and covalent solids. Phys. Rev. Lett. 125, 136601 (2020).
Jhalani, V. A., Zhou, J.J., Park, J., Dreyer, C. E. & Bernardi, M. Piezoelectric electronphonon interaction from ab initio dynamical quadrupoles: impact on charge transport in wurtzite GaN. Phys. Rev. Lett. 125, 136602 (2020).
Smith, H. & Jensen, H. H. Transport Phenomena (Clarendon Press, Oxford Univ. Press, 1989).
Chattopadhyay, D. & Queisser, H. J. Electron scattering by ionized impurities in semiconductors. Rev. Mod. Phys. 53, 745 (1981).
Caruso, F. & Giustino, F. Theory of electronplasmon coupling in semiconductors. Phys. Rev. B 94, 115208 (2016).
Feng, T. & Ruan, X. In Nanoscale Energy Transport (ed. Liao, B.) Ch.2 (IOP, 2020).
Tamura, S.i Isotope scattering of dispersive phonons in Ge. Phys. Rev. B 27, 858 (1983).
Mingo, N., Esfarjani, K., Broido, D. A. & Stewart, D. A. Cluster scattering effects on phonon conduction in graphene. Phys. Rev. B 81, 45408 (2010).
Katcho, N. A., Carrete, J., Li, W. & Mingo, N. Effect of nitrogen and vacancy defects on the thermal conductivity of diamond: an ab initio Green’s function approach. Phys. Rev. B 90, 94117 (2014).
Fava, M. et al. How dopants limit the ultrahigh thermal conductivity of boron arsenide: a first principles study. npj Comput. Mater. 7, 1–7 (2021).
Giannozzi, P. et al. QUANTUM ESPRESSO: a modular and opensource software project for quantum simulations of materials. J. Phys. Condens. Matter 21, 395502 (2009).
Giannozzi, P. et al. Advanced capabilities for materials modelling with quantum ESPRESSO. J. Phys. Condens. Matter 29, 465901 (2017).
Giannozzi, P. et al. Quantum ESPRESSO toward the exascale. J. Chem. Phys. 152, 154105 (2020).
Pizzi, G. et al. Wannier90 as a community code: new features and applications. J. Phys. Condens. Matter 32, 165902 (2020).
Kurganskii, S. I., Dubrovskii, O. I. & Domashevskaya, E. P. Integration over the twodimensional Brillouin zone. Phys. Status Solidi 129, 293–299 (1985).
Wang, T., Carrete, J., van Roekeghem, A., Mingo, N. & Madsen, G. K. H. Ab initio phonon scattering by dislocations. Phys. Rev. B 95, 245304 (2017).
Lambin, P. & Vigneron, J.P. Computation of crystal Green’s functions in the complexenergy plane with the use of the analytical tetrahedron method. Phys. Rev. B 29, 3430 (1984).
Canali, C., Jacoboni, C., Nava, F., Ottaviani, G. & AlberigiQuaranta, A. Electron drift velocity in silicon. Phys. Rev. B 12, 2265 (1975).
Yamanouchi, C., Mizuguchi, K. & Sasaki, W. Electric conduction in phosphorus doped silicon at low temperatures. J. Phys. Soc. Jpn. 22, 859–864 (1967).
Störmer, H. L., Dingle, R., Gossard, A. C., Wiegmann, W. & Sturge, M. D. Twodimensional electron gas at a semiconductorsemiconductor interface. Solid State Commun. 29, 705–709 (1979).
Ambacher, O. et al. Twodimensional electron gases induced by spontaneous and piezoelectric polarization charges in Nand Gaface AlGaN/GaN heterostructures. J. Appl. Phys. 85, 3222–3233 (1999).
Yalamarthy, A. S. et al. Significant phonon drag enables high power factor in the AlGaN/GaN twodimensional electron gas. Nano Lett. 19, 3770–3776 (2019).
Inyushkin, A. V., Taldenkov, A. N., Gibin, A. M., Gusev, A. V. & Pohl, H.J. On the isotope effect in thermal conductivity of silicon. Phys. Status Solidi 1, 2995–2998 (2004).
Liao, B. et al. Significant reduction of lattice thermal conductivity by the electronphonon interaction in silicon with high carrier concentrations: a firstprinciples study. Phys. Rev. Lett. 114, 115901 (2015).
Han, Z., Yang, X., Li, W., Feng, T. & Ruan, X. FourPhonon: an extension module to ShengBTE for computing fourphonon scattering rates and thermal conductivity. Comput. Phys. Commun. 270, 108179 (2022).
Perdew, J. P. & Zunger, A. Selfinteraction correction to densityfunctional approximations for manyelectron systems. Phys. Rev. B 23, 5048 (1981).
Fanfarillo, A. et al. OpenCoarrays: opensource transport layers supporting coarray Fortran compilers. In Proc. 8th International Conference on Partitioned Global Address Space Programming Models. 1–11 (ACM, 2014).
Acknowledgements
This project was funded by the EUH2020 through H2020NMBPTOIND project GA n. 814487 (INTERSECT). ICN2 is supported by the Severo Ochoa program from Spanish MINECO (Grant No. SEV20170706) and the CERCA Program of Generalitat de Catalunya. Work at Boston College (contributions to code testing and ab initio thermoelectric transport calculations for silicon) was supported by the US Department of Energy (DOE), Office of Science, Basic Energy Sciences under award # DESC0021071. NHP acknowledges helpful discussions with Vladimir Dikan, José María Escartín, Xavier Cartoixà, and Riccardo Rurali. We thankfully acknowledge the computer resources at MareNostrum and La Palma and the technical support provided by Barcelona Supercomputing Center (FI202110016) and the Center for Astrophysics in La Palma (QS202110022), respectively. We also acknowledge computational support from the Boston College Linux clusters and those at ICN2 provided by Grant PGC2018096955BC43 funded by MCIN/AEI/10.13039/501100011033 and “ERDF A way of making Europe”.
Author information
Authors and Affiliations
Contributions
NHP is the developer and maintainer of the elphbolt code. NHP performed some of the ab initio calculations and wrote the first draft of the manuscript in consultation with and under the supervision of MP and PO. CL performed some of the ab initio calculations under the supervision of DB. All authors took part in the preparation of the manuscript.
Corresponding authors
Ethics declarations
Competing interests
The authors declare no competing interests.
Additional information
Publisher’s note Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Protik, N.H., Li, C., Pruneda, M. et al. The elphbolt ab initio solver for the coupled electronphonon Boltzmann transport equations. npj Comput Mater 8, 28 (2022). https://doi.org/10.1038/s41524022007100
Received:
Accepted:
Published:
DOI: https://doi.org/10.1038/s41524022007100
This article is cited by

Phonon transport manipulation in TiSe2 via reversible charge density wave melting
npj 2D Materials and Applications (2024)

Electron–phonon physics from first principles using the EPW code
npj Computational Materials (2023)

Semiclassical electron and phonon transport from first principles: application to layered thermoelectrics
Journal of Computational Electronics (2023)