kp_8band{ }
Calling sequence
quantum{ region{ kp_8band{ } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
items: maximum 1
Functionality
Triggers solver of 8-band \(\mathbf{k} \cdot \mathbf{p}\) Schrödinger equation for the Gamma conduction band and the heavy, light and split-off hole valence bands.
Nested keywords
num_electrons
Calling sequence
quantum{ region{ kp_8band{ num_electrons } } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: integer
values: \(z \geq 0\)
default: \(z=0\)
Functionality
number of electron eigenvalues
num_holes
Calling sequence
quantum{ region{ kp_8band{ num_holes } } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: integer
values: \(z \geq 0\)
default: \(z=0\)
Functionality
number of hole eigenvalues
lapack{ }
Calling sequence
quantum{ region{ kp_8band{ lapack{ } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
items: maximum 1
Functionality
Triggers use of LAPACK eigensolver, if not already chosen by default, and organizes its parameters.
Note
This is the default eigensolver when 8-band \(\mathbf{k} \cdot \mathbf{p}\) method is used in 1D and 2D simulations.
lapack{ accuracy }
Calling sequence
quantum{ region{ kp_8band{ lapack{ accuracy } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: \(0.0 \leq r \leq 10^{-6}\)
default: \(r=0.0\)
unit: \(\mathrm{eV}\)
Functionality
Requested absolute accuracy of found eigenvalues to be lower than or equal to the value set here.
The default value 0.0
means that the routine will try to achieve the best possible accuracy.
lapack{ shift_window }
Calling sequence
quantum{ region{ kp_8band{ lapack{ shift_window } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: no constraints
default: \(z=0\)
Functionality
Shifts the window of computed states up (for positive integers) or down (for negative integers) by the specified number.
arpack_inv{ }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
items: maximum 1
Functionality
Triggers use of ARPACK shift invert eigensolver, if not already chosen by default, and organizes its parameters.
Note
This is the default eigensolver when 8-band \(\mathbf{k} \cdot \mathbf{p}\) method is used in 3D simulations.
Hint
It is faster than LAPACK if the size of solved matrix is much larger than the number of states to be computed, e.g., if one is searching for 5-30 states in the quantum region with about 150 grid points. There the matrix size is 1200.
Attention
It is less stable than LAPACK. It may fail in the presence of degenerate eigenvalue, e.g., Pauli or \(\mathbf{k} \cdot \mathbf{p}\) without magnetic field.
arpack_inv{ accuracy }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ accuracy = ... } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: \(0.0 \leq r \leq 10^{-6}\)
default: \(r=1e-7\)
unit: \(\mathrm{-}\)
Functionality
Relative accuracy of the Ritz values which are approximating eigenvalues. See Rayleigh-Ritz method for reference.
arpack_inv{ iterations }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ iterations = ... } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(z \geq 1\)
default: \(z=100000\)
Functionality
Sets the maximum number of iterations allowed in this solver.
arpack_inv{ energy_cutoff_electrons }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ energy_cutoff_electrons } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
default: \(r=0.1\)
unit: \(\mathrm{eV}\)
Functionality
Sets the minimum eigenenergy of the conduction-band states ($E_{n,min} = E_{cb} - Delta E$) to be found by the solver, where $E_{cb}$ is the minimum of the conduction band and $Delta E = r$ is defined by this keyword.
arpack_inv{ energy_cutoff_holes }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ energy_cutoff_holes } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
default: \(r=0.1\)
unit: \(\mathrm{eV}\)
Functionality
Sets the maximum eigenenergy of the valence-band states ($E_{n,max} = VBO + Delta E$) to be found by the solver, where $VBO$ is the top-valence-band energy and $Delta E = r$ is defined by this keyword.
arpack_inv{ linear_solver{ } }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ linear_solver{ } } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
items: maximum 1
Functionality
Provides control over the linear equation solver for the preconditioner of the ARPACK shift invert eigensolver.
Warning
This is the unstable part of the ARPACK with the inverse preconditioning.
arpack_inv{ linear_solver{ iterations } }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ linear_solver{ iterations } } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(z \geq 1\)
default: \(z=10000\)
Functionality
Sets the maximum number of iterations allowed in this solver.
Hint
Occasionally, using even larger values than 10000 may be necessary to avoid diagonalization failure.
arpack_inv{ linear_solver{ abs_accuracy } }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ linear_solver{ abs_accuracy } } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values:
[0.0, ...)
default: \(r=1e-9\)
—
Functionality
Requests the absolute accuracy of the solver.
arpack_inv{ linear_solver{ rel_accuracy } }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ linear_solver{ rel_accuracy } } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: \(0.0 \leq r \leq 10^{-8}\)
default: \(r=1e-9\)
unit: \(\mathrm{-}\)
Functionality
Requests the relative accuracy of the solver.
arpack_inv{ linear_solver{ use_cscg } }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ linear_solver{ use_cscg } } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: choice
values:
yes
orno
default:
no
Functionality
If set to yes
then forces the slower but occasionally more stable CSCG (Composite Step Conjugate Gradient) linear solver to be used rather than the default cg (Conjugate Gradient) linear solver.
May occasionally prevent a diagonalization failure.
arpack_inv{ linear_solver{ force_diagonal_preconditioner } }
Calling sequence
quantum{ region{ kp_8band{ arpack_inv{ linear_solver{ force_diagonal_preconditioner } } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: choice
values:
yes
orno
default:
yes
Functionality
Forces the use of a slower but more robust diagonal preconditioner for the linear solver. As a result, the total runtime and stability of the ARPACK shift invert eigensolver may become much better and the diagonalization failure may be avoided.
davidson{ }
Calling sequence
quantum{ region{ kp_8band{ davidson{ } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
items: maximum 1
Functionality
Triggers Davidson solver and organizes its parameters. It offers both better speed as well as increased stability compared to the ARPACK eigensolver in 2D and 3D.
Warning
The implementation of the Davidson solver is still under development, therefore, should be considered as an experimental feature.
For example, it has the tendency to fail in the presence of degenerate eigenvalue, e.g., Pauli or \(\mathbf{k} \cdot \mathbf{p}\) without magnetic field. In this case, breaking the degeneracies by slightly changing the geometry of the system or adding a weak magnetic field can be tried. Alternatively, switching back to ARPACK inverse or, in 1D or smaller 2D systems, to LAPACK may be considered.
davidson{ accuracy }
Calling sequence
quantum{ region{ kp_8band{ davidson{ accuracy = ... } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: \(10^{-16} \leq r \leq 10^{-6}\)
default: \(r=1e-7\)
unit: \(\mathrm{-}\)
Functionality
Relative accuracy of the Ritz values which are approximating eigenvalues. See Rayleigh-Ritz method for reference.
davidson{ iterations }
Calling sequence
quantum{ region{ kp_8band{ davidson{ iterations = ... } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(z \geq 1\)
default: \(z=100000\)
Functionality
Sets the maximum number of iterations allowed in this solver.
davidson{ energy_cutoff_electrons }
Calling sequence
quantum{ region{ kp_8band{ davidson{ energy_cutoff_electrons } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
default: \(r=0.0\)
unit: \(\mathrm{eV}\)
Functionality
Sets the expected eigenenergy of the conduction-band states ($E_{n,exp} = E_{cb} - Delta E$) around which the solutions are to be found by the solver, where $E_{cb}$ is the minimum of the conduction band and $Delta E = r$ is defined by this keyword.
davidson{ energy_cutoff_holes }
Calling sequence
quantum{ region{ kp_8band{ davidson{ energy_cutoff_holes } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
default: \(r=0.0\)
unit: \(\mathrm{eV}\)
Functionality
Sets the expected eigenenergy of the valence-band states ($E_{n,exp} = VBO + Delta E$) around which the solutions are to be found by the solver, where $VBO$ is the top-valence-band energy and $Delta E = r$ is defined by this keyword.
forward_differences
Calling sequence
quantum{ region{ kp_8band{ forward_differences = "..." } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: choice
values:
yes
orno
default:
no
Functionality
If set to yes
then forward and backward differences are used for the first derivative discretization of the Kane parameter \(P\) in the the 8-band k.p Hamiltonian.
By default, set to no
, centered differences are used.
This parameter might affect spurious solutions of the wave functions.
See eq. (1.50) and eq. (1.51) of PhD thesis T. Andlauer for more details.
electron_far_band
Calling sequence
quantum{ region{ kp_8band{ electron_far_band = ... } } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: real number
values: no constraints
default: \(r=0.0\)
unit: \(\mathrm{-}\)
Dependencies
—
Functionality
Far-band contribution to electrons \(S = 1.0 + r\). The default results in rescaling such that \(S = 1.0\).
Note
It can be useful to set this value to r = -1.0
which then corresponds to setting \(S = 0.0\).
correct_electron_gfactor
Calling sequence
quantum{ region{ kp_8band{ correct_electron_gfactor = ... } } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: real number
values:
[0.0, ...)
default: \(r=-1.0\)
Dependencies
—
Functionality
rescale_kp_everywhere
Calling sequence
quantum{ region{ kp_8band{ rescale_kp_everywhere } } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: choice
values:
yes
orno
default:
yes
Dependencies
—
Functionality
If set to yes
then \(N, M\), and \(P\) parameters are rescaled.
See more details in Zeeman Term.
avoid_spurious
Calling sequence
quantum{ region{ kp_8band{ avoid_spurious } } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
type: choice
values:
yes
orno
default:
no
Dependencies
—
Functionality
If set to yes
then algorithm avoiding spurious solutions is used.
kp_parameters{ }
Calling sequence
quantum{ region{ kp_8band{ kp_parameters{ } } } }
Properties
—
Functionality
Provides options for advanced manipulation of k.p parameters from database.
Attention
The groups use_Luttinger_parameters
and approximate_kappa
are available only for simulations with zincblende crystal symmetry.
kp_parameters{ use_Luttinger_parameters }
Calling sequence
quantum{ region{ kp_8band{ kp_parameters{ use_Luttinger_parameters } } } }
Properties
—
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.
- value:
yes
orno
- default:
no
kp_parameters{ from_6band_parameters }
Calling sequence
quantum{ region{ kp_8band{ kp_parameters{ from_6band_parameters } } } }
Properties
—
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\).
:value: yes
or no
:default: no
kp_parameters{ approximate_kappa }
Calling sequence
quantum{ region{ kp_8band{ kp_parameters{ approximate_kappa } } } }
Properties
—
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 8-band \(\mathbf{k} \cdot \mathbf{p}\) parameters, even though kappa is given in database or input file.
- value:
yes
orno
- default:
no
kp_parameters{ evaluate_S }
Calling sequence
quantum{ region{ kp_8band{ kp_parameters{ evaluate_S } } } }
Properties
—
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.
- value:
yes
orno
- default:
no
kp_parameters{ rescale_S_to }
Calling sequence
quantum{ region{ kp_8band{ kp_parameters{ rescale_S_to } } } }
Properties
—
Functionality
set \(S\) for zinc blende crystal structure to specified value and rescale \(E_P\), \(L'\), \(N^{+}\) in order to preserve electron’s effective mass.
set \(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.
- value:
float for zinc blende crystal structure
2D float vector for wurtzite crystal structure
k_integration{ }
Calling sequence
quantum{ region{ kp_8band{ k_integration{ } } } }
Properties
—
Functionality
Provides options for integration over \(\mathbf{k_{||}}\) space for \(\mathbf{k} \cdot \mathbf{p}\) density calculations (for 1D and 2D only).
k_integration{ relative_size }
Calling sequence
quantum{ region{ kp_8band{ k_integration{ relative_size } } } }
Properties
—
Functionality
—
k_integration{ symmetry }
Calling sequence
quantum{ region{ kp_8band{ k_integration{ symmetry } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: choice
values:
none
;C2
;C4
;D2
;D4
;C6
;D6`
default:
none
Functionality
If symmetry = none
then the solver does not reduce number of \(\mathbf{k_{||}}\) points.
If symmetry = C2
then the solver assumes \(C_2\) symmetry of Brillouin zone to reduce number of \(\mathbf{k_{||}}\) points.
Analogously for the other choices.
k_integration{ num_points }
Calling sequence
quantum{ region{ kp_8band{ k_integration{ num_points } } } }
Properties
—
Functionality
—
k_integration{ num_subpoints }
Calling sequence
quantum{ region{ kp_8band{ k_integration{ num_subpoints } } } }
Properties
—
Functionality
—
k_integration{ force_k0_subspace }
Calling sequence
quantum{ region{ kp_8band{ k_integration{ force_k0_subspace } } } }
Properties
—
Functionality
—
interface{ }
Calling sequence
quantum{ region{ kp_8band{ interface{ } } } }
Properties
—
Functionality
Note
Better description will be available soon.
Optional group to add interface effects to the Hamiltonian [LivnehPRB2012], [LivnehPRB2014]. It can be used multiple times.
interface{ position }
Calling sequence
quantum{ region{ kp_8band{ interface{ position } } } }
Properties
—
Functionality
A real number defining position of the interface.
interface{ array_x{ } }
Calling sequence
quantum{ region{ kp_8band{ interface{ array_x{ } } } } }
Properties
—
Functionality
The group that copies the interface object along the simulation axis.
interface{ array_x{ shift } }
Calling sequence
quantum{ region{ kp_8band{ interface{ array_x{ shift } } } } }
Properties
—
Functionality
- value:
a real number
interface{ array_x{ min } }
Calling sequence
quantum{ region{ kp_8band{ interface{ array_x{ min } } } } }
Properties
—
Functionality
- value:
{..., -3, -2, -1 , 0}
- default:
0
interface{ array_x{ max } }
Calling sequence
quantum{ region{ kp_8band{ interface{ array_x{ max } } } } }
Properties
—
Functionality
- value:
{0, 1, 2, 3, ...}
interface{ kp_parameters{ } }
Calling sequence
quantum{ region{ kp_8band{ interface{ kp_parameters{ } } } } }
Properties
—
Functionality
The group storing all parameters for the interface Hamiltonian.
interface{ kp_parameters{ D_s, D_x, D_z } }
Calling sequence
quantum{ region{ kp_8band{ interface{ kp_parameters{ D_s } } } } }
quantum{ region{ kp_8band{ interface{ kp_parameters{ D_x } } } } }
quantum{ region{ kp_8band{ interface{ kp_parameters{ D_z } } } } }
Properties
—
Functionality
a real number
interface{ kp_parameters{ alpha, beta } }
Calling sequence
quantum{ region{ kp_8band{ interface{ kp_parameters{ alpha } } } } }
quantum{ region{ kp_8band{ interface{ kp_parameters{ beta } } } } }
Properties
—
Functionality
a real number
interface{ kp_parameters{ reverse } }
Calling sequence
quantum{ region{ kp_8band{ interface{ kp_parameters{ reverse } } } } }
Properties
—
Functionality
— choice (yes/no)
dispersion{ }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ } } } }
Properties
—
Functionality
These groups provide keywords to define a path for computation of \(\mathbf{k_{||}}\) and \(\mathbf{k_{\tiny{superlattice}}}\) (if applicable) dispersions.
The energy dispersion E(k) along the specified paths and for the specified k space resolutions are completely independent from the k space resolution that was used within the self-consistent cycle where the k.p density has been calculated.
The latter is specified in k_integration{ }
.
dispersion{ full{ } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ full{ } } } } }
Properties
—
Functionality
Calculates dispersion in 1D/2D/3D k-space depending on simulation dimensionality and pereodic boundary conditions.
dispersion{ full{ name } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ full{ name } } } } }
Properties
—
Functionality
- value:
string
Is a name of the dispersion which also defines the name of the output file.
dispersion{ full{ kxgrid{ }, … } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ full{ kxgrid{ } } } } } }
quantum{ region{ kp_8band{ dispersion{ full{ kygrid{ } } } } } }
quantum{ region{ kp_8band{ dispersion{ full{ kzgrid{ } } } } } }
Properties
—
Functionality
Specifies a grid{...}
in k-space for a 1D/2D/3D plot of the energy dispersion E(kx, ky, kz).
Allowed only, if simulation is periodic along x-direction and current quantum region extends over the whole x-domain.
The options are same as grid{ }
dispersion{ full{ kxgrid{ line{ } }, … } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ full{ kxgrid{ line{ } } } } } } }
quantum{ region{ kp_8band{ dispersion{ full{ kygrid{ line{ } } } } } } }
quantum{ region{ kp_8band{ dispersion{ full{ kzgrid{ line{ } } } } } } }
Properties
—
Functionality
—
dispersion{ full{ kxgrid{ line{ pos } }, … } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ full{ kxgrid{ line{ pos } } } } } } }
quantum{ region{ kp_8band{ dispersion{ full{ kygrid{ line{ pos } } } } } } }
quantum{ region{ kp_8band{ dispersion{ full{ kzgrid{ line{ pos } } } } } } }
Properties
—
Functionality
—
dispersion{ full{ kxgrid{ line{ spacing } }, … } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ full{ kxgrid{ line{ spacing } } } } } } }
quantum{ region{ kp_8band{ dispersion{ full{ kygrid{ line{ spacing } } } } } } }
quantum{ region{ kp_8band{ dispersion{ full{ kzgrid{ line{ spacing } } } } } } }
Properties
—
Functionality
—
dispersion{ path{ } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ path{ } } } } }
Properties
—
Functionality
Calculates dispersion along custom path in k-space. Multiple instances are allowed.
dispersion{ path{ name } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ path{ name } } } } }
Properties
—
Functionality
Is a name of the dispersions which also defines the names of the output files.
- value:
string
dispersion{ path{ point{ } } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ path{ point{ } } } } } }
Properties
—
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.
dispersion{ path{ point{ k } } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ path{ point{ k } } } } } }
Properties
—
Functionality
- value:
3D float vector
Is a k-point represented by vector \([k_x, k_y, k_z]\). The units are \(nm^{-1}\).
For 1D simulation the \(\mathbf{k_{||}}\) space is a \(k_y-k_z\) plane so \(k_y\), \(k_z\) can be freely choosed. \(k_x\) can only be different from zero, if a periodic boundary condition along the x-direction is defined and the quantum region extends over the whole x-domain.
for 2D simulation the \(\mathbf{k_{||}}\) space is a \(k_z\) axis so \(k_z\) can be freely choosed. \(kx\) can only be different from zero if a periodic boundary condition along the x-direction is defined and the quantum region extends over the whole x-domain. \(k_y\) can only be different from zero if a periodic boundary condition along the y-direction is defined and the quantum region extends over the whole y-domain.
for 3D simulation the \(\mathbf{k_{||}}\) space is empty. \(k_x\) can only be different from zero if a periodic boundary condition along the x-direction is defined and the quantum region extends over the whole x-domain. \(k_y\) can only be different from zero if a periodic boundary condition along the y-direction is defined and the quantum region extends over the whole y-domain. \(k_z\) can only be different from zero if a periodic boundary condition along the z-direction is defined and the quantum region extends over the whole z-domain.
dispersion{ path{ spacing } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ path{ spacing } } } } }
Properties
—
Functionality
- value:
float
Specifies approximate spacing for intermediate points in the path segments in \(nm^{-1}\). Excludes num_points
.
dispersion{ path{ num_points } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ path{ num_points } } } } }
Properties
—
Functionality
- value:
integer > 1
Specifies number of points (intermediate + two corner points) for each single path segment. Excludes spacing
.
dispersion{ lines{ } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ lines{ } } } } }
Properties
—
Functionality
Calculates dispersions along some predefined paths of high symmetry in k-space, e.g. [100], [110], [111] and their equivalents (in total maximally 13).
dispersion{ lines{ name } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ lines{ name } } } } }
Properties
—
Functionality
- value:
string
Is a name of the dispersions which also defines the names of the output files.
dispersion{ lines{ k_max } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ lines{ k_max } } } } }
Properties
—
Functionality
- value:
float
Specifies a maximum absolute value (radius) for the k-vector in \(nm^{-1}\).
dispersion{ lines{ spacing } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ lines{ spacing } } } } }
Properties
—
Functionality
- value:
float
Specifies approximate spacing for intermediate points in the path segments in \(nm^{-1}\).
dispersion{ superlattice{ } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ superlattice{ } } } } }
Properties
—
Functionality
Is a convenience group to calculate superlattice dispersion \(E(k_{SL})\) along periodic directions. The intervals are set automatically to \([-\pi/L_i, \pi/L_i]\), where \(L_i\) is the simulation domain range along periodic directions with \(i = x,y,z\).
dispersion{ superlattice{ name } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ superlattice{ name } } } } }
Properties
—
Functionality
- value:
string
Is a name of the dispersion which also defines the name of the output file.
dispersion{ superlattice{ num_points } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ superlattice{ num_points } } } } }
Properties
—
Functionality
Is a convenience keyword to specifies number of points along all appropriate directions in k space.
- value:
any integer > 1
dispersion{ superlattice{ num_points_x, … } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ superlattice{ num_points_x } } } } }
quantum{ region{ kp_8band{ dispersion{ superlattice{ num_points_y } } } } }
quantum{ region{ kp_8band{ dispersion{ superlattice{ num_points_z } } } } }
Properties
—
Functionality
- value:
any integer > 1
Specifies number of points along x direction in k space where dispersion is calculated. The simulation must be periodic along the x direction in direct space. Specifies number of points along y direction in k space where dispersion is calculated. The simulation must be periodic along the y direction in direct space. Specifies number of points along z direction in k space where dispersion is calculated. The simulation must be periodic along the z direction in direct space.
dispersion{ output_dispersions{ } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ output_dispersions{ } } } } }
Properties
—
Functionality
Outputs all defined dispersions.
dispersion{ output_dispersions{ max_num } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ output_dispersions{ max_num } } } } }
Properties
—
Functionality
Is a number of bands to print out
- value:
any integer between 1 and 9999
dispersion{ output_masses{ } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ output_masses{ } } } } }
Properties
—
Functionality
Outputs effective masses \(m^*\) calculated from the dispersions, expressed in masses of a free electron \(m_0\), following the formula:
where \(k\) is a “distance” along the path onto which the related band structure is computed.
dispersion{ output_masses{ max_num } }
Calling sequence
quantum{ region{ kp_8band{ dispersion{ output_masses{ max_num } } } } }
Properties
—
Functionality
Outputs effective masses calculated from the dispersions.
- value:
any integer between 1 and 9999
classify_none{ }
Calling sequence
quantum{ region{ kp_8band{ classify_none{ } } } }
Properties
—
Functionality
—
classify_by_energy{ }
Calling sequence
quantum{ region{ kp_8band{ classify_by_energy{ } } } }
Properties
—
Functionality
—
classify_by_energy{ method }
Calling sequence
quantum{ region{ kp_8band{ classify_by_energy{ method } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(0 \leq z \leq 2\)
Functionality
—
classify_by_energy{ shift_electrons }
Calling sequence
quantum{ region{ kp_8band{ classify_by_energy{ shift_electrons } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
unit: \(\mathrm{eV}\)
Functionality
—
classify_by_energy{ shift_holes }
Calling sequence
quantum{ region{ kp_8band{ classify_by_energy{ shift_holes } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
unit: \(\mathrm{eV}\)
Functionality
—
classify_by_energy{ cutoff }
Calling sequence
quantum{ region{ kp_8band{ classify_by_energy{ cutoff } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(0 \leq z \leq 4\)
Functionality
—
classify_by_all_energies{ }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_energies{ } } } }
Properties
—
Functionality
—
classify_by_all_energies{ method }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_energies{ method } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(0 \leq z \leq 2\)
Functionality
—
classify_by_all_energies{ shift_electrons }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_energies{ shift_electrons } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
unit: \(\mathrm{eV}\)
Functionality
—
classify_by_all_energies{ shift_holes }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_energies{ shift_holes } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
unit: \(\mathrm{eV}\)
Functionality
—
classify_by_all_energies{ permissive }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_energies{ permissive } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(0 \leq z \leq 2\)
Functionality
—
classify_by_all_energies{ cutoff }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_energies{ cutoff } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(0 \leq z \leq 4\)
Functionality
—
classify_by_spinor{ }
Calling sequence
quantum{ region{ kp_8band{ classify_by_spinor{ } } } }
Properties
—
Functionality
—
classify_by_spinor{ threshold_electron }
Calling sequence
quantum{ region{ kp_8band{ classify_by_spinor{ threshold_electron } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: \(10^{-2} \leq r \leq 0.99\)
unit: \(\mathrm{-}\)
Functionality
—
classify_by_spinor{ threshold_hole }
Calling sequence
quantum{ region{ kp_8band{ classify_by_spinor{ threshold_hole } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: \(10^{-2} \leq r \leq 0.99\)
unit: \(\mathrm{-}\)
Functionality
—
classify_by_spinor{ cutoff }
Calling sequence
quantum{ region{ kp_8band{ classify_by_spinor{ cutoff } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(0 \leq z \leq 4\)
Functionality
—
classify_by_all_spinors{ }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_spinors{ } } } }
Properties
—
Functionality
—
classify_by_all_spinors{ threshold_electron }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_spinors{ threshold_electron } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: \(10^{-2} \leq r \leq 0.99\)
unit: \(\mathrm{-}\)
Functionality
—
classify_by_all_spinors{ threshold_hole }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_spinors{ threshold_hole } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: \(10^{-2} \leq r \leq 0.99\)
unit: \(\mathrm{-}\)
Functionality
—
classify_by_all_spinors{ permissive }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_spinors{ permissive } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(0 \leq z \leq 2\)
Functionality
—
classify_by_all_spinors{ cutoff }
Calling sequence
quantum{ region{ kp_8band{ classify_by_all_spinors{ cutoff } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(0 \leq z \leq 4\)
Functionality
—
Last update: 2025-08-14