bulk_dispersion{ }¶
- Calling sequence
classical{ bulk_dispersion{ } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
The global{ magnetic_field{ } } is must not be specified in the input file.
- Functionality
This group allows calculating bulk band structures of the materials at specific positions in the simulation domain within 1-band approximations or \(\mathbf{k} \cdot \mathbf{p}\) models. The computation is performed just after initialization of the structure. Related outputs are located in the root output directory of the simulation.
- Example
classical{ bulk_dispersion{ Gamma{} KP8{} KP30{} path{ name = "name_1" ... } path{ name = "name_2" ... } full{ name = "name_3" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
Nested keywords
Gamma{ }¶
- Calling sequence
classical{ bulk_dispersion{ Gamma{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
- Functionality
When this group is defined, the bulk electronic band structure is computed within 1-band parabolic model using effective mass tensor for the conduction band at \(\Gamma\).
- Example
classical{ bulk_dispersion{ Gamma{} path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} }
HH{ }¶
- Calling sequence
classical{ bulk_dispersion{ HH{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
- Functionality
When this group is defined, the bulk electronic band structure is computed within 1-band parabolic model using effective mass tensor for the heavy-hole valence band.
- Example
classical{ bulk_dispersion{ HH{} path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} }
LH{ }¶
- Calling sequence
classical{ bulk_dispersion{ LH{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
- Functionality
When this group is defined, the bulk electronic band structure is computed within 1-band parabolic model using effective mass tensor for the light-hole valence band.
- Example
classical{ bulk_dispersion{ LH{} path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} }
SO{ }¶
- Calling sequence
classical{ bulk_dispersion{ SO{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
- Functionality
When this group is defined, the bulk electronic band structure is computed within 1-band parabolic model using effective mass tensor for the split-off valence band.
- Example
classical{ bulk_dispersion{ SO{} path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} }
KP6{ }¶
- Calling sequence
classical{ bulk_dispersion{ KP6{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
- Functionality
When this group is defined, 6-band \(\mathbf{k} \cdot \mathbf{p}\) model is applied to compute the bulk electronic band structure.
- Example
classical{ bulk_dispersion{ KP6{} path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} }
KP6{ use_Luttinger_parameters }¶
- Calling sequence
classical{ bulk_dispersion{ KP6{ use_Luttinger_parameters } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Dependencies
KP6{ use_Luttinger_parameters } and KP6{ approximate_kappa } are not allowed if global{ crystal_wz{ } } is already present.
- Functionality
By default the solver uses the DKK (Dresselhaus-Kip-Kittel) parameters (L, M, N). If enabled then it uses Luttinger parameters (\(\gamma_1\), \(\gamma_2\), \(\gamma_3\)) instead.
- Example
classical{ bulk_dispersion{ KP6{ use_Luttinger_parameters = yes } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP6{ approximate_kappa }¶
- Calling sequence
classical{ bulk_dispersion{ KP6{ approximate_kappa } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Dependencies
KP6{ use_Luttinger_parameters } and KP6{ approximate_kappa } are not allowed if global{ crystal_wz{ } } is already present.
- Functionality
By default the \(\kappa\) for zinc blende crystal structure is taken from the database or input file. If this is enabled then the solver is forced to approximate kappa through others 6-band \(\mathbf{k} \cdot \mathbf{p}\) parameters, even though kappa is given in database or input file.
- Example
classical{ bulk_dispersion{ KP6{ approximate_kappa = yes } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP8{ }¶
- Calling sequence
classical{ bulk_dispersion{ KP8{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
- Functionality
When this group is defined, 8-band \(\mathbf{k} \cdot \mathbf{p}\) model is applied to compute the bulk electronic band structure.
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} }
KP8{ use_Luttinger_parameters }¶
- Calling sequence
classical{ bulk_dispersion{ KP8{ use_Luttinger_parameters } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Dependencies
KP6{ use_Luttinger_parameters } and KP6{ approximate_kappa } is not allowed if global{ crystal_wz{ } } is already present.
- Functionality
By default the solver uses the DKK (Dresselhaus-Kip-Kittel) parameters (L, M, N). If enabled then it uses Luttinger parameters (\(\gamma_1\), \(\gamma_2\), \(\gamma_3\)) instead.
- Example
classical{ bulk_dispersion{ KP8{ use_Luttinger_parameters = yes } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP8{ from_6band_parameters }¶
- Calling sequence
classical{ bulk_dispersion{ KP8{ from_6band_parameters } } }
- Properties
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Functionality
By default the 8-band \(\mathbf{k} \cdot \mathbf{p}\) parameters are taken from database or input file. If enabled then it evaluates the 8-band \(\mathbf{k} \cdot \mathbf{p}\) parameters from 6-band \(\mathbf{k} \cdot \mathbf{p}\) parameters, Kane parameter \(E_P\) and temperature dependent band gap \(E_g\).
- Example
classical{ bulk_dispersion{ KP8{ from_6band_parameters = yes } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP8{ evaluate_S }¶
- Calling sequence
classical{ bulk_dispersion{ KP8{ evaluate_S } } }
- Properties
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Functionality
By default \(S\) (\(S_1\), \(S_2\) for wurtzite) \(\mathbf{k} \cdot \mathbf{p}\) parameter(s) is (are) taken from database or input file. If enabled it evaluates \(S\) (\(S_1\), \(S_2\) for wurtzite) \(\mathbf{k} \cdot \mathbf{p}\) parameter(s) from effective mass \(m_e\) (\(m_{e,par}\), \(m_{e,perp}\) for wurtzite), Kane parameter(s), spin-orbit coupling(s) and temperature dependent band gap.
- Example
classical{ bulk_dispersion{ KP8{ evaluate_S = yes } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP8{ rescale_S_to }¶
- Calling sequence
classical{ bulk_dispersion{ KP8{ rescale_S_to } } }
- Properties for Zincblende:
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{-}\)
- Properties for Wurtzite:
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{vector\;of\;2\;real\;numbers}\)
values: no constraints
default:
[0.0, 0.0]
unit: \(\mathrm{-}\)
- Functionality
Sets \(S\) for zinc blende crystal structure to specified value and rescale \(E_P\), \(L'\), \(N^{+}\) in order to preserve electron’s effective mass.
Sets \(S_1\), \(S_2\) for wurtzite crystal structure to specified values respectively and rescale \(E_{P1}\), \(E_{P2}\), \(L_{1}'\), \(L_{2}'\), \(N^+_1\), \(N^+_2\) in order to preserve electron’s effective masses.
- Examples
classical{ bulk_dispersion{ KP8{ rescale_S_to = 1.0 } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
classical{ bulk_dispersion{ KP8{ rescale_S_to = [ 1.0, 1.0 ] } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_wz{...} }
KP8{ approximate_kappa }¶
- Calling sequence
classical{ bulk_dispersion{ KP8{ approximate_kappa } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Dependencies
KP6{ use_Luttinger_parameters } and KP6{ approximate_kappa } is not allowed if global{ crystal_wz{ } } is already present.
- Functionality
By default, the \(\kappa\) for zincblende crystal structure is taken from the database or input file. If this is enabled then the solver is forced to approximate kappa through others 8-band \(\mathbf{k} \cdot \mathbf{p}\) parameters, even though kappa is given in database or input file.
- Example
classical{ bulk_dispersion{ KP8{ approximate_kappa = yes } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP14{ }¶
- Calling sequence
classical{ bulk_dispersion{ KP14{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
- Functionality
When this group is defined, 30-band \(\mathbf{k} \cdot \mathbf{p}\) model is applied to compute the bulk electronic band structure.
- Example
classical{ bulk_dispersion{ KP14{} path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP14{ use_Luttinger_parameters }¶
- Calling sequence
classical{ bulk_dispersion{ KP14{ use_Luttinger_parameters } } }
- Properties
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Functionality
By default the solver uses the DKK (Dresselhaus-Kip-Kittel) parameters (L, M, N). If enabled then it uses Luttinger parameters (\(\gamma_1\), \(\gamma_2\), \(\gamma_3\)) instead.
- Example
classical{ bulk_dispersion{ KP14{ use_Luttinger_parameters = yes } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP14{ from_6band_parameters }¶
- Calling sequence
classical{ bulk_dispersion{ KP14{ from_6band_parameters } } }
- Properties
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Functionality
By default the 14-band \(\mathbf{k} \cdot \mathbf{p}\) parameters are taken from database or input file. If enabled then it evaluates the 14-band \(\mathbf{k} \cdot \mathbf{p}\) parameters from 6-band \(\mathbf{k} \cdot \mathbf{p}\) parameters, Kane parameter \(E_P\) and temperature dependent band gap \(E_g\).
- Example
classical{ bulk_dispersion{ KP14{ from_6band_parameters = yes } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP14{ evaluate_S }¶
- Calling sequence
classical{ bulk_dispersion{ KP14{ evaluate_S } } }
- Properties
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Functionality
By default \(S\) \(\mathbf{k} \cdot \mathbf{p}\) parameter(s) is (are) taken from database or input file. If enabled it evaluates \(S\) \(\mathbf{k} \cdot \mathbf{p}\) parameter(s) from effective mass \(m_e\) (\(m_{e,par}\), \(m_{e,perp}\) for wurtzite), Kane parameter(s), spin-orbit coupling(s) and temperature dependent band gap.
- Example
classical{ bulk_dispersion{ KP14{ evaluate_S = yes } path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
KP30{ }¶
- Calling sequence
classical{ bulk_dispersion{ KP30{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
- Functionality
When this group is defined, 30-band \(\mathbf{k} \cdot \mathbf{p}\) model [RideauPRB2006] is applied to compute the bulk electronic band structure.
- Example
classical{ bulk_dispersion{ KP30{} path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... crystal_zb{...} }
full{ }¶
- Calling sequence
classical{ bulk_dispersion{ full{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{no\;constraints}\)
- Dependencies
- Functionality
Calculates bulk \(\mathbf{k} \cdot \mathbf{p}\) dispersion in 3D k-space. Multiple instances are allowed.
- Example
classical{ bulk_dispersion{ KP8{} full{ name = "name_1" ... } full{ name = "name_2" ... } output_bulk_dispersions{} } Gamma{} HH{} }
full{ name }¶
- Calling sequence
classical{ bulk_dispersion{ full{ name } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{character\;string}\)
- Functionality
Name of the dispersion which also defines the names of the output files.
- Example
classical{ bulk_dispersion{ KP8{} full{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} }
full{ position{ } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ position{ } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
items: \(\mathrm{exactly\;1}\)
- Functionality
Specifies the point (x,y,z) in the simulation domain, where the dispersion has to be calculated.
- Example
classical{ bulk_dispersion{ KP8{} full{ name = "name" position{...} ... } output_bulk_dispersions{} } Gamma{} HH{} }
full{ position{ x } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ position{ x } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{nm}\)
- Functionality
\(x\)-coordinate of interest
- Example
classical{ bulk_dispersion{ KP8{} full{ name = "name" position{ x = 10.5 } ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate1D{} }
full{ position{ y } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ position{ y } } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{nm}\)
- Dependencies
full{ position{ y } } is required if any global{ simulate1D{ } } or global{ simulate2D{ } } is specified in the input file.
full{ position{ y } } is not allowed if global{ simulate1D{ } } is specified in the input file.
- Functionality
\(y\)-coordinate of interest
- Example
classical{ bulk_dispersion{ KP8{} full{ name = "name" position{ x = 10.5 y = 35.0 } ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate2D{} }
full{ position{ z } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ position{ z } } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{nm}\)
- using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
full{ position{ z } } is required if global{ simulate1D{ } } is specified in the input file.
full{ position{ z } } is not allowed if any global{ simulate1D{ } } or global{ simulate2D{ } } is specified in the input file.
- Functionality
\(z\)-coordinate of interest
- Example
classical{ bulk_dispersion{ KP8{} full{ name = "name" position{ x = 10.5 y = 35.0 z = 12.3 } ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate3D{} }
full{ shift_holes_to_zero }¶
- Calling sequence
classical{ bulk_dispersion{ full{ shift_holes_to_zero } } }
- Properties
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Functionality
If enabled shifts the whole dispersion, so that the energy for the Gamma point for the highest hole band is equal to 0.0
[eV]
.- Example
classical{ bulk_dispersion{ KP8{} full{ shift_holes_to_zero = yes name = "name" position{...} ... } output_bulk_dispersions{} } Gamma{} HH{} }
full{ kxgrid{ } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ kxgrid{ } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
items: \(\mathrm{no\;constraints}\)
- Functionality
Specifies a grid along \(k_x\) for a 1D/2D/3D plot of the energy dispersion \(E(k_x, k_y, k_z)\).
- Example
classical{ bulk_dispersion{ KP8{} full{ shift_holes_to_zero = yes name = "name" position{...} kxgrid{...} } output_bulk_dispersions{} } Gamma{} HH{} }
full{ kxgrid{ line{ } } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ kxgrid{ line{ } } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
items: \(\mathrm{minimum\;2}\)
- Functionality
Setting options defining the grid in k-space.
- Example
classical{ bulk_dispersion{ KP8{} full{ shift_holes_to_zero = yes name = "name" position{...} kxgrid{ line{...} line{...} line{...} } } output_bulk_dispersions{} } Gamma{} HH{} }
full{ kxgrid{ line{ pos } } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ kxgrid{ line{ pos } } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
unit: \(\mathrm{nm^{-1}}\)
- Functionality
Position of defined k-grid spacing along kx direction.
- Example
classical{ bulk_dispersion{ KP8{} full{ shift_holes_to_zero = yes name = "name" position{...} kxgrid{ line{ pos =-1.0 spacing = 0.2 } line{ pos = 0.0 spacing = 0.2 } line{ pos = 1.0 spacing = 0.2 } } } output_bulk_dispersions{} } Gamma{} HH{} }
full{ kxgrid{ line{ spacing } } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ kxgrid{ line{ spacing } } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{real\;number}\)
values:
[1e-6, ...)
unit: \(\mathrm{nm^{-1}}\)
- Functionality
k-grid spacing at defined positions
- Example
classical{ bulk_dispersion{ KP8{} full{ shift_holes_to_zero = yes name = "name" position{...} kxgrid{ line{ pos =-1.0 spacing = 0.2 } line{ pos = 0.0 spacing = 0.2 } line{ pos = 1.0 spacing = 0.2 } } } output_bulk_dispersions{} } Gamma{} HH{} }
full{ kygrid{ } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ kygrid{ } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
items: \(\mathrm{no\;constraints}\)
- Functionality
Specifies a grid along \(k_y\) for a 1D/2D/3D plot of the energy dispersion \(E(k_x, k_y, k_z)\). The keywords allowed within this group are analogous to full{ kxgrid{ } }.
- Example
classical{ bulk_dispersion{ KP8{} full{ shift_holes_to_zero = yes name = "name" position{...} kxgrid{...} kygrid{ line{ pos =-1.0 spacing = 0.2 } line{ pos = 0.0 spacing = 0.2 } line{ pos = 1.0 spacing = 0.2 } } } output_bulk_dispersions{} } Gamma{} HH{} }
full{ kzgrid{ } }¶
- Calling sequence
classical{ bulk_dispersion{ full{ kzgrid{ } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
items: \(\mathrm{no\;constraints}\)
- Functionality
Specifies a grid along \(k_z\) for a 1D/2D/3D plot of the energy dispersion \(E(k_x, k_y, k_z)\). The keywords allowed within this group are analogous to full{ kxgrid{ } }.
- Example
classical{ bulk_dispersion{ KP8{} full{ shift_holes_to_zero = yes name = "name" position{...} kxgrid{...} kygrid{...} kzgrid{ line{ pos =-1.0 spacing = 0.2 } line{ pos = 0.0 spacing = 0.2 } line{ pos = 1.0 spacing = 0.2 } } } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate3D{} }
path{ }¶
- Calling sequence
classical{ bulk_dispersion{ path{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{no\;constraints}\)
- Dependencies
- Functionality
Calculate bulk \(\mathbf{k} \cdot \mathbf{p}\) dispersion along custom path in k-space. Multiple instances are allowed.
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name_1" spacing = 0.2 ... } path{ name = "name_2" num_points = 10 ... } output_bulk_dispersions{} } Gamma{} HH{} }
path{ name }¶
- Calling sequence
classical{ bulk_dispersion{ path{ name } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{character\;string}\)
- Dependencies
name of the dispersions which also defines the names of the output files.
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} }
path{ position{ } }¶
- Calling sequence
classical{ bulk_dispersion{ path{ position{ } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
items: \(\mathrm{exactly\;1}\)
- Functionality
Specifies the point (x,y,z) in the simulation domain, where the dispersion has to be calculated.
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" position{ } ... } output_bulk_dispersions{} } Gamma{} HH{} }
path{ position{ x } }¶
- Calling sequence
classical{ bulk_dispersion{ path{ position{ x } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{nm}\)
- Functionality
\(x\)-coordinate of interest
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" position{ x = 10.5 } ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate1D{} }
path{ position{ y } }¶
- Calling sequence
classical{ bulk_dispersion{ path{ position{ y } } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{nm}\)
- Dependencies
path{ position{ y } } is required if any global{ simulate1D{ } } or global{ simulate2D{ } } is specified in the input file.
path{ position{ y } } is not allowed if global{ simulate1D{ } } is specified in the input file.
- Functionality
\(y\)-coordinate of interest
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" position{ x = 10.5 y = 35.0 } ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate2D{} }
path{ position{ z } }¶
- Calling sequence
classical{ bulk_dispersion{ path{ position{ z } } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{nm}\)
- using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
path{ position{ z } } is required if global{ simulate1D{ } } is specified in the input file.
path{ position{ z } } is not allowed if any global{ simulate1D{ } } or global{ simulate2D{ } } is specified in the input file.
- Functionality
\(z\)-coordinate of interest
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" position{ x = 10.5 y = 35.0 z = 12.3 } ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate3D{} }
path{ shift_holes_to_zero }¶
- Calling sequence
classical{ bulk_dispersion{ path{ shift_holes_to_zero } } }
- Properties
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Functionality
If enabled shifts the whole dispersion, so that the energy for the Gamma point for the highest hole band is equal to 0.0
[eV]
.- Example
classical{ bulk_dispersion{ KP8{} path{ shift_holes_to_zero = yes name = "name" position{...} ... } output_bulk_dispersions{} } Gamma{} HH{} }
path{ point{ } }¶
- Calling sequence
classical{ bulk_dispersion{ path{ point{ } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
items: \(\mathrm{minimum\;2}\)
- Functionality
Specifies points in the path through k-space. At least two k points have to be defined. Line between two such points is called segment.
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" position{...} point{...} point{...} point{...} ... } output_bulk_dispersions{} } Gamma{} HH{} }
path{ point{ k } }¶
- Calling sequence
classical{ bulk_dispersion{ path{ point{ k } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{vector\;of\;3\;real\;numbers}\)
values: no constraints
default:
[0.0, 0.0, 0.0]
unit: \(\mathrm{nm^{-1}}\)
- Functionality
k-point represented by vector \([k_x, k_y, k_z]\).
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" position{...} point{ k = [-0.1,-0.1,-0.1 ] } point{ k = [ 0.0, 0.0, 0.0 ] } point{ k = [ 0.1, 0.0, 0.0 ] } ... } output_bulk_dispersions{} } Gamma{} HH{} }
path{ spacing }¶
- Calling sequence
classical{ bulk_dispersion{ path{ spacing } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{real\;number}\)
values:
[1e-6, ...)
unit: \(\mathrm{nm^{-1}}\)
- Dependencies
Exactly one of path{ spacing } or path{ num_points } required.
- Functionality
It specifies approximate spacing for intermediate points in the path segments.
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" position{...} point{ k = [-0.1,-0.1,-0.1 ] } point{ k = [ 0.0, 0.0, 0.0 ] } point{ k = [ 0.1, 0.0, 0.0 ] } spacing = 0.2 } output_bulk_dispersions{} } Gamma{} HH{} }
path{ num_points }¶
- Calling sequence
classical{ bulk_dispersion{ path{ num_points } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{integer}\)
values:
{2, 3, 4, 5, ...}
unit: \(\mathrm{nm^{-1}}\)
- Dependencies
Exactly one of path{ spacing } or path{ num_points } required.
- Functionality
It specifies number of points (intermediate + two corner-points) for each single path segment.
- Example
classical{ bulk_dispersion{ KP8{} path{ name = "name" position{...} point{ k = [-0.1,-0.1,-0.1 ] } point{ k = [ 0.0, 0.0, 0.0 ] } point{ k = [ 0.1, 0.0, 0.0 ] } num_points = 20 } output_bulk_dispersions{} } Gamma{} HH{} }
lines{ }¶
- Calling sequence
classical{ bulk_dispersion{ lines{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{no\;constraints}\)
- Dependencies
- Functionality
Calculates dispersions along some predefined paths of high symmetry in k-space, e.g. [100], [110], [111] and their equivalents (13 in total).
- Example
classical{ bulk_dispersion{ KP8{} lines{ name = "name_1" ... } lines{ name = "name_2" ... } output_bulk_dispersions{} } Gamma{} HH{} }
lines{ name }¶
- Calling sequence
classical{ bulk_dispersion{ lines{ name } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{character\;string}\)
- Dependencies
Nname of the dispersions which also defines the names of the output files.
- Example
classical{ bulk_dispersion{ KP8{} lines{ name = "name" ... } output_bulk_dispersions{} } Gamma{} HH{} }
lines{ position{ } }¶
- Calling sequence
classical{ bulk_dispersion{ lines{ position{ } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
items: \(\mathrm{exactly\;1}\)
- Functionality
Specifies the point (x,y,z) in the simulation domain, where the dispersion has to be calculated.
- Example
classical{ bulk_dispersion{ KP8{} lines{ name = "name" position{ } ... } output_bulk_dispersions{} } Gamma{} HH{} }
lines{ position{ x } }¶
- Calling sequence
classical{ bulk_dispersion{ lines{ position{ x } } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{nm}\)
- Functionality
\(x\)-coordinate of interest
- Example
classical{ bulk_dispersion{ KP8{} lines{ name = "name" position{ x = 10.5 } ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate1D{} }
lines{ position{ y } }¶
- Calling sequence
classical{ bulk_dispersion{ lines{ position{ y } } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{nm}\)
- Dependencies
lines{ position{ y } } is required if any global{ simulate1D{ } } or global{ simulate2D{ } } is specified in the input file.
lines{ position{ y } } is not allowed if global{ simulate1D{ } } is specified in the input file.
- Functionality
\(y\)-coordinate of interest
- Example
classical{ bulk_dispersion{ KP8{} lines{ name = "name" position{ x = 10.5 y = 35.0 } ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate2D{} }
lines{ position{ z } }¶
- Calling sequence
classical{ bulk_dispersion{ lines{ position{ z } } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: \(\mathrm{real\;number}\)
values: no constraints
default:
0.0
unit: \(\mathrm{nm}\)
- using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
lines{ position{ z } } is required if global{ simulate1D{ } } is specified in the input file.
lines{ position{ z } } is not allowed if any global{ simulate1D{ } } or global{ simulate2D{ } } is specified in the input file.
- Functionality
\(z\)-coordinate of interest
- Example
classical{ bulk_dispersion{ KP8{} lines{ name = "name" position{ x = 10.5 y = 35.0 z = 12.3 } ... } output_bulk_dispersions{} } Gamma{} HH{} } global{ ... simulate3D{} }
lines{ shift_holes_to_zero }¶
- Calling sequence
classical{ bulk_dispersion{ lines{ shift_holes_to_zero } } }
- Properties
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
type: \(\mathrm{choice}\)
choices:
yes
;no
default:
no
- Functionality
If enabled shifts the whole dispersion, so that the energy for the Gamma point for the highest hole band is equal to 0.0
[eV]
.- Example
classical{ bulk_dispersion{ KP8{} lines{ shift_holes_to_zero = yes name = "name" position{...} ... } output_bulk_dispersions{} } Gamma{} HH{} }
lines{ k_max }¶
- Calling sequence
classical{ bulk_dispersion{ lines{ k_max } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{real\;number}\)
values:
[1e-6, ...)
unit: \(\mathrm{nm^{-1}}\)
- Functionality
Specifies a maximum absolute value (radius) for the k-vector in \(nm^{-1}\)
- Example
classical{ bulk_dispersion{ KP8{} lines{ name = "name" position{...} k_max = 1.0 } output_bulk_dispersions{} } Gamma{} HH{} }
lines{ spacing }¶
- Calling sequence
classical{ bulk_dispersion{ lines{ spacing } } }
- Properties
using: \(\mathrm{\textcolor{WildStrawberry}{required\;within\;the\;scope}}\)
type: \(\mathrm{real\;number}\)
values:
[1e-6, ...)
unit: \(\mathrm{nm^{-1}}\)
- Functionality
Specifies approximate spacing for intermediate points in the path segments in \(nm^{-1}\).
- Example
classical{ bulk_dispersion{ KP8{} lines{ name = "name" position{...} k_max = 1.0 spacing = 0.2 } output_bulk_dispersions{} } Gamma{} HH{} }
output_bulk_dispersions{ }¶
- Calling sequence
classical{ bulk_dispersion{ output_bulk_dispersions{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
At least one of output_bulk_dispersions{ }, output_masses{ }, or output_inverse_masses{ } is required.
- Functionality
Outputs all defined bulk \(\mathbf{k} \cdot \mathbf{p}\) dispersions.
- Example
classical{ bulk_dispersion{ output_bulk_dispersions{} KP8{} path{...} } Gamma{} HH{} }
output_masses{ }¶
- Calling sequence
classical{ bulk_dispersion{ output_masses{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
At least one of output_bulk_dispersions{ }, output_masses{ }, or output_inverse_masses{ } is required.
- Functionality
Outputs effective masses calculated from the dispersions.
- Example
classical{ bulk_dispersion{ output_masses{} KP8{} path{...} } Gamma{} HH{} }
output_inverse_masses{ }¶
- Calling sequence
classical{ bulk_dispersion{ output_inverse_masses{ } } }
- Properties
using: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: \(\mathrm{maximum\;1}\)
- Dependencies
At least one of output_bulk_dispersions{ }, output_masses{ }, or output_inverse_masses{ } is required.
- Functionality
Outputs inverse of effective masses calculated from the dispersions.
- Example
classical{ bulk_dispersion{ output_inverse_masses{} KP8{} path{...} } Gamma{} HH{} }
output_k_vectors{ }¶
- Calling sequence
classical{ bulk_dispersion{ output_k_vectors{ } } }
- Properties
using: \(\mathrm{\textcolor{ForestGreen}{optional\;within\;the\;scope}}\)
items: \(\mathrm{maximum\;1}\)
- Functionality
Outputs k-vectors for which the dispersions are computed.
- Example
classical{ bulk_dispersion{ output_k_vectors{} KP8{} path{...} } Gamma{} HH{} }