Si supercell using CASTEP#
Below is a step-by-step guide for unfolding a 2x1x1 pristine supercell sampled with a simple \(\Gamma - X\) path using CASTEP.
Generate the project file (
easyunfold.json) and k-points for supercell calculation#
The files needed for this example are provided in the examples/Si-castep folder. This guide assumes the current working directory is located at the root of that folder.
First, generate the supercell k-points:
easyunfold generate Si_prim.cell Si_211_band/Si_211_band.cell band.cell --code castep
band.cell contains the band structure path and labels of the high symmetry k-points for the
primitive cell. The sumo package can be used to generate it with ease.
easyunfold generate command above also generates an
easyunfold.json file in the current directory,
containing information about the unfolding. The name of this file can be modified with the
Information stored in this file can be inspected with
easyunfold unfold status command:
$ easyunfold unfold status Loaded data from easyunfold.json Supercell cell information: Space group number: 227 International symbol: Fd-3m Point group: m-3m Primitive cell information: Space group number: 227 International symbol: Fd-3m Point group: m-3m No. of k points in the primitive cell : 21 No. of supercell k points : 51 No. of primitive cell symmetry operations : 48 No. of supercell symmetry operations : 24 Path in the primitive cell: \Gamma : 1 X : 21
In this example, the path goes from \(\Gamma\) to \(X\).
Copy the generated
cell file to the supercell calculation folder:
cp easyunfold_sc_kpoints.cell Si_211_unfold/
Perform the supercell band structure calculation#
Band structure calculations are performed in CASTEP by having the following keys in the
task : spectral spectral_task: bandstructure write_orbitals : true
The last key is necessary for band unfolding, as it enables the wave function of the supercell band
structure calculation to be written to the disk in the
CASTEP is installed, the following command will launch the calculation:
cd Si_211_unfold mpirun -np 4 castep.mpi easyunfold_sc_kpoints
CASTEP will first perform a standard self-consistent field loop to find the ground state electron
density (and hence the potential). Following this, (in the same run)
CASTEP switches to spectral
calculation and solves for the eigenvalues at each specified k-point with the electronic potential
(density) kept fixed.
Perform band unfolding#
Unfold the supercell wave function (
.orbitals file) and calculate the spectral weights:
cd ../ easyunfold unfold calculate Si_211_unfold/easyunfold_sc_kpoints.orbitals
Plot the unfolded band structure:
easyunfold unfold plot
See the NaBiS2 example for tips on customising and prettifying the unfolded band structure plot.
Band structures of the primitive cell and supercell#
Below is the band structure of the primitive cell, along the same k-point path:
which is well-matched by the unfolded band structure. This is not surprising, since a pristine supercell with no symmetry-breaking is used here.
Below is the band structure of the supercell that is obtained when blindly following the same k-point path (i.e. using the same k-point set) as the primitive cell:
which, as expected, is the same as the primitive cell if it is folded back along the midpoint between \(\Gamma\) and \(X\), corresponding to the 2x expansion of the primitive cell along the \(x\) direction in generating the 2x1x1 supercell.
There are many customisation options available for the plotting functions in
easyunfold plot -h or
easyunfold unfold plot-projections -h for more details!