Type of presentation: Poster

ID-9-P-2852 Using Nion Swift for Data Collection, Analysis and Display

Meyer C. E.1, Dellby N.1, Dellby Z.1, Lovejoy T. C.1, Sarahan M. C.1, Skone G. S.1, Krivanek O. L.1
1Nion Co, Kirkland, WA, USA
sarahan@nion.com

Nion Swift is an open-source software platform for the collection, processing, quantification, visualization, and management of scientific data. Built on the popular Python programming language [1], Swift is written from the ground up to be extensible at every level. Although initially developed as software for controlling Nion electron microscopes and collecting and processing data from them, Swift has been designed to serve as a resource for the scientific community across a range of applications and operating systems.

Swift builds on an ever-growing library of Python tools such as NumPy and SciPy [2]. Since it is open source, users can examine the data workflow down to the source code level. All data is stored in standard formats such as TIFF or Numpy arrays.  Swift is designed to track data from collection to presentation, including relationships between data. All data is tagged with metadata such as details of the sample, the current user, and the instrument parameters. If an elemental map is produced from a spectrum image, Swift remembers from what larger data set the elemental map was produced, even if the elemental map is transferred to a colleague on another computer or network. It is then possible to return to the original data for adjustments if needed.

Processing in Swift can be performed  "live", so that the user can inspect the end results during an experimental session, and, if needed, make immediate adjustments to the experimental parameters. If an elemental map is degraded due to incorrect gain normalization of the EELS detector or poor signal-to-noise ratio, the problem can be noticed and rectified in the middle of the session.  The user can add new processing routines with Python and have multiple "live" processing and analysis items such as histograms, statistics, FFTs, or elemental maps, all visible during data collection.

The data storage and retrieval capabilities are likewise fast and automated. Swift provides powerful, extensible capabilities for sorting and filtering collected data. Data can be located from the user interface by session, sample, user, and other metadata. A community of Swift users is now contributing collection, processing and visualization modules to the software, a process that is helped by a well-defined submission procedure and guidelines for documenting the contributions. Examples of contributed modules will be shown at the meeting.

More information about Swift is available at [4].

[1] http://www.python.org/
[2] http://www.numpy.org/ and http://www.scipy.org/
[3] O.L. Krivanek et al., Ultramicroscopy 110 (2010) 935-945.
[4] http://nion.com/swift/


We are grateful to Prof. P.E. Batson for the use of the Nion UltraSTEM HERMES at Rutgers U.

Fig. 1: a) Swift acquiring a STEM HAADF image of the edge of a gold particle and of single Au atoms, b) Fourier-filtering it live with the filter shown at lower right (σ1 = 15% fN, σ2 = 7% fN, w2 = 0.14, where fN is the Nyquist freq.), c) live line profiles through (a), d) live line profile through (b).