WinSPA - the SPA-LEED software screenshot

I - Some general remarks

The surface analysis method of spot profile analysis low energy electron diffraction (SPA-LEED) was developed by Prof. M. Henzler and coworkers at the "Institut für Festkörperphysik" of the University of Hannover, Germany.

In the following, it is assumed that the reader is familiar with the basics of low energy electron diffraction (LEED), including the basics of diffraction, reciprocal space and how a spot-profile analysis LEED system (SPA-LEED) works in principle.

If this is not the case, it is strongly recommended that you gather those information from surface physics textbooks (such as the one by Henzler/Göpel and the one by Lüth).

You may start with the LEED overview article at wikipedia and the solid state physics script by Prof. Fumagalli, and then continue with the first pages of the comprehensive review article by Prof. M. Horn-von Hoegen, which is very a valuable resource for all advanced SPA-LEED users. A recent overview on SPA-LEED was published in the Landolt Börnstein by Prof. W. Moritz.

Overview of WinSPA

WinSPA's general user interface concept is a mixture between the screen oriented design of DOS or embedded OS applications and a window oriented software style. The result is similar to a multiple documents interface (MDI) application, except that a small navigator form replaces the main (or "parent") window and that each scan window is perfectly suited for use in full screen size.

All different scan mode windows are explained in detail in different sections of this help. In order to achieve maximum consistency, many graphical user interface (GUI) elements of different scan forms are very similar or even the same. These GUI elements are described in a separate section.

To aid the navigation through the program, there is the navigator window which looks like this:

All scan windows, tools and settings of WinSPA can be accessed either via the tool buttons or via the main menu. The meanings of the - hopefully due to the small icons already self-describing - tool buttons are:

Button name Icon Description
1D scan Open a 1D scan form.
2D scan Open a 2D scan form.
Spot tracker Open/Close the spot tracker form.
RSM scan Open an RSM form.
Timeplot Open a Timeplot form.
Note: This feature is not yet implemented.
I(V) scan Open an I(V) scan form.
Note: This feature is not yet implemented.
Opti scan Open/close the Opti form.
SEM scan Open/close the SEM scan form.
Stopwatch Open/close the Stopwatch form.
Rate meter Open/close the Ratemeter form.
Voltages meter Open/close the voltage meter form.
Scan engine messages Open/close the scan engine messages form.
k-space calibration Open/close the k sensitivity calibration form.
R-space calibration Open/close the R sensitivity calibration form.
Image shift calculation Open/close the image shift calculation form.
Manual energy control Open/close the manual energy control form.
Deflection offsets Open/close the manual offset form.
k-space calculator Open/close the k calculator form.
Software settings Open/close the software settings form.
Macro commander Open/close the macro commander form.
Note: This feature is not yet implemented.
Offline help Open the offline help.
Online help Open the online help.
About WinSPA Open the "about" form.
License information Open the license information form.

There are some things you should know about the operational approach of WinSPA before you start to use it. While the simple use of 2D scans and 1D scans is very similar to Spa4.1d (and even the reciprocal space map hopefully appears intuitive), there are several not obvious features of WinSPA which could support you substantially in your daily work with SPA-LEED, which are described below.

Multi-Threading

WinSPA makes extensive use of threads, i.e., software modules which can operate simultaneously and independently. Since in principle a SPA-LEED system can obviously not operate with different energies, deflection voltages and detectors at the same time, the threads have to share the hardware. The purpose of the WinSPA scan engine is to organize this sharing of the hardware resource "SPA-LEED" between different scan threads.

The scan engine allows threads within WinSPA to access the data acquisition hardware for a single measurement sequence (line scan(s), point scan(s)). Even though the user does not have to deal directly with the functionality of the scan engine, there are several settings accessible via GUI elements in the different scans that control the behavior of the scan engine.

The scan engine is mainly a combination between a semaphore, a queue and a dispatcher; any thread within WinSPA that wants to get access to the hardware can request scan time. The request is then put into a queue and it is executed when it gets to the first position in the queue. Each scan task has to wait until its request is granted and inform the scan engine as soon as it has finished its scan sequence (cooperative multitasking).

In many scans there is a switch "atomic" which means that the scan should not be divided. A non-atomic 2D scan, for example, will give back control to the scan engine after each single scan line and then directly requests further scan time. An atomic 2D scan will report "finished!" only after the very last scan line. If only one scan thread is running, there is nearly no difference for the user. But if more than one scan thread is running, there may be a large difference: You may, for example, use a large and high-gate-time 2D scan as non-atomic thread in the background and work in parallel on setting up a detail scan by using small atomic 2D scans.
The requests and the scheduling of the scan engine can be observed in the "scan engine messages" window.

Info: For more details about multithreading with Delphi in general see the Delphi multithreading tutorial by Martin Harvey.

Reciprocal space coordinates

The native reciprocal space coordinates for a SPA-LEED system are its deflection and acceleration voltages: Ux, Uy and E. Those units are, however, basically only "arbitrary units" if a real metric of the reciprocal space is the objective. The Spa4.1d software allowed the definition of a "sensitivity" factor for the conversion between V (Volts) and %BZ (percent of the Brillouin zone).

Since the sensitivity depends on the type of the sample, WinSPA takes the reciprocal space coordinates one step further and allows inverse Angstroms as reciprocal space coordinates. The path of calculation is as follows: The user (you) has to calibrate his SPA-LEED system once with a known sample at a well defined and reproducible sample position. During this calibration the k sensitivity factor in the "software settings" window should be defined. After that (again, given that the sample position is fairly reproducible) you can use both coordinates, inverse Angstroms and Volts.

If you also know your sample type (lattice constant and step height), you can enter these values in the "software settings" windows as well. WinSPA then can also operate with correct %BZ.

It is similar for the kz reciprocal space units. The scattering phase S=Δ/λe (defined by the path length difference Δ of electron waves scattered at neighboring terraces, see below) for the (00) spot is calculated from the step height of the sample surface and the angle of incidence at Ux=Uy=0 (mechanically centered specular spot).

Note: All reciprocal space units except the native units (Volts, electron Volts) depend on correct calibration of the k sensitivity (inverse Angstroms) and on the correct sample setting (%BZ, scattering phase).

Note: The actual sample settings are saved in each WinSPA file. If you have used incorrect settings for the sample you will be able to correct this afterwards.

Standard operating procedures

There are a few procedures that the user should go through from time to time in order to ensure that the system is correctly aligned: WinSPA offers many automatic corrections and calibrations which could become counter-helpful if they are not set up properly. Therefore it is strongly recommended to read the respective section of this help.

The spot tracker

The spot tracker is not a scan in the sense that it requests scan time; instead, if the spot tracker is running it is activated each time the scan engine dispatcher is in control of the SPA-LEED. You can think of the scan engine's queue as a priority queue with the spot tracker having the highest priority.

The operation of the spot tracker falls between that of a scan type and a global deflection setting. The Spot Tracker can be used to measure the intensity of one reference and up to six additional diffraction spots versus time. In order to do so, the exact position of the reference spot is re-determined each time before a point scan is executed on the selected diffraction spot. Every point scan in the spot tracker is thus executed relative to the reference spots to compensate a possible slow motion of the whole diffraction image relative to the detection system.

The displacement of the reference spot compared to its initial position can be used as a deflection offset in other scans ("absolute"/"dependent on spot tracker").

Note: Since the possible reasons for the motion of diffraction spots can be very different (mechanical drift, sample deformation, electromagnetic fields) it is not possible to calculate the drift Δx1 at a given energy E1 if the drift Δx2 of a diffraction spot at an energy E2 is known. Therefore, you should only use the spot tracker as a reference for other scans, if they are executed at the same electron energy.

Graphic tools/data exchange between scans

In all scan windows you'll find a panel labeled "Tools" with a selection of graphic tools for a quick data evaluation. The graphic tools are not designed for the final data analysis (WinSPA is not a data analysis software, please use designated software packages like

or other similar software for this purpose), but rather for a quick determination of reciprocal space coordinates/sections/areas in order to plan the next alignment step or the next scan.

You can exchange data (such as reciprocal space coordinates of detailed scans around a selected diffraction spot) between scan windows by using the "copy/paste to clipboard" buttons that are available on the upper right of all scan windows as well as on the windows that belong to the graphic tools.

Logfile, Stopwatch and printouts

Data acquisition and documentation are closely related to each other. WinSPA supports your effort to keep an account of your measurements with some quite simple but rather effective tools.

In the logfile all scan actions (start/stop of scans) and additional comments are stored along with the precise time. You can evaluate this later and so you do not need to write down each single scan immediately in your lab book. It is recommended that you store the logfile in the data sub-directory after each measurement.

The stopwatch mainly defines a local time frame and helps you to determine correct deposition times etc. without manual calculation. Also, you can directly add a comment ("Log this!") into the logfile in the stop watch window.

For a documentation of the most important scan you can use the "print out" function in the right-click context menus. This will print an image of the scan "as on screen" together with all parameters of the scan.

Latest updates and further information about WinSPA

For the latest information about WinSPA please visit the WinSPA homepage in the world wide web.

Helpful resources of further information about SPA-LEED can be found at

Other DAQ software for SPA-LEED

Since the invention of the original SPA-LEED, several measurement software implementations have been developed, some of which are still available.

  • The classic DOS software Spa4.1d, which was for many years the standard data acquisition software for all Omicron SPA-LEED systems.
  • The SPA-LEED software by Dr. M. Escher of the group of Prof. B. Poelsema at the University of Twente, formerly available at www.spaleed.com.
  • The open-source scanning microscopy package GXSM by Dr. Percy Zahl.
  • A LabView-based program at the university of Osnabrück.