Difference between revisions of "Tutorial:Wires and slabs"

From OctopusWiki
Jump to navigation Jump to search
Line 3: Line 3:
 
= Ground state calculation =
 
= Ground state calculation =
 
A layer of h-BN is periodic in the x-y directions, but not in the z. Thus we will set {{variable|PeriodicDimensions|System}} = 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:  
 
A layer of h-BN is periodic in the x-y directions, but not in the z. Thus we will set {{variable|PeriodicDimensions|System}} = 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:  
 
 
 
  
 
  {{variable|CalculationMode|Calculation_Modes}} = gs
 
  {{variable|CalculationMode|Calculation_Modes}} = gs
Line 18: Line 15:
 
   
 
   
 
  {{variable|BoxShape|Mesh}} = parallelepiped
 
  {{variable|BoxShape|Mesh}} = parallelepiped
 
 
   
 
   
 
  BNlength = 1.445*angstrom
 
  BNlength = 1.445*angstrom
Line 27: Line 23:
 
   a | a | L
 
   a | a | L
 
  %
 
  %
 
 
   
 
   
 
  %{{variable|LatticeVectors|Mesh}}
 
  %{{variable|LatticeVectors|Mesh}}
Line 39: Line 34:
 
   'N' | 1/3 | 2/3  | 0.00
 
   'N' | 1/3 | 2/3  | 0.00
 
  %  
 
  %  
 
 
   
 
   
 
  {{variable|PseudopotentialSet|System}}=hgh_lda
 
  {{variable|PseudopotentialSet|System}}=hgh_lda
 
   
 
   
 
  {{variable|LCAOStart|SCF}}=lcao_states  
 
  {{variable|LCAOStart|SCF}}=lcao_states  
 
 
   
 
   
 
  %{{variable|KPointsGrid|Mesh}}
 
  %{{variable|KPointsGrid|Mesh}}
Line 59: Line 52:
  
 
[[Image:Tutorial_band_gap_convergence_HBN.jpg|500px|right|Convergence of the band gap with respect to the spacing for an h-BN monolayer.]]
 
[[Image:Tutorial_band_gap_convergence_HBN.jpg|500px|right|Convergence of the band gap with respect to the spacing for an 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.
 
After this GS calculation, we will perform an unocc run. This non-self consistent calculation which needs the density from the previous GS calculation.
 
  
 
  {{variable|CalculationMode|Calculation_Modes}} = unocc
 
  {{variable|CalculationMode|Calculation_Modes}} = unocc
Line 70: Line 60:
 
  {{variable|ExtraStates|States}}  = 10
 
  {{variable|ExtraStates|States}}  = 10
  
Here the number of {{variable|ExtraStates|States}} is the number of unoccupied bands in the final band structure. The highest occupied states are extremely complicated to converge. Therefore the variable {{variable|ExtraStatesToConverge|States}} specifies how many unoccupied states are considered for stopping criterium of the non-self-consistent run.  
+
Here the number of {{variable|ExtraStates|States}} is the number of unoccupied bands in the final band structure. The highest occupied states are extremely complicated to converge. Therefore the variable {{variable|ExtraStatesToConverge|States}} specifies how many unoccupied states are considered for stopping criterion of the non-self-consistent run.  
  
 
In order to calculate the band structure along a certain path along the BZ, we will use the variable {{variable|KPointsPath|Mesh}} . Instead of using the {{variable|KPointsGrid|Mesh}} block of the GS calculation, we use during this unocc calculation:
 
In order to calculate the band structure along a certain path along the BZ, we will use the variable {{variable|KPointsPath|Mesh}} . Instead of using the {{variable|KPointsGrid|Mesh}} block of the GS calculation, we use during this unocc calculation:
 
  
 
  %{{variable|KPointsPath|Mesh}}
 
  %{{variable|KPointsPath|Mesh}}
Line 85: Line 74:
  
 
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 structure is written in static/ bandstructure. In Figure 1 is plotted the output band structure where blue lines represent the occupied states and the red ones the unoccupied ones.  
 
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 structure is written in static/ bandstructure. In Figure 1 is plotted the output band structure where blue lines represent the occupied states and the red ones the unoccupied ones.  
 
  
 
  Info: The code will run in band structure mode.
 
  Info: The code will run in band structure mode.
Line 93: Line 81:
  
 
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.
 
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.
 
  
 
{{tutorial_foot|prev=Tutorial:Periodic systems|next=Tutorial:Geometry optimization}}
 
{{tutorial_foot|prev=Tutorial:Periodic systems|next=Tutorial:Geometry optimization}}

Revision as of 00:28, 22 March 2018

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
L=40

%LatticeParameters
 a | a | L
%

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

PseudopotentialSet=hgh_lda

LCAOStart=lcao_states 

%KPointsGrid
  12   | 12   | 1
%

ExtraStates = 2

UnitsOutput = ev_angstrom

Band Structure

Convergence of the band gap with respect to the spacing for an 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

ExtraStatesToConverge  = 5
ExtraStates  = 10

Here the number of ExtraStates is the number of unoccupied bands in the final band structure. The highest occupied states are extremely complicated to converge. Therefore the variable ExtraStatesToConverge specifies how many unoccupied states are considered for stopping criterion of the non-self-consistent run.

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:

%KPointsPath
 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 structure is written in static/ bandstructure. In Figure 1 is plotted the output band structure where blue lines represent the occupied states and the red ones the unoccupied ones.

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

Moreover, 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.


Previous Tutorial:Periodic systems - Next Tutorial:Geometry optimization

Back to [[Tutorial Series:{{{series}}}|{{{series}}}]]