-
什么是
AFORS-HET
AFORS-HET 
(Automat
FOR 
Simulation 
of
HETerostructures) 
is
a 
numerical
simulation 
tool,
which allows to model/simulate
heterojunction semiconductor devices. An arbitrary
sequence of 
semiconducting layers can
be modelled, specifying layer properties and
interface properties, i.e. 
the
defect 
distribution
of 
states 
(DOS).
At 
the 
boundary,
voltage 
or
current 
controlled
metal-semiconductor 
contacts
(MS 
contacts) 
or
a 
metal-insulator-
semiconductor 
contact 
(MIS
contact) 
can 
be
chosen. 
Sub-bandgap
photon 
absorption
can 
be 
simulated
by 
specification
of 
optical capture cross
sections. The program solves the one dimensional
semiconductor equations 
using
Shockley-Read-Hall
recombination 
statistics,
(1) 
for
thermodynamic 
equilibrium,
(2) 
for 
steady-
state conditions under an external illumination
and/or bias voltage (3) for small additional
sinusoidal 
perturbations
of 
the 
applied
bias/illumination. 
Thus
the 
internal 
cell
characteristics 
(band
diagrams, local generation, recombination,
currents, carrier densities and phase shifts
within 
the device) can be calculated
for various external boundary conditions..
Furthermore, a variety of 
common
characterisation 
techniques
can 
be 
simulated,
i.e. 
current-voltage
(C-V), 
quantum
efficiency (IQE, EQE), impedance (IMP),
voltage and temperature dependant capacitance
(C-V, 
C-T), 
intensity
and 
field
dependant 
surface
photovoltage 
(SPVi,
SPVv), 
photo- 
and
electro-luminescence (PEL), electron
beam induced current (EBIC), electrical detected
magnetic 
resonance 
(EDMR).
Also 
analytical
forms 
describing
a 
measurement 
can
implemented 
and
compared 
to 
the
numeric 
ones
(IQEanalytic) 
A
user-friendly 
interface
allows 
to
visualise, 
store
and compare all aspects within your
simulations. Furthermore, general parameter
variations can be 
performed.
New 
numerical
modules 
and 
new
measurements 
may
be 
added 
by
external 
users
(open-source on demand). 
如何获得帮助
 
We tried
to equip this software with a user-friendly
interface, that is mostly self explaining. We
hope, that there is no need for reading
the online help, since most program options are
obvious, if 
you 
have
already 
used
similar 
programs
like 
PC1D 
or
SCAPS. 
If 
you
are 
however
confused 
anywhere in the
program press F1 to gain context sensitive help
for the current program window. 
What
‘
s new?
version 2.0: 
?calculation mode transient was
included 
 
?several major and
minor bugs fixed 
 
version
1.2: 
 
?It is now possible to
perform a multidimensional parameter fit on
measurement curves 
?External circuits
can now be applied 
?The program now
distinguishes between several calculation modes
(Eq, DC, AC) 
 
?several major
and minor bugs fixed 
version 1.1: 
?You 
can 
now
customise 
the
program 
by
choosing 
different
optical 
and
numerical 
calculation
models 
?In front and behind
the cell, optical layers can be defined, that
influence the generation rate inside
the structure, as 
multiple
coherent/incoherent reflections can be calculated,
choosing the optical 
model multiple
reflections and coherence. It can be selected in
the settings window. 
?the sequence of
grid points is now editable by the user via the
settings window 
 
?Optical
properties of the structure are now defined by nk-
files and not anymore by alpha-files.
When loading structures created with
program version 1.0 be sure to check that all
layers have the 
right optical files
associated. 
?New measurents IQE
analytic, SPV intensity, PES and EDMR are
introduced, the old ones have 
been
improved. 
New
measurement 
methods
can 
be 
added
by 
an 
external
user 
(open 
source
on 
demand). 
?AC
calculation now is not only available during some
measurements. AC voltage and frequency
can be applied anytime as external
parameters 
 
?Thermionic-
Emission 
and 
Drift-
Diffusion, 
are 
now
not 
interface
properties, 
but
different 
numerical models.
?hetero 
structure
files 
(*.het) 
and
graphical 
output
files 
(*.res,
*.rac, 
*.iv,
*.qe, 
*.iqean,
*.adm, 
*.imp, *.cv, *.ct,
*.spvs, *.spvv, *.spvi, *.ebic, *.pel, *.edmr,
*.var, *.spek) can be opened directly
from the Windows Explorer when the file
type is associated with AFORS-HET. 
?The
handling of complex graphs has been improved
?several major and minor bugs fixed
 
?compatibility:
unfortunately all graphical output files
of program 
version 1.0
cannot be loaded 
with the new program
version, due to improvements made to the file
format. 
 
Known issues and
planned improvements 
We 
are
well 
aware 
that
the 
program 
still
needs 
a 
lot
of 
development
work. 
The
following 
improvements and
bugfixes are being developed at the moment:
 
New developments:
 
- 
a periodic
modulation of the light intensity will be
available 
- 
correlated
dangling bond defect distributions will be
implemented 
- 
a numerical
model for Schottky-Bardeen contacts will be
implemented 
- 
Fermi-Dirac
statistics will be implemented 
-
the defect-pool model to treat a-Si:H
layers will be implemented 
0 
bugfixes: 
-
 
phase
shifts 
in 
the
AC-voltage 
cell
results 
should 
be
continuous 
and
not 
distracted 
by
+-180?phase jumps (minor bug)
 
Numerical Models
AFORS-HET builds a discrete set of
gridpoints at which the semiconductor equations
are being 
solved. There are 4 different
types of gridpoints (bulk point, interface point,
first interface point 
and last
interface point). Even if a gridpoint is called an
interface point, it is never located exactly
at 
the 
interface,
but 
always 
a
very 
small
distance 
away
from 
it. 
This
distance 
can 
be
specified 
within the
 
numerical_settings.
So 
for 
an
heterojunction 
interface,
there 
are
actually 
two
interface 
points
belonging to that interface, one at
each side of the heterojunction. For each of these
different types 
of
gridpoints 
different
differential 
equations
/ 
boundary
conditions 
and
eventually 
modified
routines 
for
solving 
the
resulting 
discrete
equations 
have
been 
implemented.
A 
set 
of
those 
routines is called
numerical model. By applying a different numerical
model to a point you change 
the
way 
the 
program
calculates 
at
this 
point. 
You
can 
choose 
the
models, 
in 
the
windows 
for
editing layers and interfaces (first,
last or any other). New numerical models may be
added by an 
external user (open source
on demand). At the moment the following models are
implemented: 
 
bulk numeric
models: 
 
There are two
numerical models for a bulk gridpoint: 
Standard: 
 
Within
this 
numerical
model, 
Poissons
equation 
and 
the
electron/hole 
equation
of 
transport 
is
stated 
in 
a
discritized 
form,
together 
with 
(1)
the 
partial
derivatives 
of
these 
equations,
(2) 
a 
routine to
solve locally for the resulting discrete
equations. 
 
Crystalline-Silicon: 
Within 
this
numerical 
model,
the 
standard
numerical 
model
is 
modified
within 
the
routine 
for
solving locally for the resulting
discrete equations, in order to account for
impurity scattering and 
carrier-carrier
scattering 
within
crystalline 
silicon.
That 
is, 
the
electron/hole 
mobilities
will 
no 
longer
treated 
to 
be
constant 
within 
a
layer, 
but 
they
will 
(iteratively)
depend 
on 
the
local 
electron/hole particle
densities within the cell. 
interface numeric models: 
There are two numerical models for an
interface gridpoint: 
 
Drift-
Diffusion: 
The 
transport
across 
the
heterojunction 
interface
is 
modelled 
by
drift-diffusion, 
in
complete 
analogy to the
bulk. In order to do so, an interface layer is
assumed, with the thickness given by
the 
distance 
of
the 
two 
interface
gridpoints 
specified
in 
numerical
settings. 
Additional
interface 
states
can 
be 
specified,
which 
will 
result
in 
additional
interface 
recombination.
Within 
the
interface layer, all the layer
properties are linearely transformed from one
semiconductor to the 
second
semiconductor. 
 
Thermionic
emmision: 
Alternatively, the transport
across the heterojunction can be modelled by
thermionic emission over 
the energetic
barrier of the heterointerface. Additional
interface states can be specified, which will
result in additional interface
recombination. These interface states can interact
with both adjacent 
semiconductors, thus
charge carriers can transverse the heterointerface
via defect states from one
semiconductor to the other. 
 
 
first interface
numeric models: 
 
So far,
there are two numerical models for the first
interface gridpoint: 
Metal/semiconductor Schottky contact:
The 
front 
contact
is 
treated 
as
a 
metal/semiconductor
Schottky 
contact.
That 
is, 
the
difference 
between the metal
work function and the electron affinity of the
adjacent semiconductor defines 
an
energetic barrier for the current flow from the
semiconductor into the metal. Interface states are
not considered, if they are specified,
they will be ignored. 
Metal/insulator/semiconductor MIS
contact: 
The front contact is treated
as a metal/insulator/semiconductor contact. Thus
there is no current 
flow into the front
contact. The corresponding insulator capacity has
to be specified. Additional 
interface
defects can also be specified, resulting in an
enhanced interface recombination and also
in a modified band banding in
thermodynamic equilibrium. 
 
 
last interface numeric
models: 
 
At the moment,
there is only one numerical model for the last
interface gridpoint: 
Metal/semiconductor Schottky contact:
This is exactly the same as stated in
the first interface gridpoint 
 
transient mode: 
Since version 2.0. AFORS-Het offers a
transient calculation mode. Each numerical model
has to 
provide 
additional
functions 
that
solve 
the 
problem
under 
transient
conditions. 
For
more 
information on the
numerical implementation of the transient mode
click here. 
 
Defining a structure 
The
first step when starting AFORS-HET is usually to
define the structure you want to simulate. A
structure 
always
consists 
of 
a
front 
contact, 
a
back 
contact, 
and
a 
variable 
number
of 
layers 
in
between (at least 1). Between all these
items are interfaces, which are by default
disabled (drift 
diffusion transport
across the interface). Since version 1.1 a
structure furthermore contains optical
layers, which define light absorption,
reflection and transmission at the cell contacts.
Since version 
1.2 
external
circuits 
can 
also
be 
defined, 
i.e.
a 
serial
resistance 
Rs, 
a
serial 
capacitance
Cs, 
a 
parallel
resistance Rp and a parallel capacitance Cp.
 
Click on the Button
慏
efine Structure?in order to
create, load or modify a structure. All the items
of the structure (contacts, layers,
interfaces, external circuits) are displayed here.
By clicking on an 
item you can change
it
抯
 
properties
(e.g. click on a layer, if you want to change its
properties). 
The simplest structure
possible (1 layer and no interfaces) is offered if
you start the program or if 
you select
the button 
慛
ew Cell?
 
 
Press
the 
buttons 
under
the 
label
慉
dd 
Layer?to
add 
new 
layers.
The 
button
labeled
慹
lectric?will add a new
electric layer. This new layer will be placed
between the last layer and the 
back
contact. Now, you either have to specify the
material properties manually, or you load a layer
that already exists. The same procedure
works with the optical layers. Press
憃
ptic front?or
憃
ptic back?to add an optic
layer in front of or behind the structure. Click
the optic layers to edit 
their
properties. Since version 1.1 you can also change
the sequence of layers by clicking on the
arrows in front of the structure. If
you have specified the structure click on
慜
K?and the program
will start calculating the Eq
equilibrium state for your structure. 
Furthermore you have the possibility of
saving the structure to a file (*.het) and loading
previously 
saved structures (save/load
buttons). There are already some structures
included with the program 
so you might
want to load and modify them for your purpose.
 
External Parameters
On 
the 
left
side 
of 
the
main 
program
window 
you 
can
see 
the 
external
parameters. 
They
are 
divided into 3
subgroups:
 temperature, illumination
and boundary conditions.
 Each time you
start 
the program, the external
parameters are reset to defaults. 
 
Illumination 
First 
you 
must
decide 
if
illumination 
should
be 
turned 
on
or 
off
(darkness). 
If
illumination 
is
turned 
on 
you
can 
define 
the
incoming 
light,
which 
consists 
of
two
components
,
that
can 
be
individually 
turned
on 
and 
off:
a 
spectral
component 
and 
a
monochromatic 
component.
If 
both
components are enabled the incoming
light will be the sum of both components.
Furthermore you 
can decide between
front side and back side illumination. To view the
complete incident spectrum 
use the
憇
pectra?button in the main
window . 
 
The spectral
component can be directly defined by an incident
file (*.in), specifying the number of
photons 
at 
each
wavelength 
of 
the
incident 
illumination.
These 
numbers
will 
be
additionally 
multiplied with
the factor called 
 
times you
have to enter. The default file
慉
?with the default factor
times=1 describes the 
average incident
irradiation of the sun in middle Europe in summer
at noon. 
 
 
The
generation 
of
electron-hole 
pairs
within 
the
semiconductor-layers 
will
then 
be
calculated 
using the
spectral absorption coefficient alpha [cm^-1] of
the layers. Only super-bandgap photons
with E>Eg Opt will be absorbed due to
the layer parameter alpha and generate electron-
hole pairs, 
photons with E
have to switch
on the optical capture cross sections cno and cpo
in the Editing Defect Menu. 
 
The spectral component can
also be indirectly defined by just loading a
generation file (*.gen). 
These
files 
contain
information 
about
how 
many
electron-hole 
pairs
are 
generated 
at
a 
certain
position 
within
the 
heterostructure.
So 
you 
may
like 
to 
use
other 
programs 
to
compute 
a 
more
accurate generation profile, accounting
for surface texture and multiple internal
reflections. Note 
that, if you load
generation files, settings like front contact
absorption or reflection are ignored. 
 
You can create your own
incident (*.in) and/or generation (*.gen) files,
but be sure, that they have 
the right
file format (see example files), otherwise the
program might run into trouble. There are
no 
restrictions
concerning 
the
spacing 
of 
the
data 
points 
in
these 
files, 
as
linear 
interpolation
routines 
will 
be
used. 
Per
definition, 
the
spectral 
illumination
is 
zero 
at
a 
wavelength
larger 
or 
lower
than the maximum or minimum wavelength specified
in these files. 
 
The other light component is a
monochromatic light source (laser light), which is
defined by it
抯
wavelength, it? 
s intensity
and it
抯
 
spectral
width. If you have a generation file loaded, the
generation caused by 
the laser is
nevertheless calculated individually and added to
the generation implied by the file. 
 
Temperature 
The temperature is uniform throughout
the device. By default it is set to 300 K. No
temperature 
dependence 
of
any 
material
parameter 
is
involved 
in 
the
calculations. 
It
could 
however 
be
implemented 
by
programming 
an
numerical 
module
for 
the 
material
under 
consideration,
for 
example an extension of
the numerical module crystalline silicon (open-
source on demand). 
 
Boundary Conditions 
The back contact of the heterostructure
is always assumed to be a 
metal-
semiconductor contact 
(MS
contact). 
The
front 
contact 
can
be 
either 
a
metal-semiconductor 
contact
or 
a 
metal-
insulator-semiconductor 
contact
(MIS 
contact).
This 
can 
be
selected 
by
choosing 
the
appropriate NUMERICAL-MODEL. If you
choose a metal/semiconductor contact, you can
decide 
whether the contact is voltage
or current controlled. In case of an MIS contact
the current has to be 
zero, so there is
no current control. The capacitance density of the
insulator of the MIS contact is
specified in the Front Contact Editing
Menu 
 
?external voltage
 
(voltage controlled MS or
MIS contact): 
you specify the applied
voltage external voltage [V] across the
heterostructure. 
 
?external
current 
 
(current controlled
MS contact): 
you specify the total
current density external current [mA/cm^2] through
the heterostructure. In 
this mode the
iteration is more likely to fail if the starting
solution provided is far away from the
real 
solution.
It
抯
 
a
good 
idea 
first
to 
iterate 
the
desired 
current
by 
using 
the
external 
voltage
boundary conditions and to adjust the
desired current manually. If the current is in the
appropriate 
range, change the boundary
conditions to Mscurrent. 
 
 
 
Furthermore you
can decide whether to fix the potential f front
side or back side to zero. This is 
only
changing the energetic scale and will not affect
the other results. However, the resulting band
diagrams will be correspondingly fixed
front side or back side. 
Aditionally to the DC boundary
conditions mentioned above, periodic sinusoidal
perturbations can 
be applied by
switching to AC calculation mode and enabling AC
boundary conditions. These are
characterised by an AC frequency [Hz]
and an AC voltage [V] or AC current [A/cm^2]
and/or an 
AC illumination [1/(cm^2 s].
Also note that in transient calculation mode the
way to enter external 
parameters
changes slightly. 
 
At the
end of a calculation (for example if you press the
calculate button), the missing quantities
external current and external voltage,
which you have not specified, will be computed.
 
Settings
Accuracy: While the program calculates,
it tries to solve the semiconductor equations. It
does so 
by assuming the actual results
to be a first approximate solution and calculating
iteratively a next 
(hopefully
better) 
solution.
In 
an 
ideal,
but 
in 
no
way 
realistic
case, 
the
equations 
are
solved 
exactly, that means
DGLSYS:=0 at every grid point. The Accuracy is the
maximum deviation of 
the numerical
semiconductor equations from zero for the scaled
semiconductor equations [Sel, p. 
208]:
 
Accuracy:=max(Abs(DGLSYS),
{all gridpoints}) 
 
The
actual Accuracy is plotted in the status bar of
the main window during a calculation. If this
accuracy 
is 
lower
than 
the 
value
of 
Accuracy
specified 
here,
the 
program 
knows
that 
the
calculation can be finished and further
iteration is not necessary. 
Min. number of iterations: Even if the
actual accuracy is already lower than the
specified value 
after 
the
first 
iteration,
the 
program
iterates 
at 
least
so 
many 
times
in 
order 
to
ensure 
better
convergence. 
 
Max. 
number 
of
iterations: 
Even
if 
the 
accuracy
is 
not 
lower
than 
the
specified 
value,
the 
calculation is finished
when this number of iterations is reached. The
actual number of iterations is 
always
plotted in the status bar of the main window
during a calculation. 
 
Max.
number of iterations (equilibrium): Even if the
accuracy is not lower than the specified value,
the 
equilibrium
calculation 
is
finished 
when
this 
number 
of
iterations 
is
reached. 
The
reason 
to
distinguish 
between
the 
two 
maximum
number 
of
iterations 
is
that 
an
equilibrium 
calculation
often needs more iterations to
converge: If you press the calculate equilibrium
button, or if you 
manually
change 
your
heterostructure, 
the
starting 
solution
will 
be 
generated
by 
the 
computer
program itself and is therefore far
away from the actual solution. 
 
Delta E: Delta E defines
the discretisation of the energy within the
bandgap for defects. 
 
Spacing between layers: All gridpoints
are located in the bulk, never at an interface.
The distance 
between the two
gridpoints, left and right to a heterointerface
can be specified. This distance will 
be
used as a thickness for the interface layer, if
the numerical module drift-diffusion is used. Also
the spacing between the front/back-side
interface and the first/last gridpoint can be
specified. 
 
Numeric
0 
incident/absorbed
photons: 
 
The
number 
of 
photons
incident 
on 
the
heterostructure 
and the
number of photons absorbed within the
heterostructure are calculated numerically. Define
here below which value these numbers
should be treated as zero. 
Edit grid points: Press this button, to
open a window that lets you edit the number and
position of 
the structure
抯
 
grid
points. 
Normally
the 
program
calculates 
the
best 
amount 
and
position 
of 
grid
points. 
However, you might
want to discretize some regions more precisely or
save calculation time by 
thinning the
grid points out. You can set single points at a
specific position or a lager amount of
points in a specified range. If you
want to delete points, select the range and set a
small number of 
points there. Note,
that by calculating the equilibrium the program
will set a new grid, that does 
not
contain the changes made before by the user. You
can also save and load often used grid point
discretizations to files(*.grd).
 
 
 
----Page Optical---- 
This is where you can select the
optical model you want to use, in order to
calculate the generation 
rate. For each
optical model you can adjust settings here if
there are any. Refer to the online help
page of optical models for an
explanation of these parameters. 
----Page Measurements---- 
Here you can disable measurements you
don
抰
 
want to use
in order to have a cleaner program
surface. You can enable the
measurements again anytime you like. Changes need
a program restart 
to take effect.
 
-
-
-
-
-
-
-
-
- 
                       上一篇:油田化学专业英语 
                       
 
下一篇:传播学经典理论英文翻译(可编辑修改word版)