PERT level commands


This command reference section deals only with RUMP commands which are specific to PERT.
PERT commands
COmposition Allows composition of a layer to be varied
EQuation Allows parameters in a diffusion equation to be varied
FWHM Allows the detector resolution FWHM to be varied
FUZZ Allows the fuzz parameter between layers to be varied
GO Starts multiple or single variable search
Help Types this listing
MEV Allows the incident beam energy to vary in search
MULtiple Selects multiple variable mode
NOrmalize Sets normalization window
PArms Display settings currently in effect
Return Returns from PERT to RUMP
SIngle Selects single variable mode (default
SPecies Allows composition of the species to be varied
STRAGgle Allows the straggle constant to vary in the search
THickness Allows layer thickness to be varied in search
VOLume Sets level of information messages (debug)
WIndow Sets the window for error minimization

The PERT subprogram is designed to work with the SIM module to search for a "best" fit to your data. It does so by varying one or more parameters of the sample description or experimental parameters (thicknesses, compositions, equation parameters, MEV, etc.) and comparing the resulting theoretical spectrum with the actual spectrum. PERT iterates the process until it a finds the best set of parameters to match the spectrum.

The definition of "best" fit is the fit which maximizes the Poisson likelihood function $\chi^2$ between the experimental spectrum and the simulation over a selected region called the error window. $\chi^2$ is computed using Poisson statistics. To avoid errors from inaccuracies in the charge integration, a second window, the normalization window, is also defined. The total number of counts over the normalization window are made equal by varying the CORR factor of the experimental data before $\chi^2$ is computed. See the references at the beginning of the RUMP manual for more details.

Before starting PERT, you must have

  1. Have your experimental data in Buffer 1. Unlike other commands, PERT currently requires that the comparison spectra be in buffer 1. Use COPY or MOVE to put the experimental spectra in buffer 1.
  2. Have a qualitatively correct simulation described within SIM.
Within PERT, you must
  1. Define the normalization window using the PERT NORM command. This should be in the substrate (or any other region) where the simulation does not depend strongly on the parameters to be varied.
  2. Select an error window using the PERT command WINDOW. The theory and the experiment will be compared only within this window.
  3. Make sure that the theory spectra never goes to zero within the error window since a zero will wreak havoc with the Poisson statistics. One ubiquitous source of background, pulse pileup in the counting electronics, can be used to assure non-zero counts everywhere. Set the rms Beam Current ( CURRENT) to a finite value to recreate background in the simulation.
  4. Select the parameters to be varied, either in SINGLE or MULTI variable mode. For each layer in the sample structure, PERT can vary the THICKNESS, the COMPOSITION of any element, the SPECIES composition or any EQUATION parameter. In the experimental parameters, PERT will search over the beam energy MEV or detector FWHM. PERT can also vary the STRAGGLE constant or FUZZ parameters.
  5. Let PERT run with the GO command. Once PERT completes its search, {\it you must} compare the resulting simulation with the experimental data and determine if the fit is appropriate or if better starting conditions to PERT are indicated.
Each of the commands are described below. They are arranged first by control of the search itself and then by parameters which can be specified for variation.


PERT
Brief: Enters PERT level from RUMP level
Syntax: PERT

From RUMP level, the command PERT will enter the PERT subprocessor. RUMP is automatically returned to if a command is given which the PERT subprocessor does not understand.


Help
Brief: Lists the known command to screen
Syntax: Help | ?

The HELP command will display the list of commands available within PERT sub-process. The listing is in a different format from other help listings in RUMP.


Hey, man, what next? pert help
 PERT subcommands are:
    HELP     types this listing
    SINGLE   Selects single variable mode (default)
    MULTI    Selects multiple variable mode
    WINDOW   sets the window for error minimization
    NORMALIZ sets the window for normalization
    PARMS    Display settings currently in effect
    THICKNES searches for best fit by varying thickness
    COMPOSIT searches for best fit by varying composition
    SPECIES  searches for best fit by varying species composition
    EQUATION searches for best fit by varying equation parameter
    MEV      searches for best fit by varying beam energy
    FWHM     searches for best fit by varying detector resolution
    STRAGGLE searches for best fit by varying straggling constant
    FUZZ     searches for best fit by varying fuzz parameter
    GO       Starts multiple variable analysis
    RETURN   returns you to RUMP (Your wish?)
Perturbation subcommand: 


Parms
Brief: Display settings currently in effect
Syntax: Parms

The PARMS command lists the current setting of the PERT system, including the normalization and error windows, the mode (single or multiple) and a list of variables which will be varied. This command should be used before the GO command to verify that PERT is properly set up. Frequent use of PARMS is strongly recommended.


Your wish? pert
Perturbation subcommand: parms

Channel range for error window: 200 to 600 Channel range for normalization: 100 to 200 Variable Quantity Search range: Min Max 1 beam energy 1.00000 3.00000 2 thickness of layer 1 1000.00 3000.00 3 composition of Ni in layer 2 1.00000 1.30000

Perturbation subcommand:


Return
Brief: Returns to the RUMP processor
Syntax: Return

Returns you to from PERT to RUMP command level.


Normalize
Brief: Sets the window for normalization
Syntax: Normalize <cursor_entry>

The NORMALIZE command sets a window in the spectrum for normalization of the experimental and simulation spectra. Within in this window, PERT will force the integrals of the simulation to exactly match the intergral of the experimental data within this window by varying the CORRection factor of the experimental buffer. This window must be defined, and should (1) lie in a region of the spectrum which will not vary rapidly with changes in the search parameters and (2) which is generally well simulated (no resonances, etc.). A portion of the substrate just below the active layers is usually a safe bet.


Window
Brief: Sets or adds a window for error minimization
Syntax: Window <cursor_entry>

The WINDOW command selects the window in the spectra over which $\chi^2$ error function will be evaluated. PERT will attempt to minimize the diffences between the experimental and simulation spectra only over this window -- all others regions of the spectra, except the normalization window, will be ignored. The simulation must not go to zero over the error window.


Single
Brief: Executes a single variable search
Syntax: Single <variable spec> <lower limit> <upper limit>

The SINGLE command places PERT in the single parameter search mode. The single mode is considerably more robust since there are no interactions between several parameters being simultaneously varied. In single mode, the search for the best fit occurs each time a search parameter is specified. The alternative is the MULTIPLE mode described below.


Multiple
Brief: Selects multiple variable search mode
Syntax: Multiple

The MULTIPLE command switches PERT into a multiple dimensional search mode. In multiple variable mode, the search commands add variables to a list of variables. The command GO actually starts the search through the n-dimensional space. To clear the list of variables, execute the MULTIPLE command again. The SINGLE command will return PERT from multiple to single mode.


Go
Brief: Starts multiple variable analysis
Syntax: GO

The command GO starts the multiple variable search. The current list of parameters will be searched to find the minimum deviation of the simulation spectrum from the experimental spectrum over the error window. The algorithm is described in the references at the beginning of the RUMP manual. GO is only active in the multiple mode. To clear the search list before a new GO, execute the MULTIPLE command again.


Composition
Brief: Adds a variable describing composition of a layer to search list
Syntax: Composition <layer> <element> <min> <max>

Varies the composition of a single element within a given layer. If the minimum and maximum range are identical, the variable is removed from the list of parameters to vary and the composition is set to the specified value.


Thickness
Brief: Adds the thickness of a layer to the search list
Syntax: Thickness <layer> <min> <max>}

Varies the thickness of the specified layer. If you set the min/max range of a variable to be null, for example THICK 1 350 350, that variable is deleted from the list and is set to the constant chosen.


Species
Brief: Adds the concentration of a diffusing species element to the search list
Syntax: Species <layer> <element> <min> <max>

Varies the composition of a single element within the species definition of a given layer. If the minimum and maximum range are identical, the variable is removed from the list of parameters to vary and the composition is set to the specified value.


Equation
Brief: Adds a parameter in the SIM equation of a layer to the search list
Syntax: EQUATION <layer> <parameter> <min> <max>

The EQUATION command allows the parameters used in the SIM diffusion (or impurity profile) equations to be varied. The correspondence between the parameter number and the actual meaning is documented in the EQUATION command under SIM. The parameter to a user equation can only be varied if you used $p(i)$ within the definition of the user function. If you set the min/max values for the variable to the same number, that variable is deleted from the list and is set to the constant chosen.


FWHM
Brief: Adds the FWHM for the detector resolution as a variable in the search parameter list
Syntax: FWHM <min> <max>

The command FWHM varies the detector resolution to obtain best fit. The error window for this command should only include the front edge of a surface element. Use FUZZ or STRAGGLE to simulation deep edges. FWHM and MEV are commonly fit together before any other parameters are varied.


Mev
Brief: Adds the incident beam energy (MEV) as a variable in the search parameter list
Syntax: Mev <min> <max>

The command MEV varies the incident energy defined by the experimental spectrum to obtain best fit. The error window for this command should only include the front edge of a surface element. FWHM and MEV are commonly fit together before any other parameters are varied.


Fuzz
Brief: Adds the fuzz parameter for a layer to the search parameter list
Syntax: Fuzz <index> <min> <max>

The FUZZ command allows the fuzz constant between layers to be varied to obtain the best fit. If you set the min/max values for the variable to the same number, the fuzz parameter will be set to the value and deleted. STRAGGLE and FUZZ are used to fit the back edges of a layer.


Straggle
Brief: Adds the straggle scaling factor to the search parameter list
Syntax: STRAGgle <min> <max>

The STRAGGLE command varies the straggle constant in the Bohr approximation to obtain the best fit. If you set the min/max values the same, the straggle constant will be set to the value and deleted. STRAGGLE and FUZZ are used to fit the back edges of a layer.


Volume
Brief: Sets the level of information messages printed during a search
Syntax: VOLume <level>

The VOLUME command is primarily intended for debugging complex search problems during development and beta testing. If enabled in production or debug versions, levels between 0 and 10 will increasingly print internal parameters and search parameters as a search is underway. Normally this command is ignored in production versions of the code.


Last modified: June 16, 1997
Michael O. Thompson (mot1@cornell.edu)