Tutorial:Wires and slabs

From OctopusWiki
Jump to navigation Jump to search

Hexagonal boron nitride (h-BN) is an insulator widely studied which has a similar structure to graphene. Here we will describe how to get the band structure of an h-BN monolayer.

Ground state calculation

A layer of h-BN is periodic in the x-y directions, but not in the z. Thus we will set PeriodicDimensions = 2 . Here we set the bond length to 1.445*angstrom. The box size in the z direction is 2*L with 'L' large enough to describe a monolayer in the vacuum. One should always converge the box length value. Here is the inp file for the GS calculation:

CalculationMode = gs

FromScratch = yes

ExperimentalFeatures = yes

PeriodicDimensions = 2

Spacing = 0.20*angstrom

BoxShape = parallelepiped

BNlength = 1.445*angstrom
a = sqrt(3)*BNlength

 a | a | L

 1    | 0         | 0.
 -1/2 | sqrt(3)/2 | 0.
 0.   | 0.        | 1.
 'B' | 0.0 | 0.0  | 0.00
 'N' | 1/3 | 2/3  | 0.00



  12   | 12   | 1

ExtraStates = 2

UnitsOutput = ev_angstrom

Band Structure

Convergence of the band gap with respect to the spacing for a h-BN monolayer.

After this GS calculation we will perform an unocc run. This non-self consistent calculation which needs the density from the previous GS calculation.

CalculationMode = unocc

ExtraStates  = 5

Here the number of ExtraStates is the number of unocupied bands in the final band structure.

In order to calculate the band structure along a certain path along the BZ, we will use the variable KPointsPath . Instead of using the KPointsGrid block of the GS calculation, we use during this unocc calculation:

 12  |  7  | 12                 # Number of k point to sample each path
 0   |  0  | 0                  # Reduced coordinate of the 'Gamma' k point
 1/3 | 1/3 | 0                  # Reduced coordinate of the 'K' k point
 1/2 |  0  | 0                  # Reduced coordinate of the 'M' k point
 0   |  0  | 0                  # Reduced coordinate of the 'Gamma' k point

The first row describes how many k points will be used to sample each segment. The next rows are the coordinate of k points from which each segment start and stop. In this particular example, we chose the path: Gamma-K, K-M, M-Gamma using 12-7-12 k points. The output band structur eis written in static/ bandstructure. In Figure 1 is plotted the output band structure where blue lines represent the occupied states and the reds one the unoccupied ones.

This method variable have also this advantages:

Info: The code will run in band structure mode.
     No restart information will be printed.

By using KPointsPath, the wave function obtained during the previous GS calculation (and stored in the restart/ directory) will not be affected by this calculation.

One should also make sure that the calculation is converged with respect to the spacing. Figure 2 shows the band gap for several spacing values. We find that a spacing of 0.14 Angstrom is needed in order to converge the band gap up to 0.01 eV.