In this example, we will calculate transport properties of Cu2O using semiclassical Boltzmann transport theory.


  1. You need to be in the prop directory that we used in the section Electronic band structure and density of states for Cu2O (DFT-PBE0/TZVP level of theory)
  2. You should already have calculated and studied the electronic band structure of the material.

Related literature

Boltzmann transport theory (BTT) is accessible in CRYSTAL with the BOLTZTRA keyword. Some related literature: 

  1. CRYSTAL implementation of BTT: Ab initio electronic transport and thermoelectric properties of solids from full and range-separated hybrid functionals (
  2. BoltzTraP implementation of BTT: BoltzTraP. A code for calculating band-structure dependent quantities (
  3. BoltzTraP2 implementation of BTT: BoltzTraP2, a program for interpolating band structures and calculating semi-classical transport coefficients (
  4. Paper with BOLTZTRA and BoltzTraP calculations on Cu2O: Thermoelectric Properties of p-Type Cu2O, CuO, and NiO from Hybrid Density Functional Theory(


We run a BOLTZTRA calculation to get Seebeck coefficients (S) and electrical conductivities (σ) within the Constant Relaxation Time Approximation (RTA). If electronic relaxation time τ is assumed to be direction independent, the Seebeck coefficient is independent of τ. In contrast, electrical conductivity depends on τ. Ab initio calculation of τ requires electron-phonon coupling and is not currently available in CRYSTAL. One can either investigate relative conductivities where τ cancels out or use empirical values for τ.

Start by creating a new copy the wavefunction file Cu2O_Pn-3m_PBE0_TZVP_band.w:

cp Cu2O_Pn-3m_PBE0_TZVP_band.w Cu2O_Pn-3m_PBE0_TZVP_boltz.w

Create the following property calculation input file Cu2O_Pn-3m_PBE0_TZVP_boltz.d3 in the directory:

0 32
32 32 32
1 0
300 300 1
-7 -1 0.01
-7 -1 0.01

Line 1: Request CRYSTAL to calculate the Fock/Kohn-Sham eigenvectors at a number of k-points in the reciprocal space. The lines 0 32 and 32 32 32 result in a much denser k-mesh compared to the original 8×8×8 mesh used in the geometry optimization. BOLTZTRA calculations in general require dense k sampling to produce accurate results. One should always check the convergence of the results by running with several k-meshes. Line 1 0 requests CRYSTAL to calculate the Fermi energy using this k-mesh (1) and tells that no additional printing is required (0).

Line 5: BOLTZTRA input begins

Line 6: TRANGE gives the temperature range for transport properties calculation (initial, final, step, all in K units). Here, the properties are calculated only for one temperature (300 K). For several temperatures, one would write for example 300 600 100, leading in calculations at 300, 400, 500, and 600 K.

Line 7: MURANGE is the chemical potential range for transport properties calculation. From the section Electronic band structure and density of states for Cu2O we know that the top of the valence bands is at –5.1 eV. Let's calculate transport properties from –7.0 eV to –1.0 eV , with 0.01 eV step.

Line 9: TDFRANGE is the energy range of distribution function for transport properties calculation. This can typically can be equal to MURANGE.

Line 11: RELAXTIM is the electronic relaxation time τ, which affects the calculated electrical conductivities. Default is 10 fs, but I recommend using 1 fs for clarity. One can either investigate relative conductivities where τ cancels out or use empirical values for τ.

Submitting the job

Submit the job with

jsub -np 8 -smp -mem 2G crystal Cu2O_Pn-3m_PBE0_TZVP_boltz.d3

It is good to give bit more memory to BOLTZTRA jobs as they can be rather memory-intensive due to the dense k-meshes.

Analyzing the results

The columns in file Cu2O_Pn-3m_PBE0_TZVP_boltz.seebeck are

# Mu(eV) T(K) N(#carriers) S_xx S_xy S_xz S_yx S_yy S_yz S_zx S_zy S_zz

For each chemical potential Mu(eV), the corresponding carrier concentration is given as N(#carriers). It must be positive for valence bands (p-doping) and negative for conduction bands (n-doping). In the band gap, the carrier concentration is zero. Confirm that you can find band gap above 5.1 eV.

The fastest way to analyze the results is with CRYSPLOT → Transport properties. You will need to rename for example Cu2O_Pn-3m_PBE0_TZVP_boltz.seebeck to Cu2O_Pn-3m_PBE0_TZVP_boltz.seebeck.DAT to upload it to CRYSPLOT.

  • No labels