SEMITIP, VERSION 4, Electrostatics and Tunnel Current Computations for a Probe Tip near a Semiconductor
R. M. Feenstra
Department of Physics, Carnegie Mellon University, Pittsburgh, PA 15213
This program computes the electrostatic potential and resulting tunnel current produced by a metallic probe tip near a semiconductor. This program is an updated version of the prior
VERSION 3,
VERSION 2, and
VERSION 1.
Basic usage is described below, and additional details are available in the
SEMITIP V4 Technical Documentation,
describing changes relative to VERSION 3.
The major change in VERSION 4 relative to VERSION 3 is the added capability to compute the tunneling current.
Some background information on the methods used in the program is contained in:
It is important to note that VERSION 4 of the program is not self-consistent, in the sense that the charge densities used in the electrostatics are computed semi-classically in the z-direction (normal to the surface) whereas the tunneling current is based on wavefunctions in this direction that are fully quantum mechanical. (In the lateral x- and y-directions, both the charge densities and the wavefunctions are semi-classical). For situations of semiconductor depletion, as commonly occurring in experiment, this lack of self-consistency is not significant (self-consistency is automatically ensured under depletion conditions). However, for accumulation or inversion, self-consistency will in general produce a noticable effect on the tunnel current. A version of the program that includes self-consistency
(VERSION 5)
is also available; the code for that version is, however, considerably more complicated than the present VERSION 4, so users are encouraged to get familiar with VERSION 4 before attempting use of VERSION 5. One additional factor that greatly affects accumulation in the case of n-type GaAs(110) is the occurrence of surface states. These act to constrain the Fermi-level thus preventing any substantial accumulation to occur, as described in
Phys. Rev. B 80, 075320 (2009)
which follows work of N. D. Jäger et al., Phys. Rev. B 67, 165327 (2003).
Thus, even for accumulation conditions involving n-type GaAs, the present non-self-consistent version of the program is quite accurate, so long as one includes an appropriate surface charge density (see example 1 below).
A compiled version of the code, which should run on any Windows PC, is
available in the file semitip_v4.exe.
Input for the executable code comes from the file FORT.9.
Download these two files, into filenames "semitip_v4.exe" and "fort.9". Then, run the code just by double clicking on it. Using a text editor, the input parameters in FORT.9 can be changed to whatever values are desired. In addition to the parameter values, this file also contains comments as to the meaning of each parameter.
Output from the program is contained in the following files
(output depends on the value of the output parameter IWRIT as specified
in the input file FORT.9):
- FORT.10 - gives the numerical results for the following quantities:
- tip radius of curvature (nm)
- tip-sample separation (nm)
- sample-tip bias voltage (V)
- contact potential (eV)
- PHI0 - the surface potential at a point directly opposite the tip apex (eV)
- FORT.11 - provides the potential (eV) along the central axis, as a
function of z-distance (output for IWRIT>=1) (the third column gives auxiliary output which are the potential values for all grid points at the maximal radial value in the problem, although the z-values for these points are not output and in particular do not correspond to the values in column 1).
- FORT.12 - provides the potential (eV) along the surface, as a function
of the radial distance from the central axis (output for IWRIT>=1)
- FORT.13 - gives the entire array of potential values (output for IWRIT>=3); see
VERSION 3 documentation
for more details.
- FORT.14 - provides the current (A/nm^2) (column 2) as a function of sample voltage (V) (column 1). Also, columns 3 and 4 provide the contributions to the current of extended states and
localized states, respectively. Separate contributions from the valence band and conduction band
go in to FORT.91 and FORT.92, respectively.
- FORT.15 - provides the conductance dI/dV (A/(V nm^2)) (column 2) as a function of sample voltage (V) (column 1). Also, columns 3 and 4 provide the contributions to the conductance of extended states and
localized states, respectively. Separate contributions from the valence band and conduction band
go in to FORT.93 and FORT.94, respectively.
- FORT.16 - gives an exact copy of the output to the console
- FORT.20, FORT.21, ... - contour lines of the potential (nm) (output for IWRIT>=2)
- FORT.30,FORT.40,FORT.50,FORT.60 - listing of voltage (V) (column 1), principal quantum number (column 2), energy of localized state (eV) (column 3), and the difference in electron occupation between sample and tip at that energy (column 4), for the light-hole, heavy-hole, split-off and conduction bands, respectively
- FORT.31,FORT.41,FORT.51,FORT.61 - wavefunctions of localized states, as a function of distance along central axis, for individual bands as above. Only listed at final bias voltage in the problem (output for IWRIT>=7).
- FORT.33,FORT.43,FORT.53,FORT.63 - wavefunctions of extended states for zero parallel wavevector, as a function of distance along central axis, for individual bands as above. Only listed at final bias voltage in the problem (output for IWRIT>=9). CAUTION: these files could be large!
All of the parameters in the program can be varied using the input file FORT.9, with the exception of the array sizes (NRDIM,NVDIM,NSDIM, and NEDIM), the specification of an auxiliary function other than a hemisphere which defines a protrusion on the end of the probe tip, and the specification of a surface state density other than a uniform or Gaussian shaped one. Modification of those parameters can be accomplished by changing the source code of the program. The source code is available, in the files:
-
SEMITIP_V4.F -
main routine.
-
SEMISTIP2.F -
performs the detailed finite element solution of Poisson's equation.
-
POTCUT1.F -
takes a cut of the electrostatic potential along the central axis of the problem.
-
POTCUT2.F -
expands the profile obtained from POTCUT1.F, to produce a sufficient number of points for integration
of the Schrödinger equation.
-
INTCURR.F -
computes the tunneling current, by integrating the Schrödinger equation along the central axis.
-
SEMIRHO.F -
auxiliary routines for computing semiconductor charge densities.
-
SURFRHO.F -
auxiliary routines for handling surface charge densities.
-
CONTR.F -
plots contour lines of the computed potential.
All routines are written in Fortran. The source code can be downloaded
directly from the above locations, and it can be compiled and linked
on any platform. Sample input and output from the program is shown in the examples below.
Illustrative Examples of Running the Code
-
n-type GaAs(110), with intrinsic surface states.
-
n-type GaAs(110), with a positive contact potential between tip and sample.
-
n-type GaAs(110), with extrinsic surface states.
-
plotting wave-functions for localized states.
-
plotting potential profiles and contours.