grid{ }
Calling sequence
grid{ }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
items: exactly 1
Functionality
Specifications of the non-uniform rectangular grid lines.
Example
grid{
xgrid{}
}
global{
simulate1D{}
}
grid{
xgrid{}
ygrid{}
}
global{
simulate2D{}
}
grid{
xgrid{}
ygrid{}
zgrid{}
}
global{
simulate3D{}
}
Nested keywords
xgrid{ }
Calling sequence
grid{ xgrid{ } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
items: exactly 1
Functionality
This group is used to define simulation space grid along the \(x\)-axis.
Example
grid{
xgrid{}
}
xgrid{ min_pos }
Calling sequence
grid{ xgrid{ min_pos } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
unit: \(\mathrm{nm}\)
Functionality
Definition of the smallest, possible \(x\)-coordinate of the simulation domain. Grid lines specified with smaller x-coordinates are ignored.
Example
grid{
xgrid{
min_pos = -50
}
}
xgrid{ max_pos }
Calling sequence
grid{ xgrid{ max_pos } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values: no constraints
unit: \(\mathrm{nm}\)
Functionality
Definition of the largest, possible x-coordinate of the simulation domain. Grid lines specified with larger \(x\)-coordinates are ignored.
Example
grid{
xgrid{
min_pos = 150
}
}
xgrid{ allow_spacing_jumps }
Calling sequence
grid{ xgrid{ allow_spacing_jumps } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: choice
values:
yes
orno
default:
no
Functionality
If set to yes
, then it is possible to assign two different grid spacing values to the same grid line, which creates a jump in the grid spacing.
Example
grid{
xgrid{
allow_spacing_jumps = yes
}
}
xgrid{ line{ } }
Calling sequence
grid{ xgrid{ line{ } } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
items: minimum 2
Functionality
Group defining a grid lines. As the lines define the total size of the device, at least two of them have to be present for each simulation direction.
Example
grid{
xgrid{
line{ }
}
}
xgrid{ line{ pos } }
Calling sequence
grid{ xgrid{ line{ pos } } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
type: real number
values: no constraints
unit: \(\mathrm{nm}\)
Functionality
Position of the line.
Hint
A good practice is to define lines on all interfaces in the device to provide the geometry definition possibly independent to the choice of the spacing.
Example
grid{
xgrid{
line{ pos = 5.0 spacing = 0.2 }
}
}
xgrid{ line{ spacing } }
Calling sequence
grid{ xgrid{ line{ spacing } } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
type: real number
values:
[1e-3, ...)
unit: \(\mathrm{nm}\)
Functionality
A grid spacing in the vicinity of the position of the line.
Example
grid{
xgrid{
line{ pos = 5.0 spacing = 0.2 }
}
}
xgrid{ line{ array{ } } }
Calling sequence
grid{ xgrid{ line{ array{ } } } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: maximum 1
Dependencies
xgrid{ line{ array{ } } } is required if xgrid{ line{ array2{ } } } is specified.
Functionality
Repeating a single grid line multiple times at equidistant positions. The grid lines are placed according to the following equation:
\(x_n=\) pos
\(+\) shift
\(\times n\),
where \(\;n=\) min
, … , max
Example
grid{
xgrid{
line{
pos = 5.0 spacing = 0.2
array{...}
}
}
}
xgrid{ line{ array{ shift } } }
Calling sequence
grid{ xgrid{ line{ array{ shift } } } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
type: real number
values: no constraints
unit: \(\mathrm{nm}\)
Functionality
The distance between repeated grid lines.
Example
grid{
xgrid{
line{
line{
pos = 5.0 spacing = 0.2
repeat{ shift = 1.8 }
}
}
}
xgrid{ line{ array{ min } } }
Calling sequence
grid{ xgrid{ line{ array{ min } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(z \leq 0\)
unit: \(\mathrm{-}\)
default: \(z=0\)
Functionality
Number of repeated grid lines in negative \(x\)-direction, without counting the original grid line.
Example
grid{
xgrid{
line{
pos = 5.0 spacing = 0.2
array{ shift = 1.8 min = 5 }
}
}
}
xgrid{ line{ array{ max } } }
Calling sequence
grid{ xgrid{ line{ array{ max } } } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
type: integer
values: \(z \geq 0\)
unit: \(\mathrm{-}\)
Functionality
Number of repeated grid lines in positive \(x\)-direction, without counting the original grid line.
Example
grid{
xgrid{
line{ pos = 5.0 spacing = 0.2
array{ shift = 1.8 max = 5 }
}
}
}
xgrid{ line{ array2{ } } }
Calling sequence
grid{ xgrid{ line{ array2{ } } } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: maximum 1
Dependencies
xgrid{ line{ array{ } } } is required to use xgrid{ line{ array2{ } } }.
Functionality
This group is intended to be used in conjunction with the group xgrid{ line{ array{ } } }. It allows to repeat the pattern of grid lines generated by xgrid{ line{ array{ } } } multiple times at equidistant positions.
Example
grid{
xgrid{
line{ pos = 5.0 spacing = 0.2
array{ shift = 1.8 max = 5 }
array2{...}
}
}
}
xgrid{ line{ array2{ shift } } }
Calling sequence
grid{ xgrid{ line{ array2{ shift } } } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
type: real number
values: no constraints
unit: \(\mathrm{nm}\)
Functionality
The distance between repeated grid lines.
Example
grid{
xgrid{
line{ pos = 5.0 spacing = 0.2
array{ shift = 1.8 max = 5 }
array2{ shift = 20.0 }
}
}
}
xgrid{ line{ array2{ min } } }
Calling sequence
grid{ xgrid{ line{ array2{ min } } } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: integer
values: \(z \leq 0\)
unit: \(\mathrm{-}\)
default: \(z=0\)
Functionality
Number of repetitions in negative \(x\)-direction, without counting the original array of grid lines.
Example
grid{
xgrid{
line{ pos = 5.0 spacing = 0.2
array{ shift = 1.8 max = 5 }
array2{ shift = 20.0 min = 7 }
}
}
}
xgrid{ line{ array2{ max } } }
Calling sequence
grid{ xgrid{ line{ array2{ max } } } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
type: integer
values: \(z \geq 0\)
unit: \(\mathrm{-}\)
Functionality
Number of repetitions in positive \(x\)-direction, without counting the original array of grid lines.
Example
grid{
xgrid{
line{ pos = 5.0 spacing = 0.2
array{ shift = 1.8 min = 2 max = 5 }
array2{ shift = 20.0 min = 1 max = 3 }
}
}
}
ygrid{ }
Calling sequence
grid{ ygrid{ } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: maximum 1
Dependencies
This keyword is required if either simulate2D{ } or simulate2D{ } is specified in the global{ } group.
It is not allowed if simulate1D{ } is specified in the global{ } group.
Functionality
This group is used to define simulation space grid along the \(y\)-axis. This group has the same properties and allowed keywords as xgrid{ }.
Example
grid{
ygrid{
line{ pos = 5.0 spacing = 0.2
array{ shift = 1.8 min = 2 max = 5 }
array2{ shift = 20.0 min = 1 max = 3 }
}
}
}
zgrid{ }
Calling sequence
grid{ zgrid{ } }
Properties
usage: \(\mathrm{\textcolor{Dandelion}{conditional}}\)
items: maximum 1
Dependencies
This keyword is required if simulate3D{ } is specified in the global{ } group.
It is not allowed if either simulate1D{ } or simulate2D{ } is specified in the global{ } group.
Functionality
This group is used to define simulation space grid along the \(z\)-axis. This group has the same properties and allowed keywords as xgrid{ }.
Example
grid{
zgrid{
line{ pos = 5.0 spacing = 0.2
array{ shift = 1.8 min = 2 max = 5 }
array2{ shift = 20.0 min = 1 max = 3 }
}
}
}
energy_grid{ }
Calling sequence
grid{ energy_grid{ } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
items: maximum 1
Functionality
Specifying the discretization of energy.
Example
grid{
energy_grid{...}
}
energy_grid{ min_energy }
Calling sequence
grid{ energy_grid{ min_energy } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
type: real number
values: no constraints
unit: \(\mathrm{eV}\)
Functionality
Low-energy boundary of the energy grid.
Example
grid{
energy_grid{
min_energy = - 2.1
max_energy = 1.7
}
}
energy_grid{ max_energy }
Calling sequence
grid{ energy_grid{ max_energy } }
Properties
usage: \(\mathrm{\textcolor{WildStrawberry}{required}}\)
type: real number
values: no constraints
unit: \(\mathrm{eV}\)
Functionality
High-energy boundary of the energy grid.
Example
grid{
energy_grid{
min_energy = - 2.1
max_energy = 1.7
}
}
energy_grid{ energy_resolution }
Calling sequence
grid{ energy_grid{ energy_resolution } }
Properties
usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)
type: real number
values:
[1e-6, ...)
unit: \(\mathrm{eV}\)
default: \(r=1e-2\)
Functionality
Spacing between subsequent energy grid points.
Example
grid{
energy_grid{
min_energy = - 2.1
max_energy = 1.7
energy_resolution = 0.005
}
}