ATHENA User s Guide. Bruce Ravel bravel@bnl.gov

Size: px
Start display at page:

Download "ATHENA User s Guide. Bruce Ravel bravel@bnl.gov http://cars9.uchicago.edu/~ravel/software/exafs/"

Transcription

1 ATHENA User s Guide Bruce Ravel bravel@bnl.gov Document version 1.5 for athena version July 1, 2009

2 Just as Phaeacian men excel the world at sailing, driving their swift ships on the open seas, so the women excel at all the arts of weaving. That is Athena s gift to them beyond all others a genius for lovely work, and a fine mind too. Homer, The Odyssey, Book 7

3 athena is copyright c Bruce Ravel This document is copyright c Bruce Ravel. This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, visit or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. You are free: to Share to copy, distribute, and transmit the work to Remix to adapt the work Under the following conditions: Attribution. You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). Share Alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under the same, similar or a compatible license. Any of these conditions can be waived if you get permission from the author. For any reuse or distribution, you must make clear to others the license terms of this work. Any of the above conditions can be waived if you get permission from the copyright holder. Nothing in this license impairs or restricts the author s moral rights. Your fair dealing and other rights are in no way affected by the above. This is a human-readable summary of the Legal Code (the full license).

4 4 This work is licensed under the Creative Commons Attribution-ShareAlike License.

5 Contents 1 Forward Layout and typesetting conventions Acknowledgements Data citations Installing Athena on your computer Building this document from source Introduction to Athena First Look at ATHENA Getting help Data import Column selection dialog Data types and energy units Multi-element detector data Project selection dialog Multiple data set import Reference channel Preprocessing data Rebinning quick scan data Other pre-processing chores File type plugins Overview of how plugins work Example plugin Namespace Required methods and variables Athena s plugin registry Reformatting and data processing System plugins and user plugins Miscellaneous advice on plugins Normalization and the AUTOBK Algorithm Normalization The normalization algorithm The flattening algorithm Getting the post-edge right Getting the pre-edge right Measuring and normalizing XANES data Understanding Fourier transforms The Autobk Algorithm and the Rbkg Parameter

6 CONTENTS 4.4 Spline clamps and k-weight in background removal Spline clamps The effect of k-weight on background removal The interaction between spline clamps and k-weight Spline range in background removal Plotting Your Data in ATHENA Plotting space tabs Plotting in energy Plotting in k-space Plotting in R-space Plotting in q-space Spectral resolution and k-range Stacked plots Indicators The point finder Group specific plot parameters Other plotting features Zooming Cursor Plotting I Merged groups and the standard deviation The collapse button Athena s User Interface Using the group list Copying groups Reorganizing the group list Information about items in the group list Using the mouse in the group list Detector groups and background groups Marking groups Using regular expressions to mark groups Pluck buttons Plot styles Using different k-weights Frozen groups Palettes Setting user preferences Setting parameters in Athena Constraining parameters between data groups Constraining individual parameters Constraining groups of parameters Constraining all parameters Setting E Other ways of setting e Default parameter values This work is licensed under the Creative Commons Attribution-ShareAlike License.

7 CONTENTS 8 Data export Column output files Project files The project file format and compatibility with older versions Parameter report files Data processing Calibrating data groups Aligning data groups Dispersive XAS The dispersive data processing algorithm Using the dispersive data correction Deglitching data Truncating Data Rebinning data groups Smoothing data Convoluting data groups Deconvoluting data groups Self-absorption approximations Correcting XANES data Correcting EXAFS data Information depth Algorithm references Removing multi-electron excitations Merging data groups Data analysis in Athena Linear combination fitting Fitting a single data group Constraints and modifications to the fit Fitting, statistics, reports Constraining linear combination fit parameters between groups Batch processing Combinatorial fitting using many standards Peak fitting Log-ratio/phase-difference analysis Principle component analysis Difference spectra Worked examples Basic data processing A hard background removal problem Getting started Examine the theory A simple fit to the first coordination shell Using the fit as a background removal standard Understanding Linear combination analysis Examining the data Improving the fit Understanding the fit Combinatorial analysis This work is licensed under the Creative Commons Attribution-ShareAlike License. 7

8 CONTENTS Analyzing the data series Hephaestus Description Periodic Table of Absorption Data Absorption Lengths of Compounds Periodic Table of Chemical Data Absorption of Ion Chambers Emission Line Transitions Edge and Line Finders Complex Scattering Factors for the Elements Initialization file Keyboard shortcuts Bugs and Missing Features Credits This work is licensed under the Creative Commons Attribution-ShareAlike License.

9 Chapter 1 Forward The best way to learn how to use athena is to use athena. Poke at the buttons, poke at the menus, try things just to see what happens. And above all, remember the physical and mathematical meanings of your data and of the data analysis techniques and think about how actions in athena relate to those meanings. athena is a powerful and versatile program capable of supporting almost all of your common (and not-so-common) XAS data processing chores. It is not, however, a particularly intuitive program. I doubt that any XAS program could be intuitive. On top of that, athena has accumulated lots of features over the years. Many of these features are necessary for high-quality data processing, others are bells and whistles intended to make data processing more convenient or more fun. This document attempts to be a comprehensive overview of all of athena s features. There are lots of words, but also lots of pictures. Feel free to jump around and to focus on the parts most directly relevant to your immediate needs. I hope you find this document and the program helpful. 1.1 Layout and typesetting conventions Here is a summary of fonts, colors, and symbols used to denote different kinds of text. Note that some of these may appear the same in certain presentation media. Filenames look C:like\this. The names of parameters for data processing look like this. Emphasized text looks like this. Bold text looks like this. Links to web sites look like this. Internal links look like this (Sec. 1.1). Keyboard shortcuts look like this: Ctrl - q. This example means to hit the q key while holding the Control (or Ctrl) key. Program names from the ifeffit family look like this: athena. References to athena s preferences are written like this: Bkg fraction. To modify this preferences, open the bkg section of the preferences dialog (Sec. 6.8 on page 76) and then click on fraction. 9

10 1.2. ACKNOWLEDGEMENTS Points that require special attention are written inside of attention-grabbing boxes. This symbol indicates a section describing one of athena s features that I consider especially powerful and central to the effective use of the program. This symbol indicates a section with difficult information that newcomers to athena might pass over on their first reading of this document. The html version of this document makes use of HTML 4.1 character entities (mostly Greek symbols) and will not display correctly in very old browsers. POD the native documentation for Perl and the format used internally in athena is not able to display graphics. Everywhere that a graphics file is displayed in the other document formats, a bit of text showing the name of the image file and the caption of the figure is displayed in the POD. Here is what it looks like when one of the pod documents is displayed by a pod viewer: (Image file: athena_main.png) The parts of the ATHENA. In most cases, this will convey sufficient information given that you will have athena open in front of you. If you need to see the picture, you can seek out the image file by name or look at the corresponding part of the html or PDF versions of the document. 1.2 Acknowledgements I have to thank Matt Newville, of course. Without ifeffit there wouldn t be an athena. One afternoon over coffee, Julie Cross and Shelly Kelly lit the spark that eventually lead to this document. Some content of this document was inspired by an upcoming XAS review article by Shelly Kelly and Dean Hesterberg, which I have had the pleasure of editing (and, apparently, swiping from). I have a huge debt of gratitude to all the folks on the ifeffit mailing list. Without the incredible support and wonderful feedback that I ve received in the last six years athena would be a shadow of what it is today. The following great software tools were used to create this document: The Template Toolkit, a really fun, really powerful templating system that was used to create this entire document The Perl programming language and Syntax::Highlight::Perl from the CPAN repository The Emacs and XEmacs text editors along with tt-mode and the simply wonderful Emacs Code Browser The GIMP image editor with frequent use of the Xach effect shadowing plugin Various tools from the KDE desktop, including KColorChooser and KSnapshot All screenshots were made of athena or the PGPLOT window on my KDE desktop, mostly using some version of the Orangio theme for dekorator. The screenshots of spreadsheets made from a report file (Sec. 8.7 on page 90) and an LCF fit report (Sec on page 147) are displayed in OpenOffice. The images of the Tholos temple on the front page and the Klimt painting Pallas Athena in the navigation box of the html document are from The image used as the athena program icon is from Heracles and Athena. Tondo of an Attic red-figure kylix, BC, from Vulci from the Staatliche Antikensammlungen in Munich, Germany. The image is in the public domain and was found on Wikimedia Commons. The image used as the hephaestus program icon is from Reubens Vulcan forging Jupiter s thunderbolts from the Museo Del Prado, Madrid Spain. This image is also in the public domain and also from Wikimedia Commons. 10 This work is licensed under the Creative Commons Attribution-ShareAlike License.

11 CHAPTER 1. FORWARD 1.3 Data citations The copper foil data shown here and there are the data that Matt Newville, Yanjun Zhang, and I measured one day back in 1992 that has, inscrutably, become the copper foil data shown and referenced in a large fraction of the XAS theory literature. The platinum catalyst data shown in the difference spectrum section (Sec on page 125) and MoO 3 data shown in the worked examples section (Sec on page 136) were donated by Simon Bare. The MoO 3 worked example (Sec on page 136) was based on a tutorial written by Shelly Kelly. The gold edge data shown in many places throughout this document are taken from measurements published as M. Lengke, et al., Environ. Sci. Tech., 40:20, (2006) p The gold oxide data shown in the smoothing section (Sec. 9.7 on page 102) were donated by Norbert Weiher. The iron foil data shown in the convolution section (Sec. 9.8 on page 104) and elsewhere were measured by me while I was commissioning NSLS beamline X11B in The sulphate data shown in the self-absorption section (Sec on page 106) were donated by Zhang Ghong and come with Daniel Haskel s Fluo program. The copper data shown in the same section (Sec on page 106) come with Corwin Booth s RSXAP program. The data in the dispersive XAS section (Sec. 9.3 on page 95) were provided by Giuliana Aquilanti, beamline scientist at ESRF s ID-24. Data on a hydrated uranyl phosphate that appear in several places are the U L III standard used by my former research group. Spectra from this standard have appeared in many publications from that group. The U 3 O 8 sample shown in the the deglitching section (Sec. 9.4 on page 98) are from the group s standards library. Tin edge data which appear in several places are from C. Impellitteri, O. Evans, B. Ravel, J. Environ. Monit., 4, (2007) p Data on PbTiO 3, BaTiO 3, and EuTiO 3 are taken from my own PhD thesis. 1.4 Installing Athena on your computer Linux, BSD, and other unixes It is not especially hard to build athena from source code. The procedure is explained in detail on this web page: Debian and debian-based Linux Add the repositories listed on this page: This can be done either by editing /etc/apt/sources.list directly or by adding repositories using the system package manager (e.g. Adept on ubuntu). Once these are included as repositories, the horae package, which contains athena, can be installed. Windows An MSI installer package is available at Installation is very simple. Just double click on the installer and follow the instructions. If you are installing onto a machine for which you do not have administrator privileges, you should choose a part of the disk that belongs to you when asked about the installation location. For those with ActiveState Perl installed on their windows machines, the horae source code can be installed using the Perl Package Manager. In the Perl Package Manager, select Preferences from the Edit menu, then click on the repositories tab. Add ravel/ppm/ as a new repository. The horae package should now show up as an installable package. This work is licensed under the Creative Commons Attribution-ShareAlike License. 11

12 1.5. BUILDING THIS DOCUMENT FROM SOURCE Macintosh An installer package is available at Installation is very simple. Just double click on the installer and follow the instructions. 1.5 Building this document from source Obtaining the document source The source files and all images files for this document can be downloaded by SVN. To grab the source, you will need an SVN client on your computer. This command checks a copy of the source out and downloads it onto your computer: svn co This document is written using The Template Toolkit. It requires the perl interpreter and a fairly complete installation of version 2 of The Template Toolkit to build. If TT2 is not available as a package for your system (it is available as a pre-compiled package for many versions of Linux; a ppm file for ActivePerl on Windows exists; a Fink package for OSX exists) it can be downloaded from its website and installed by hand or downloaded using perl s CPAN utility. You will also need to install the Image::Size, and Syntax::Highlight::Perl modules. Compiling the L A TEX version of the document will require a fairly complete L A TEX installation as I make use of many styles, including amsmath, amsfonts, floatflt, fancybox, fancyhdr, keystroke, varioref, and hyperref. (tetex compiles the document without any problem. The texlive package may complain about not being able to generate two postscript font sets. Those two warning can be safely ignored by simply hitting when pdflatex pauses to complain. As far as I can tell, ignoring this problem has no impact on the document. I have no experience building the PDF document on any system other than linux.) Once TT2 and the other modules are installed, building the document should be quite simple. TT2 s ttree program is used to recurse the through the directory structure containing the templates. The bin/build, bin/tex, and bin/pod scripts are wrappers around ttree. They invokes a number of important command line options and pass any further command line options to ttree. TT2 was chosen for this project because it is an excellent templating tool. A templating tool was chosen because the strong separation of format and content was attractive to me. The template source is used to generate html and PDF versions of the document as well as the pod format used by athena s internal document viewer. Contributions to the document are extremely welcome. The very best sort of contribution would be to directly edit the source templates and commit your changes to the SVN repository. The second best sort would be a patch file against the templates in the repository. If TT2 is more than you want to deal with, but you have corrections to suggest, I d cheerfully accept almost any other format for the contribution. (Although I have to discourage using an html editing tool like FrontPage to edit the html directly. Tools like that tend to insert lots of additional html tags into the text, making it more difficult for me to incorporate your changes into the source.) Building the html document After downloading and unpacking the source for this document, you must configure it to build correctly on your computer. This is simple:./configure To build the entire document as html./bin/build -a 12 This work is licensed under the Creative Commons Attribution-ShareAlike License.

13 CHAPTER 1. FORWARD Individual pages can be built by specifying them on the command line:./bin/build bkg/norm.tt forward.tt Building the LaTeX document The L A TEX document is built by./bin/tex -a cd tex/ pdflatex athena.ltx pdflatex athena.ltx You need to run pdflatex two or three times to get all of the section numbering and cross referencing correct. The varioref package, used to handle cross-referencing, is sometimes a little fragile. If you see the following error message: simply hit return. The message should disappear when you recompile the document.! Package varioref Error: vref at page boundary (may loop). A version of the PDF document suitable for printing on a grayscale (i.e. without color) printer can be made using this sequence of commands: cd images/./images/convert_to_gray cd.././bin/texbw -a cd texbw/ pdflatex athena.ltx pdflatex athena.ltx This first bit converts all of the images used in the document to grayscale using ImageMagick. The texbw version of the document is nearly identical to the normal L A TEX document, except that the style file and several templates are changed to remove all color from the document. Compiling the version in the texbw/ directory results in a PDF file that is suitable for a non-color printer. This output target was created for the 2008 APS summer school. The cost saving of printing the athena document in black-and-white rather than color for each of the students was quite significant. Building the pod document The pod document, athena s internal document format, is built by./bin/pod -a Individual pages can be built by specifying them on the command line:./bin/pod bkg/norm.tt forward.tt Using the document with Athena The pod and html document files can be used by athena, but they must be installed in the correct location. To do this, run the install script that comes with the document package. This will use an athena module to determine the correct location, then copy over all relevant files. Once installed athena will display the html document in either a web browser or a pod viewer depending on the values of the Doc prefer and Doc browser preferences. This work is licensed under the Creative Commons Attribution-ShareAlike License. 13

14 1.5. BUILDING THIS DOCUMENT FROM SOURCE 14 This work is licensed under the Creative Commons Attribution-ShareAlike License.

15 Chapter 2 Introduction to Athena athena is an interactive graphical utility for processing EXAFS data. It handles most of the common data handling chores of interest at the beamline or for preparing your data to begin analysis. athena is a graphical front end to Matt Newville s ifeffit library written entirely in the Perl programming language and using the PGPLOT graphical library for data display. It is being developed on Linux and tested on Windows XP, but should work on any unix-like, Windows, or Mac operating system. athena is designed to provide high quality analysis with a highly usable interface. It allows very fine grained control over the processing and plotting of individual data sets while still enabling the processing and plotting of large quantities of data. Among athena s many, many features, you will find: Convert raw data to µ(e) File import plugins for reading arbitrary data files Process and plot multiple data files simultaneously Merge data in energy, k-, R-, or back-transform k-space Energy calibration Align data scans with or without a reference channel Deglitch µ(e) data Self-absorption corrections for fluorescence spectra Compute difference spectra Fit linear combinations of standards to XANES or EXAFS data Fit peak functions to XANES data Log-ratio/phase-difference analysis Background removal using the AUTOBK algorithm Normalization of XANES data to the Cromer-Liberman calculations Forward and backward Fourier transforms Save data as µ(e), normalized µ(e), χ(k), χ(r), or back-transformed χ(k) Save project files, allowing you to return to your analysis later... and much, much more! 2.1 First Look at ATHENA When athena first starts, something like Figure 2.1 on the next page appears on your computer screen. The athena window is divided into several parts. We will discuss each of these parts and give each a name. 15

16 2.2. GETTING HELP Figure 2.1: The parts of the athena. At the top of the window is a menu bar. This works much like the menu bar in any program. Much of the functionality in athena is accessed through those menus. The largest part is the main window, highlighted in the picture above with a red border. The red border does not happen in the real program it s there simply to clarify this discussion. The main window is divided into six parts. The top box identifies the file name of the current project file (Sec. 8.2 on page 87). Below that, are various parameters identifying the current data group. The next three boxes are used to define the parameters associated with normalization and background removal, forward Fourier transforms, and reverse Fourier transforms. At the bottom of the main window are a couple of parameters associated with plotting. At the bottom of the screen is the echo area. This very important space is used by athena to communicate with you, the user. This space is used to display informational messages while athena is working on your data, error messages when it runs into trouble, and other kinds of messages. When athena starts, it displays a hint from it s built-in list of hints. A new hint can be seen at any time by pressing Ctrl - h. The large blank area on the right is the group list area (Sec. 6.1 on page 64). As data are imported into athena, they will be listed in this space. Access to the data already imported is made by clicking in this space. Above the group list area are the mark buttons (Sec. 6.2 on page 68) The blank space next to the mark buttons is the modified project indicator. This indicator shows when your project has been modified and needs to be saved. Below the group list area are the plot buttons. Below that are the buttons used to set the k-weighting for use when plotting in k-space or when making a forward Fourier transform. Below that are various other plotting controls (Sec. 6.2 on page 68) in the plotting options section. After importing several data files, each is made into a data group and listed in the group list. The label and the check button next to it are the main controls for interacting with data in athena. 2.2 Getting help 16 This work is licensed under the Creative Commons Attribution-ShareAlike License.

17 CHAPTER 2. INTRODUCTION TO ATHENA Figure 2.2: athena, after importing some data. There is quite a bit of help built right into athena. Typing Ctrl - m or selecting Document from the Help menu will display athena s document in a web browser or in the built-in document viewer. The Document sections submenu allows you to jump directly to a particular topic. Also, many parts of the program have a button which will take you directly to the part of the document that describes that part of the program. You can select the format in which the documentation is displayed by setting the Doc prefer preference. Because it has all the images, the html document is probably the better choice. Users on Windows and the Mac will have the html document displayed in whatever browser is the system default. For Linux, BSD, and other unix users, athena attempts to find a suitable browser. You can explicitly set the browser from a list of common (and not so common) options by setting the Doc browser preference. This list includes every GUI browser option that Bruce was aware at the time this paragraph was written, including several options from the Mozilla ecosystem. Another feature that you can use to explore different parts of the program are the demo files. Demo files are normal project files (Sec. 8.2 on page 87) that get installed when you install this software on your computer. Each demo file demonstrates a particular feature of the program. When you select Import a demo project from the Help menu, a file selection dialog opens to the location of the demo projects. When you select one, its project journal (Sec. 6.7 on page 74) is opened after its data is displayed. The journal explains how to use the data to learn about the topic covered by that demo. This work is licensed under the Creative Commons Attribution-ShareAlike License. 17

18 2.2. GETTING HELP 18 This work is licensed under the Creative Commons Attribution-ShareAlike License.

19 Chapter 3 Data import athena is very versatile in how she reads in data files. Pretty much any data in the form of columns of numbers can be successfully read. With a few exceptions, athena relies upon ifeffit s read data() command to handle the details of data import. ifeffit is clever about recognizing which part of a file is columns of numbers and which part is not. In the following, I ll explain how the read data() command interprets files, explain the limits on its and athena s abilities to interpret a data file, and discuss the kinds of manipulations of data that can and cannot be performed by athena as data are imported. athena expects data of one of a few types. Column data in which the columns represent such things as the energy grid and the scalars measured during the experiment are the most common sort of data that most people use import into athena. athena s column selection dialog is used to convert the raw scalars into µ(e) data. Other common kinds of data files that might be read into athena are files that contain µ(e) or chi(k) data in columns or the output files from Feff, xmu.dat and chi.dat. Here is an example of a data file that will make athena as happy as can be. There are some header lines, followed by a line of dashes, followed by a line of column labels, followed by lines containing columns of data. # X15B project: MT 9/23/04 # original file: STD1.001 # unpacked from original data as a sequence of 4-byte floats # # energy I0 narrow wide etc... In this example of a perfectly formatted file, the header lines, the line of dashes, and the column labels line are all preceded by a hash (#) mark. ifeffit is thus able to recognize these as header lines. Since ifeffit recognizes them as such, athena will store them in the project along with the data. Because there is a line of dashes and because it is followed immediately by column labels, athena is able to use these labels in the column selection dialog. A few other common US keyboard symbols, such as also be understood as marking header lines. The numbers in the columns can be integers, floats (such as 1.234, ,.1234 or ), or exponentials (such as 1.23e45 or -1.23E-45). Anything interpretable as a number in the C programming language will be interpretable in this context. The columns of numbers go to the end of the file. There is no text following the data. When data is recorded as described above, it will be fully utilized by athena. The headers will be recorded, the column labels will be used, the data will be interpreted. athena can, however, accommodate significant deviation from the format described above. 19

20 If the header lines are not marked by a # or some other recognizable marking character, ifeffit will not be able to recognize headers or column labels. As long as no text follows the data, the columns will still be understood as columns of data and the data can be imported by Athena. If the line of dashes is missing, again the headers and column labels will not be recognized, but the columns of data will be. If no headers are in the file, the columns of data will still be understood as data. athena expects that the data are recorded as a function of energy and that one of the columns contains energy values. The assumption is that the first column is the energy column, but that can be changed in the column selection dialog. athena works in ev. If data are recorded in kev, there is a menu in the column selection dialog that must be set accordingly. Here are some operations that can be performed as data is imported. 1. Data can be imported as a function of pixel position on an area or linear detector. 2. Data from a multi-element detector can be summed on the fly. 3. Data from a multi-element detector can be imported such that each detector channel is imported into its own data group. 4. Data can be negated, i.e. multiplied by A reference channel can be read from the the same file. 6. Data can be preprocessed. That is, data can be truncated, deglitched, aligned to a standard, and have its parameters constrained to a standard Here are some operations that can be handled using the Plugin architecture (Sec. 3.6 on page 31). 1. Conversion from wavelength to energy. 2. Conversion from encoder reading or motor steps to energy. 3. Conversion of data in a binary format 4. Dead-time corrections using columns from the data file. 5. Any math expression more complicated than sums of columns in the numerator and denominator, e.g. plugins allow you to multiply the If column by 7 and divide by the sine of the I0 column, if that s what you want. If some of the criteria for the data file format are not met, for example if there is text following the data columns or if you need to perform one of the operations not yet supported, you will need to process you data before trying to import into athena. There are examples of data files that athena will process before sending off to ifeffit for import. An example is the data file format from beamline X10C at NSLS. Files from that beamline cannot be imported as written by ifeffit s read data() command. athena will recognize such a file and process it as needed before importing it. This can be done with other beamlines. You should contact Bruce if you are the beamline scientist or a frequent user of some beamline which writes data in a way that read data() cannot import. As a final comment, I would encourage beamline scientists and the authors of data acquisition software to consider their users when designing data file formats. While I certainly will not say that beamlines should be required to accommodate athena or even that beamline staff have any obligation to recommend athena to their users, the truth is that athena is becoming an increasingly common tool in the EXAFS community. The format that best serves athena is actually a fine format that can be imported by a very wide variety of EXAFS software, plotting software, spreadsheets, and other programs. It s a good format and your users would be well served by your adopting it. 20 This work is licensed under the Creative Commons Attribution-ShareAlike License.

21 CHAPTER 3. DATA IMPORT 3.1 Column selection dialog To import a data file, select Open file from the File menu or type Ctrl - o. A file selection dialog opens. On my Linux computer, it looks like Figure 3.1 Figure 3.1: The file selection dialog on a Linux computer. It looks somewhat different on Windows, but behaves the same. It allows you to navigate your disk to find the file you want to import. Once you find that file, click on it then click on the Open button. Once you have selected a file to import the column selection dialog, shown in Figure 3.2 on the following page, appears. On the right side of this dialog, the contents of the data file are displayed. This allows you to examine the file to help you figure out which columns should be imported to turn into the µ(e) data. On the left are various control for specifying which columns contain the energy values and which contain the signals from the various detectors. Typically, the signals from the detectors are saved to disk as columns of numbers. These columns need to be combined depending on the nature of the experiment. For a transmission experiment, the incident channel is divided by transmission channel and the natural log is taken at each point. For fluorescence data, the fluorescence channel is divided by the incidence channel. Electron yield data is like fluorescence data the yield channel is divided by the incident channel. The controls in the tabs at the bottom left are the discussed in later sections. In the example shown, the incident channel is, for some reason, called mcs3. Since this is transmission data, I have checked the mcs3 button for the numerator. The transmission channel is called mcs4 and its button is checked for the denominator. As you check the buttons, a couple of helpful things happen. The first is that equation for how the columns combine to form µ(e) is displayed in the box below the column selection buttons. Also as you check buttons, the data are plotted. If you have selected the correct columns and chosen the numerator and denominator correctly, the plot will look like XAS data. If the plot is upside-down, then you need to switch the numerator and denominator. If the plot doesn t look like XAS at all, you need to try some of the other channels. I chose this example because the columns are labeled somewhat confusingly. Often the columns will be labeled in the file more obviously with names like I0 or It. In this case, we either need to know what the columns mean or patiently click through the buttons to figure it out. As a last resort, you may need to ask the beamline scientist! Data types and energy units This work is licensed under the Creative Commons Attribution-ShareAlike License. 21

22 3.1.1 Data types and energy units Figure 3.2: The column selection dialog. Occasionally, athena needs a bit more information to correctly interpret your data correctly. The data types menu is shown in Figure 3.3. The default is for data to be imported as µ(e). Figure 3.3: Data types in the column selection dialog. The other choices are: norm(e) : µ(e) data that have already been normalized in some other way. These data will not be normalized by athena xanes(e) : µ(e) data measured over a limited data range and for which you do not need to look at the χ(k) chi(k) : χ(k) data, that is data that have already been background subtracted from µ(e) detector : data that are not µ(e) but which you may want to plot in energy xmu.dat : the xmu.dat file from feff 22 This work is licensed under the Creative Commons Attribution-ShareAlike License.

23 CHAPTER 3. DATA IMPORT chi.dat : the chi.dat file from feff If you make a mistake and import your data as the wrong data type, you can change between any of the energy-valued (µ(e), normalized µ(e), XANES, or detector) record types at any time by selecting Change record type from the Group menu and selecting the correct choice from the popup dialog, Figure 3.4. This dialog cannot, however, be used to change χ(k) data to an energy-value type or vice-versa, nor to change one of the feff types to a non- feff type. Figure 3.4: Changing the data type after the data are imported. athena uses electron volts as its energy unit. It uses a simple heuristic to figure out if an input file is in ev or kev. In case athena gets it wrong, you can specify the energy unit with the Energy units menu. Dispersive XAS (Sec. 9.3 on page 95), i.e. data which is a function of pixel index, requires special treatment Multi-element detector data athena s column selection dialog has some special features for dealing with multi-element detectors. You can select all the channels of the MED as elements of the numerator, as shown in Figure 3.5. Figure 3.5: Importing multi-element data in the column selection dialog. Importing the data will then add up the channels on the fly and put a group containing the summation of the channels in the group list. You have the option of clicking the button that says Save each channel as a group, as in Figure 3.7 on the next page. This work is licensed under the Creative Commons Attribution-ShareAlike License. 23

24 3.1.2 Multi-element detector data Figure 3.6: After adding columns of multi-element data on the fly in athena. Figure 3.7: Importing multi-element data in the column selection dialog and saving each channel as a group. 24 This work is licensed under the Creative Commons Attribution-ShareAlike License.

25 CHAPTER 3. DATA IMPORT Then, instead of adding the channels to make one group, each channel will be imported as an individual group and given its own entry in the group list. This is handy for examining the channels and discarding any that are not of usable quality. Figure 3.8: After importing the channels of multi-element data as individual groups. 3.2 Project selection dialog Project files (Sec. 8.2 on page 87) are athena s mechanism for saving the state of an analysis project. The project selection dialog, shown in Figure 3.9, provides a way of selectively importing part or all of the contents of the project file. Figure 3.9: The project selection dialog. This work is licensed under the Creative Commons Attribution-ShareAlike License. 25

26 3.3. MULTIPLE DATA SET IMPORT Project files, like any other files are imported using the file selection dialog (Sec. 3.1 on page 21). athena will recognize a project file and present the project selection dialog. The contents of the project file are listed on the left side of the dialog. The contents of the journal (Sec. 6.7 on page 74) are listed in the box at the top right. When you click on one of the data groups in the list on the left, it gets plotted and its title lines are inserted into the box at the lower right. Using these parts of the dialog, you can examine the contents of your project file before importing them into athena. By selecting some of the projects from the list, you can import a subset of the project file. The group listing uses extended selection: Click on an item in the list to select one group Control-click (i.e. hold down the control key while clicking) on an item in the list to add it to the selection Shift-click to on a group to select all groups between it and the previously selected group. Click and drag to select all groups that you drag over. Additionally the buttons labeled All, and None can be used to select all groups or to clear the selection. The Invert button will invert the selection of each group. Once you have selected the groups you want to import, click the Import button. If no groups are selected then all the groups will be imported. athena checks for project files that have become damaged. When it recognizes a damaged file, it will extract what information is salvageable and insert those groups in the group list. It will then issue an error message with a brief hint about the problem. That error message is inserted into the titles box in scary red text. 3.3 Multiple data set import You can import multiple data sets in the same manner that was explained in the last section. Select Open file from the File menu or type Ctrl - o. When the file selection dialog opens, you can select more than one data file by clicking on file names while holding down the Ctrl key. On my Linux computer, it looks like Figure Figure 3.10: Importing multiple data sets with the file selection dialog. Note that three files are highlighted in the file listing and that those three files are listed below in the File name box. Another way of selecting multiple files is to click on a file in the listing then click on 26 This work is licensed under the Creative Commons Attribution-ShareAlike License.

27 CHAPTER 3. DATA IMPORT another file while holding down the Shift key. When you do this, all files between the two you clicked on will be selected. When you click the OK button, all of the selected files will be imported. If all of the files are of the same type, athena will import them all with only one interaction of the column selection dialog. Thus, if you select several files that were measured one after the other, they will all be imported using the same column selections as well as the same parameters for the reference channel, rebinning, and preprocessing (all of which will be described in the following sections). If, however, a file is found that appears to be of a different format, the column selection dialog will reappear as needed. athena considers two files to be the same if they have the same number of columns and those columns have the same labels. Each file imported in this way will be listed in the group list, shown in Figure 3.11 Figure 3.11: athena after importing multiple data sets. When you import multiple project files, the project selection dialog (Sec. 3.2 on page 25) will appear for the first one in the list. If you import the entire contents of the project file, then the entire contents of all remaining project files will also be imported. If, however, you import only a subset, the project selection dialog will appear for the next project file. As soon as you import an entire project, all subsequent projects will be imported without having to interact with the dialog. 3.4 Reference channel The column selection dialog offers several other features related to data import. In this section we will see how to import a reference channel. It is common to place a third ionization chamber in line after the transmission chamber and to place good transmission standard between the two. The point of measuring the standard is that it is measured in parallel with your real sample. This standard can then be used to align the actual data using the data alignment dialog (Sec. 9.2 on page 92). The standard often is a zero-valent foil, but the most important thing is that it is an excellent standard which will yield consistently high-quality data. The other most important thing is that you always use This work is licensed under the Creative Commons Attribution-ShareAlike License. 27

28 3.5. PREPROCESSING DATA the same sample as your reference standard for ever experiment you make at a particular edge. To this end, it is wise to make a library of standards and carry them with you to the synchrotron. By using the same standard for every experiment at an edge, you can align any data, even data measured years apart at different synchrotrons. Figure 3.12: Importing a reference channel with the column selection dialog. The reference channel selection works almost the same as column selection for the data except that you don t need to specify the energy column again the same column is used. When a reference channel after the transmission channel is used, you should use the transmission channel as the numerator and the reference channel as the denominator. Another common solution to measuring a reference channel is measure elastically scattered radiation through the standard with a PIN diode. In that case, I0 is the numerator and the diode is the denominator. You can plot the reference channel to make sure that you have selected the correct channels with the Plot reference button. If your reference standard is of an element with a nearby edge energy, uncheck the button labeled Same element. If you use some other kind of reference measurement that is not a transmission measurement, you can uncheck the Natural log button. When you click the OK button, the data are imported and inserted into the group list. The reference channel is placed in the group list below its data. The reference channel is just like any other group, with one distinction. The data and its reference channel are tied together in the sense that the values for their eshift parameters will always be the same. This relationship is shown visually by the change in color of the text in the box for eshift, as seen in in Figure 3.13 on the facing page. When you change the value of eshift for the reference, the value of eshift for the data changes as well. (And vice versa!) This feature of reference channels is put to good use in data alignment (Sec. 9.2 on page 92). Occasionally, it is useful to tie two data groups together in this way. This can be done by marking the two groups you want to tie together as data and reference, then selecting Tie reference channel from the Values menu. 3.5 Preprocessing data 28 This work is licensed under the Creative Commons Attribution-ShareAlike License.

29 CHAPTER 3. DATA IMPORT Figure 3.13: Data imported with a reference channel in athena. There are a number of other operations that athena can perform on your data as it is imported. These are found in the other tabs on the bottom left of the column selection dialog. Note that all of the pre-processing chores discussed here can also be performed on data after it has been imported. See the data processing chapter (Sec. 9 on page 91). for more details Rebinning quick scan data Some beamlines offer the option of collecting data as a quick scan. In that scanning mode, the monochromator is slewed continuous from the beginning of the scan to the end. The detectors are read continuously and integrations of the detector signals are stored in intervals. The length of these intervals and the slewing speed of the monochromator determine the energy width of each measurement bin. Typically these measurement parameters are chosen to provide adequate resolution through the edge typically a third or a half of an electron volt. This results in data that are vastly over-sampled in the EXAFS region. To improve the statistics in the EXAFS region and to make the data arrays smaller, it is useful to rebin the data. This process uses a boxcar averaging to place the evenly spaced quick scan data onto a typical EXAFS grid. That grid is usually something like 10 ev in the pre-edge, 0.5 ev through the edge, and 0.05 Å 1 in the EXAFS region. In Figure 3.14 on the next page, I have imported some data on a uranyl compound measured in quick scan mode: At this stage, athena has not examined the data closely enough to have guessed what edge you are measuring, so you must specify the element symbol of the absorbing atom. The remaining numeric parameters define the grid onto which these data will be rebinned. The first two numbers define the boundaries of the edge region in energy, the third defines the size of the grid in the pre-edge, the fourth defines the size of the grid through the edge, and the last defines the grid in wavenumber in the EXAFS region. athena will remember the values of these parameters between data sets. However, the default is to turn off rebinning for each new data set. Therefor you must click to the rebinning tab for every data set This work is licensed under the Creative Commons Attribution-ShareAlike License. 29

30 3.5.2 Other pre-processing chores Figure 3.14: Rebinning data on the fly as it is imported using the column selection dialog. you import, and click on the Perform rebinning button. When you import multiple data sets, though, rebinning will be performed on each one without intervention according to the normal rules of multiple data set import Other pre-processing chores This tab provides controls for a number of other things that can be done with your data as it is imported. The first three marking, truncating, and deglitching can be performed even on the first data set imported. The other two require that a standard be specified. The menu at the top of the tab contains every item form the group list. The one specified in that menu is the standard. Figure 3.15: Pre-processing data as it is imported using the file selection dialog. 30 This work is licensed under the Creative Commons Attribution-ShareAlike License.

31 CHAPTER 3. DATA IMPORT Here are descriptions of each of the pre-processing chores, seen in in Figure 3.15 on the facing page: Mark each data set If this is selected, each data set will be marked (Sec. 6.2 on page 68) as it is imported. Note that the reference spectrum is not marked. Also note that, unlike the other four pre-processing options, this one is always deselected when new data is imported. Truncate each data set If this is selected, the data before or after the specified value will be removed from the data (Sec. 9.5 on page 100). Note that only the data in athena s memory is truncated, the data file is not altered. Deglitch each data set If this is selected, the data are deglitched using the batch deglitching algorithm (Sec. 9.4 on page 98). Note that only the data in athena s memory is truncated, the data file is not altered. Align to the standard If this is selected, the data are aligned to the specified standard using the auto-alignment algorithm (Sec. 9.2 on page 92). If both the data and standard have reference channels, those are used in the auto-alignment. Set parameters to the standard If this is selected, all parameters (except for eshift ) will be set to the values of the standard (Sec. 7.1 on page 77). The pre-processing tab is one of athena s genuine power features. With a bit of forethought, most of your data processing can be performed automatically. I typically import one data file and carefully calibrate it and set its various parameters. Having done that, the remaining data gets well processed simply by reading it in. This kind of time saver is of particular value at the beam line. 3.6 File type plugins athena uses ifeffit s read data() function to import data. This means that athena s notion of what is an acceptable data format is completely identical to ifeffit s notion. The contrapositive is also true if ifeffit can read a data file, so can athena. In practice, this works great. ifeffit is able to read the data files generated by many of the world s XAS beamlines. And so, consequently, is athena. Sadly, there are many beamlines that use a format that confounds ifeffit and athena. There are three reasonable ways that I could deal with deal data from those beamline: 1. Refuse to deal with them and require the user to transform the data into a form that ifeffit can handle. 2. Hard-wire code into athena to deal with each new data format as I become aware of it. 3. Create a plugin architecture that allows athena to be extended to deal well with new data formats without having to change the underlying code. For a long time, athena relied on a combination of 1 and 2 from that list. Eventually I decided to adopt number 3. This page documents the plugin architecture so that athena s users can begin writing their own file type plugins Overview of how plugins work In simple language, a perl module is a short file containing special perl code placed in a special location. athena uses the code contained in that file to recognize and pre-process data files so that they can be imported properly using ifeffit. This work is licensed under the Creative Commons Attribution-ShareAlike License. 31

32 3.6.2 Example plugin In somewhat more technical language plugin is just a perl module placed on your computer in a place where it can be found. This file is used when athena starts and its methods are available when data is imported. When a plugin is available for use, it is invoked every time a file is imported into athena using the Open file function. The new file is checked using one of the plugin s methods to ascertain if the file is of the sort serviced by the plugin. If the file is recognized, another method in the plugin transforms the original data file into a form that is readable by ifeffit. This transformation is done in a way that leaves the original data file unchanged. If the transformation is successful, the user is presented with athena s column selection dialog and can import data in the normal manner. Ideally, a plugin is written in a way that makes the import of the data into athena a completely transparent process for the user Example plugin Here is a complete example of a functional plugin taken from the horae distribution. This plugin allows athena to import files from NSLS beamline X10C. As you can see, the plugin is quite short. The following sections of this page will explain this example in detail. 1 2 package Ifeffit::Plugins::Filetype::Athena::X10C; 3 4 use 5 use Exporter; 6 use File::Basename; 7 use File::Copy; = qw(exporter AutoLoader); = qw(); ## define the required variables 12 use vars qw($is_binary $description); 13 $is_binary = 0; 14 $description = "Read files from NSLS beamline X10C."; ## this method recognizes a file from NSLS X10C 17 sub is { 18 shift; 19 my $data = shift; 20 open D, $data or die "could not open $data as data (X10C)\n"; 21 my $first = <D>; 22 close D, return 0 unless (uc($first) =~ /^EXAFS/); 23 my $lines = 0; 24 while (<D>) { 25 close D, return 1 if (uc($first) =~ /^\s+data START/); 26 ++$lines; 27 }; 28 close D; 29 return 0; 30 }; ## this method transforms a file from NSLS X10C 33 sub fix { 34 shift; 35 my ($data, $stash_dir, $top, $r_hash) 36 my ($nme, $pth, $suffix) = fileparse($data); 37 my $new = File::Spec->catfile($stash_dir, $nme); 38 ($new = File::Spec->catfile($stash_dir, "toss")) if (length($new) > 127); 39 open D, $data or die "could not open $data as data (fix in X10C)\n"; 40 open N, ">".$new or die "could not write to $new (fix in X10C)\n"; 41 my $header = 1; 42 my $null = chr(0). + ; 43 while (<D>) { 44 $_ =~ s/$null//g; # clean up nulls 45 print N "# ". $_ if $header; # comment headers 46 ($header = 0), next if (uc($_) =~ /^\s+data START/); 47 next if ($header); 48 $_ =~ s/([ee][-+]\d{1,2})-/$1 -/g; # clean up 5th column 49 print N $_; 32 This work is licensed under the Creative Commons Attribution-ShareAlike License.

33 CHAPTER 3. DATA IMPORT 50 }; 51 close N; 52 close D; 53 return $new; 54 }; ; 57 END Namespace The module must be in a particular namespace. The namespace is defined by the package function on line 2 of the example. The convention for the namespace used by the plugin is slightly unwieldy, but was chosen for a good reason. The package must be in the Ifeffit::Plugins::Filetype::Athena namespace and should have a name that is descriptive of what format it is made for. in the case of the example, the plugin is intended to transform X10C files, so the full namespace of the module is Ifeffit::Plugins::Filetype::Athena::X10C. Lines 4-9 include requisite boilerplate which will allow this module to work properly with athena and call some modules that are almost always useful. The reason I chose such an unwieldy namespace is to allow for the possibility of moving much functionality in both athena and artemis into the form of plugins. With this choice, I will have considerable flexibility without having to rewrite any existing code Required methods and variables The plugin must supply two public variables and two public methods. (I put public in quotes because, of course, perl modules constructed like our plugins do not provide true encapsulation of variables and methods. The sense in which I mean public is that athena requires certain variables and methods in the namespace of the plugin. Without them, the plugin will fail noisily.) required variables Lines define the two required variables in a way that allows them to be accessed outside the scope of this module. $is binary A boolean that tells athena whether the input file format is text or binary. athena handles binary files slightly differently in the column selection dialog. $description A short text string describing the purpose of this plugin. This string will be displayed in the plugin registry take a look at the amount of space available there, and make your string shorter than that. the is method Lines show the is method. This method is called by athena to try to recognize an input data file as being of a particular format. In the case of this example, the X10C file is recognized by some of the text in the first few lines of the files. When the file is recognized, this method returns a true value. If the test fails, it returns 0. When athena sees the true return value, it applies the fix method to transform the data file. It is quite important that the is method be fast. It is possible that a data file will have to be tested against a large number of plugins. If the is method is slow, file import will be slow. This work is licensed under the Creative Commons Attribution-ShareAlike License. 33

34 3.6.5 Athena s plugin registry the fix method Lines show the fix method. This method is called when the is method returns true. In some manner it makes a copy of the original data file and transforms that copy into a form that can be read by ifeffit. This method needs to follow a number of strict rules, however within those rules there is a lot of flexibility about how the transformation is accomplished and the scope of what that transformation does to the data. This method takes four scalars as inputs. $data This is a string containing the fully resolved name of the input data file. $stash dir This is a string with the location where athena will look for the transformed copy of the data. $top This is a reference to athena s main window. This allows you to create a GUI input dialog to collect information interactively from the user. See the Encoder plugin for an example of how this is used. $r hash This is a reference to a hash that can contain information about how the data are transformed. This hash persists between invocations of the fix method, thus allowing you to reuse parameters about the transformation. Again, see the Encoder plugin for an example of how this is used. The return value of this method is the fully resolved file name of the transformed file which must be located in the directory indicated in the $stash dir input scalar. The basic work flow of the fix method is to open the original data file, perform some kind of operation on the data, and write the transformed data to the $stash dir. This can be done almost any way. Some plugins use ifeffit commands (via the Ifeffit module) to operate on the data. Other plugins use pure perl to parse and transform the file. In the example given on this page, the first thing the fix method does is to create a file name in the stash directory for the transformed file. Lines 36 and 37 tell athena to give the stash file the same name as the original file (that is the function of the fileparse command) but in the stash directory (the catfile method builds a fully resolved filename in a platform transparent manner). Line 38 checks the length of the fully resolved filename to avoid running into one of ifeffit s internal limitations. Three things are done to transform an X10C file. The header is stripped of null characters, the header is commented out by putting # characters in the first column, and a formatting problem in some files involving a lack of white space between columns is resolved. Each line of the original file is read, operated on, and written to the transformed file in the stash directory. The while loop starting at line 43 reads through the file line-by-line and performs the operations. Lines 51 and 52 close the original and new file handles. The filter should always close the file handles. This is not such a huge issue under unix, but Windows places a lock on any open file handle. If you fail to close one, for as long as athena is running no other process will be able to do anything with that file. At line 53, the method returns with the fully resolved name of the transformed file. At no point was the original file altered. When athena exits, it will clean up the stash directory, thus avoiding a pile up of unnecessary data files. The work flow in this example is a simple stream from one file to another. Other filters ( Lambda.pm is an example) in the horae distribution use ifeffit to perform the transformation. X15B.pm uses perl s pack function to transform a binary file. Encoder.pm generates a simple GUI dialog to get data necessary for the transformation from the user. As you can see, the architecture of these plugins is quite flexible, allowing you to solve the transformation problem in whatever manner best suits the situation Athena s plugin registry 34 This work is licensed under the Creative Commons Attribution-ShareAlike License.

35 CHAPTER 3. DATA IMPORT Because there might be a large number of file type plugins, it is possible for the user to turn the checks for the file types on and off. In the Settings menu, you will find the Plugin Registry. This is a simple list of all plugins found in the system and user directories. The check buttons enable and disable the plugins. The value of the variable is displayed in the list (so be sure to choose a suitable and suitably short value for that variable). Figure 3.16: athena s plugin registry. Note that the order in which the plugins are displayed in Figure 3.16 is the same order in which files are checked against the plugins. User plugins are checked before system plugins. After that the plugins are ordered alphabetically. If you want your system plugins to be checked against the data first, choose a name that comes early in the alphabetical sense Reformatting and data processing When I originally conceived the concept of the file type plugins, the scope was for the problem of importing data in a format not recognized by ifeffit. The plugins can also be used for some data processing. For instance, you might do deadtime corrections using the ICR and OCR columns of an MED file using a plugin. In that case, the fix method would perform the deadtime correction as the data is streamed between the original file and the stash directory. Another example of pre-processing is the filter I wrote for MED files from APS Sector 10. We try to run in a mode where dead time is negligible. However, the large number of columns tends to use way to much of ifeffit s memory, thus slowing athena way down. A good solution to that problem was to use a plugin to strip all the unused columns, leaving only the ROI columns in file in the stash directory. Note that the Sector 10 plugin is an example of using a plugin to alter a file that athena could already read, but in a way that adds value to the user s interaction with athena. This work is licensed under the Creative Commons Attribution-ShareAlike License. 35

36 3.6.7 System plugins and user plugins System plugins and user plugins athena looks in two different places for these plugins. One place is in athena s installation location where it finds the plugins that come with the horae distribution. The other is in the user s space (on Windows plugins are located in C:\Program File\Ifeffit\horae\Ifeffit\Plugins\Filetype\Athena\, on unix $HOME/.horae/Ifeffit/Plugins/Filetype/Athena/ ). In both places, it reads the contents of the plugin directory and attempts to import the files which end in.pm Miscellaneous advice on plugins 1. Cut-n-paste is an excellent way to get started on a new plugin. Make a copy of a plugin for a file that is similar to your own file and use that as the basis for your new plugin. 2. X15B.pm is an example of a plugin for a binary format. 3. Encoder.pm is an example of a plugin that uses both GUI elements and the persistent hash. 4. Lambda.pm is an example of using ifeffit to perform the transformation. (Simply use Ifeffit qw(ifeffit); near line 5, then make use of the ifeffit function in the fix method.) 5. You can use any module that you need, thus you have all of CPAN available to you when designing your plugin. If you need to do any seriously heavy lifting, check out the Math::Pari module or the Perl Data Language 6. Although a well-tested, robust plugin should be your goal, one of the nice features of the plugin architecture is that a good-enough plugin is easy to write and can quickly get you over a hurdle. 36 This work is licensed under the Creative Commons Attribution-ShareAlike License.

37 Chapter 4 Normalization and the AUTOBK Algorithm The primary function of athena is to import and process XAS data. In the broadest sense, this can be broken up into three parts: Import raw data and convert it to µ(e). Normalize the data so that the measurement is independent of the details of the sample or the detector setup. Determine the background function and subtract it from the data to make χ(k). Of course, there are many other details, such as calibration, alignment, and deglitching. Those will be discussed in detail in later sections of the document. In this section, we will cover the details of the normalization algorithm and the AUTOBK background removal algorithm. Special attention will be payed to the most important background removal parameters. For many measured µ(e) spectra, athena will do a good job of normalizing data and removing the background using its default parameters. In other situations noisy data, data with large white lines, data which terminate in the appearance of another edge user intervention is required. for those situations it is important that you understand well how the various parameters in the background removal section of the main window affect the data. 4.1 Normalization Normalization is the process of regularizing your data with respect to variations in sample preparation, sample thickness, absorber concentration, detector and amplifier settings, and any other aspects of the measurement. Normalized data can be directly compared, regardless of the details of the experiment. Normalization of your data is essential for comparison to theory. The scale of the µ(e) and χ(k) spectra computed by feff is chosen for comparison to normalized data. The relationship between µ(e) and χ(k) is: which means that µ(e) = µ 0 (E) (1 + χ(e)) (4.1) χ(e) = (µ(e) µ 0 (E))/µ 0 (E) (4.2) 37

38 4.1.1 The normalization algorithm The approximation of µ 0 (E) in an experimental spectrum is a topic that will be discussed shortly (Sec on page 47). This equation is not, in fact, the equation that is commonly used to extract χ(k) from the measured spectrum. The reason that equation is problematic is the factor of µ 0 (E) in the denominator. In practice, one cannot trust the µ 0 (E) to be sufficiently well behaved that it can be used as a multiplicative factor. An example is shown in Figure 4.1. Figure 4.1: Au foil data which crosses the zero axis. In the case of the gold spectrum, the detector setting were such that the spectrum crosses the zero-axis. Dividing these spectra by µ 0 (E) would be a disaster as the division would invert the phase of the extracted χ(k) data at the point of the zero-crossing. To address this problem, we typically avoid functional normalization and instead perform an edge step normalization. The formula is χ(e) = (µ(e) µ 0 (E))/µ 0 (E 0 ) (4.3) The difference is the term in the denominator. µ 0 (E 0 ) is the value of the background function evaluated at the edge energy. This addresses the problem of a poorly behaved µ 0 (E) function, but introduces another issue. Because the true µ 0 (E) function should have some energy dependence, normalizing by µ 0 (E 0 ) introduces an attenuation into χ(k) that is roughly linear in energy. An attenuation that is linear in energy is quadratic in wavenumber. Consequently, the edge step normalization introduces an artificial σ 2 term to the χ(k) data that adds to whatever thermal and static σ 2 may exist in the data. This artificial σ 2 term is typically quite small and represents a much less severe problem than a misbehaving functional normalization The normalization algorithm The normalization of a spectrum is controlled by the value of the e0, pre-edge range, and normalization range parameters. These parameters are highlighted in Figure 4.2 on the next page. The pre-edge range and normalization range parameters define two regions of the data one before the edge and one after the edge. A line is regressed to the data in the pre-edge range and a polynomial is regressed to the data in the normalization range. By default, a three-term (quadratic) polynomial is used as the post-edge line, but its order can be controlled using the normalization order parameter. Note that all of the data in the pre-edge range and in the normalization range are 38 This work is licensed under the Creative Commons Attribution-ShareAlike License.

39 CHAPTER 4. NORMALIZATION AND THE AUTOBK ALGORITHM Figure 4.2: Selecting the normalization parameters in athena. used in the regressions, thus the regressions are relatively insensitive to the exact value of boundaries of those data ranges. The criteria for good pre- and post-edge lines are a bit subjective. It is very easy to see that the parameters are well chosen for these copper foil data. Both lines on the left side of Figure 4.3 on the following page obviously pass through the middle of the data in their respective ranges. Data can be plotted with the pre-edge and normalization lines using controls in the energy plot tabs (Sec on page 54). It is a very good idea to visually inspect the pre-edge and normalization lines for at least some of your data to verify that your choice of normalization parameters is reasonable. When plotting the pre- and post-edge lines, the positions of the pre-edge range, and normalization range parameters are shown by the little orange markers. (The upper bound of the normalization range is off screen in the plot above of the copper foil.) The normalization constant, µ 0 (E 0 ) is evaluated by extrapolating the pre- and post-edge lines to e0 and subtracting the e0-crossing of the pre-edge line from the e0-crossing of the post-edge line. This difference is the value of the edge step parameter. The pre-edge line is extrapolated to all energies in the measurement range of the data and subtracted from µ(e). This has the effect of putting the pre-edge portion of the data on the y=0 axis. The pre-edge subtracted data are then divided by µ 0 (E 0 ). The result is shown on the right side of Figure 4.3 on the following page The flattening algorithm For display of XANES data and certain kinds of analysis of µ(e) spectra, athena provides an additional bit of sugar. By default, the flattened spectrum is plotted in energy rather than the normalized spectrum. In Figure 4.4 on the next page, flattened data are shown along with a copy of the data that has the flattening turned off. To display the flattened data, the difference in slope and quadrature between the pre- and post-edge This work is licensed under the Creative Commons Attribution-ShareAlike License. 39

40 4.1.2 The flattening algorithm Figure 4.3: (Left) Cu foil µ(e) with pre and post lines. (Right) Normalized µ(e) data for a copper foil. Figure 4.4: Comparing normalized (red) and flattened (blue) data using a Cu foil. 40 This work is licensed under the Creative Commons Attribution-ShareAlike License.

41 CHAPTER 4. NORMALIZATION AND THE AUTOBK ALGORITHM lines is subtracted from the data, but only after e0. This has the effect of pushing the oscillatory part of the data up to the y=1 line. The flattened µ(e) data thus go from 0 to 1. Note that this is for display and has no impact whatsoever on the extraction of χ(k) from the µ(e) spectrum. This is a nice way of displaying XANES data as it removes many differences in the shape of the post-edge region from the data. Computing difference spectra (Sec on page 125) or self absorption corrections (Sec on page 106), performing linear combination fitting (Sec on page 115) or peak fitting (Sec on page 121), and many other chores often benefit from using flattened data rather than simply normalized data. This idea was swiped from SixPACK Getting the post-edge right It is important to always take care selecting the post-edge range. Mistakes made in selecting the normalization range parameters can have a profound impact on the extracted χ(k) data. in Figure 4.5 is an extreme case of a poor choice of normalization range parameters. In this case, the upper bound was chosen to be on the high energy side of a subsequent edge in the spectrum. The resulting edge step is very wrong and the flattened data are highly distorted. Figure 4.5: (Left) The post-edge line is chosen very poorly for this BaTiO 3 spectrum. The upper end of the normalization range is on the other side of the Ba L III edge. (Right) The poor choice of normalization range for BaTiO 3 results in very poorly normalized data. The previous example is obviously an extreme case, but it illustrates the need to examine the normalization parameters as you process your data. In many cases, subtle mistakes in the choice of normalization parameters can have an impact on how the XANES data are interpreted and in how the χ(k) data are normalized. In Figure 4.6 on the next page, the different choice for the lower bound of the normalization range (42 ev in one case, 75 ev in the other) has an impact on the flattening of these uranium edge data data, which in turn can have in impact in the evaluation of average valence in the system. The small difference in the edge step will also slightly attenuate χ(k) Getting the pre-edge right This work is licensed under the Creative Commons Attribution-ShareAlike License. 41

42 4.1.5 Measuring and normalizing XANES data Figure 4.6: (Left) Example of a subtle effect in how the post-edge line is chosen in a hydrated uranyl species. (Right) Comparing the flattened XANES data for different choices of post-edge line in a hydrated uranyl species. The choice of the pre-edge range parameters is similarly important and also requires visual inspection. A poor choice can result in an incorrect value of the edge step and in distortions to the flattened data. In Figure 4.7, we see the presence of a small yttrium K-edge at ev which distorts the pre-edge for a uranium L III -edge spectrum at ev as shown in in Figure 4.7. In this case the pre-edge range should be chosen to be entirely above the yttrium K-edge energy. Figure 4.7: A sediment sample with both uranium and yttrium Measuring and normalizing XANES data If time and the demands of the experiment permit, it is always a good idea to measure significant amounts of the pre- and post-edge regions. About 150 volts in the pre-edge and at least 300 volts in the post-edge is a good rule of thumb. With shorter regions, it may be difficult to find normalization boundaries 42 This work is licensed under the Creative Commons Attribution-ShareAlike License.

43 CHAPTER 4. NORMALIZATION AND THE AUTOBK ALGORITHM that provide good normalization lines. Without a good normalization, it can be difficult to compare a XANES measurement quantitatively with other measurements. Reducing the normalization order (found among the additional background parameters (Sec. 6.1 on page 63)) might help in the case of limited post-edge range. When measuring XANES spectra in a step scan, it is often a good idea to add several widely spaced steps to the end of a scan to extend the normalization range without adding excessive time to scan. 4.2 Understanding Fourier transforms athena and ifeffit determine the background function using a definition based in Fourier theory. In short, the background is that part of the µ(e) data containing low frequency Fourier components, while the data consists of the remaining, higher-frequency Fourier components. The autobk algorithm, then, is a Fourier-based technique. It varies the parameters of a piece-wise spline such that, when that spline is subtracted from the µ(e) data, what is left has its low frequency Fourier components optimized. As we will see shortly, the default behavior of athena is to simply minimize the low frequency components. Before discussing how athena defines low and high frequency in the context of background removal, we can look at a simple illustration of why background removal is necessary and why it can be difficult. To understand the background removal algorithm, we need to understand a couple of things about the Fourier transform athena has a teaching tool which uses simple sine waves to demonstrate some of the most important features of the Fourier transform operation. In the Help menu, you will find an entry labeled Explain Fourier transforms. When you select that, the main window will be replaced with the teaching tool in Figure 4.8 Figure 4.8: The Fourier transform teaching tool. The point of a Fourier transform is to distinguish the frequency components of a signal. The left side of Figure 4.9 on the following page shows a simple example of a mixed frequency signal along with its This work is licensed under the Creative Commons Attribution-ShareAlike License. 43

44 4.2. UNDERSTANDING FOURIER TRANSFORMS components. The right side shows that the two frequency signal Fourier transforms to a spectrum with two peaks, one for each component frequency. Figure 4.9: (Left) When you click the button labeled Plot waves in k, this is what gets plotted. This shows two waves of phase 2 and 3 (i.e. the sine waves repeat after 2 or 3 on the scale of the x-axis). The third trace shows the sum of those two sine waves. In the summed data, the two signals are intermixed in a way that confuses the fact that there are two sine ways involved. (Right) When you Fourier transform the sum of the two sine waves, this gets plotted. That there are two peaks in the Fourier transform indicates that there were two sine waves involved in the sum. That the peaks are at 2 and 3 on the x-axis, indicate the frequencies of the sine waves in the sum. Try changing the values of the sine waves or adding a third sine wave of a different frequency and replotting the sum and its Fourier transform. The Fourier transform, then, is a tool that isolate different frequencies in a signal. So, can we use a Fourier transform to distinguish the sine wave from the step-like function? The left side of Figure 4.10 on the next page shows an artificial XAS signal, consisting of a step-like function (actually an error function) multiplied by 1 plus a sine function, much like Eq. (4.1). The right side shows the Fourier transform of this XAS-like function. As you can see, the Fourier transform of the entire spectrum is dominated by the signal near 0 on the x-axis. The signal from the sine wave is a little bump barely recognizable above the ripple from the step-like function. Apparently we need to do something a bit more clever than simply Fourier transforming the µ(e) data if we want to examine the oscillatory chi function without excessive interference from the step-like part of the µ(e) spectrum. The solution is to somehow determine the shape of the step-like part of the µ(e) spectrum and subtract it from the data. Ideally, this will remove all the stuff near 0 on the x-axis, leaving peaks associated with the oscillatory part of the signal. The AUTOBK algorithm is based on the principles discussed in this section. Using a cutoff frequency, it varies a piece-wise spline and subtracts that spline from the data. When the Fourier components below that cutoff frequency are minimized, the spline is subtracted one last time from the data. The difference between the data and the spline are normalized, converted from energy to photoelectron wavenumber and called χ(k). In the next section, we will discuss how to choose that cutoff frequency in athena and how to choose it sensibly. The Fourier transform teaching tool, has some other features not discussed above. It lets you explore the effect of the extent of the data range on the Fourier transform, play with different windowing function, see how close together in frequency sine waves can be and still be distinguished in a Fourier transform, and explore the different parts of the complex Fourier transform. These are all important topics that will be 44 This work is licensed under the Creative Commons Attribution-ShareAlike License.

45 CHAPTER 4. NORMALIZATION AND THE AUTOBK ALGORITHM Figure 4.10: (Left) This figure is of (poorly) simulated µ(e) spectrum. It was made by clicking on the button that says Plot edge step. In fact, this is a slightly broadened error function multiplied by one plus a sine wave of frequency 2. As such, it is an idealization of real XAS data. (Right) Clicking on the button labeled Plot FT of edge step results in this plot. touched upon in later sections. 4.3 The Autobk Algorithm and the Rbkg Parameter The frequency cutoff between the background and the data discussed in the previous section is determined by the rbkg parameter. This is the second parameter displayed in the background removal section of the main window. When data are imported into athena, rbkg is set to its default value (Sec. 7.3 on page 81), normally 1. athena comes with a number of example data files. On a windows, these example files can be found in the folder. C:\Program Files\Ifeffit\examples\athena. On other systems, you can find the examples in the source code package that you downloaded to install athena on your system. Among these example files is one called fe.300, which contains a spectrum from an iron foil measured at 300 K. Import this by selecting Open file from the File menu or by pressing Ctrl - o. Navigate to the location of your example files and select fe.300. The column selection dialog (Sec. 3.1 on page 21) then appears. For now, just click OK. The data is imported and rbkg is set to its default value of 1. The data and the background function found using the default parameter values can be found by pressing the E button. This is shown in Figure 4.11 on the following page on the left. The background function is subtracted from the data and normalized, resulting in a χ(k) function. Press the k button to see χ(k), shown in the right panel in Figure 4.11 on the next page. When you press the R button, the Fourier transform is plotted, as in the bottom panel in Figure 4.11 on the following page. So rbkg is the value below which the AUTOBK algorithm removes Fourier components. As you can see, below 1 the χ(r) function is essentially 0, but above 1 the spectrum is non-zero. Now let s examine the effect of choosing different values for rbkg. First, make a copy of the data so we can directly compare different values. Do that by selecting Copy group from the Group menu or by pressing Ctrl - y. athena now looks like Figure 4.12 on page 47. This work is licensed under the Creative Commons Attribution-ShareAlike License. 45

46 4.3. THE AUTOBK ALGORITHM AND THE RBKG PARAMETER Figure 4.11: (Right) The fe.300 data and its default background function. (Left) The fe.300 χ(k) data with its default background function. (Bottom) The fe.300 χ(r) data with its default background function. 46 This work is licensed under the Creative Commons Attribution-ShareAlike License.

47 CHAPTER 4. NORMALIZATION AND THE AUTOBK ALGORITHM Figure 4.12: athena with the original fe.300 data and a copy of that data. Click on the group Copy of fe.300 to display its parameters in the main window. Change rbkg to 0.2. Now we want to directly compare these two ways of removing the background. The way of plotting multiple items in the groups list involves the row of purple plotting buttons and the little check buttons next to the items in the group list. Click on the little check buttons next to fe.300 and Copy of fe.300, as shown in the screenshot above. Now plot these two items by clicking the R button. It should look something like Figure 4.13 on the following page. I suspect the blue spectrum is something like what you expect EXAFS data to look like, while the red one seems somehow worse. In fact, it is easy to understand why the red one looks the way it does. The rbkg parameter specifies the R value below which the data is removed from the µ(e) spectrum. That is exactly what has happened in the red spectrum below 0.2 the signal is very small and the first big peak is, in fact, above 0.2. Those two, plotted as χ(k), are shown in Figure 4.13 on the next page on the right. The blue spectrum oscillates around the zero axis, as one would expect. The red one has an obvious, long-wavelength oscillation. It is that oscillation that gives rise to the low-r peak in the χ(r) spectrum. The background function, computed using 0.2 as the value of rbkg and plotted in energy, is shown in Figure 4.13 on the following page in the bottom panel. Using an rbkg value of 0.2 yields a background function that is not able to follow the actual shape of the data. What happens if the value of rbkg is set to a very large value? The χ(r) data for the values 1 and 2.5 are shown in Figure 4.14 on page 49. Using a very large value of rbkg results in significant change to the first peak in χ(r). We can see why by looking at the background function in energy in Figure 4.14 on page 49. With such a large value of rbkg, the background function has enough freedom to oscillate with frequencies that resemble the data. This results in a reduction of intensity under the first peak. The spline used to compute the background function has a limited amount of freedom to oscillate. The number of spline knots is determined by the Nyquist criterion. This number is proportional to the extent of the data in k-space multiplied by rbkg. These knots are spaced evenly in wavenumber. Thus the spline This work is licensed under the Creative Commons Attribution-ShareAlike License. 47

48 4.3. THE AUTOBK ALGORITHM AND THE RBKG PARAMETER Figure 4.13: (Left) Comparing χ(r) for the data and its copy with rbkg values of 1 and 0.2. (Right) Comparing χ(k) for the data and its copy with rbkg values of 1 and 0.2. (Bottom) µ(e) and the background for the copy with an rbkg value This work is licensed under the Creative Commons Attribution-ShareAlike License.

49 CHAPTER 4. NORMALIZATION AND THE AUTOBK ALGORITHM Figure 4.14: (Right) Comparing χ(r) for the data and its copy with rbkg values of 1 and 2.5. (Left) µ(e) and the background for the copy with an rbkg value 2.5. function can only have frequency components below rbkg. So where does that leave us? We want to make rbkg as big as possible so that the low-r peaks are as well suppressed as possible. On the other hand, too large of a value will result in damage to the data. The trick is to find a balance. A good rule of thumb is that rbkg should be about half the distance to the nearest neighbor. But that is only a rule of thumb. Real data can be really difficult. Noisy data, data with strong white lines, data truncated by the appearance of another edge all of these require careful consideration. While rbkg is the primary background removal parameter, several others should be investigated to yield a good background removal. Several of these are the subjects of the following sections. 4.4 Spline clamps and k-weight in background removal Spline clamps One of the shortcomings of the use of piece-wise splines to approximate the background function is that the ends of spline are somewhat ill-defined by virtue of not having more data preceding or following. At times, this can result in the end of the spline splaying up or down, away from the µ(e) data. This results in significant distortion to χ(k) data. ifeffit provides a tool called spline clamps. These work by adding an additional term to the χ 2 metric used to fit the spline to the µ(e) data. The difference between the spline and the data is computed for the first and last five data points. This sum of differences computed in energy is multiplied by a userchosen scaling factor and added to the χ 2 computed from the R-range below rbkg. This has the effect of clamping the spline to the ends of the data range. In other words, we use the prior knowledge that µ 0 (E) is a smooth function through the oscillatory structure of µ(e) to put a restraint on the fit used to determine µ 0 (E). The user-selected multiplicative coefficient (Sec. 6.1 on page 63) takes one of six predefined values: none, slight, weak, medium, strong, or rigid. These have values of 0, 3, 6, 12, 24, and 96, respectively and serve to set the strength of the clamp in the evaluation of χ 2. This work is licensed under the Creative Commons Attribution-ShareAlike License. 49

50 4.4.2 The effect of k-weight on background removal Figure 4.15: (Left) EuTiO 3 Ti K-edge data with the background subtracted using a high-end spline clamp of none. Note that the end of the spline deviates significantly from the end of the data. (Right) Comparing the effects of different values of the high-end spline clamp on the EuTiO 3 data. The data using the rigid clamp show the most physically reasonable behavior at the end of the data range. The default value of the clamp is none at the low end of the energy range and strong at the high end. Clamps tend not to help at the low energy end of the data. Since the µ(e) data is changing so quickly near the edge, biasing the spline to follow the data closely rarely helps improve the quality of the χ(k) data. A strong clamp at the high energy frequently improves the behavior of the spline near the end of the data. The behavior of the clamping mechanism can be configured using the preference dialog (Sec. 6.8 on page 76). The Bkg nclamp preference changes the number of points at the end of the data range included in the calculation of the effect of the clamp. The Bkg clamp1 and Bkg clamp2 parameters set the strengths of the two clamps. The strengths of the clamps can be fine tuned by changing the numeric values. The parameter Clamp weak sets the the weak clamp, and so on The effect of k-weight on background removal The background removal section has its own k-weight parameter which is distinct from the k-weight used for plotting and Fourier transforms (Sec. 6.5 on page 71). The background removal k-weight is the value used to evaluate the Fourier transform performed to determine the background spline. By varying the value of this k-weight, you can emphasize the lower or upper end of the data in the determination of the background. For clean data with oscillatory structure at high energy that is small but observable, you may find that a larger value of the background removal k-weight produces a better χ(k) spectrum. In fact, setting this parameter to 2 or 3 can have a similar impact on the data as the highest value of the spline clamp shown in the image above. However, in data which are quite noisy, amplifying the noise by a large value of k-weight can have a dramatic effect leading to a very poor evaluation of µ 0 (E). Indeed, the µ 0 (E) evaluated from noisy data with a large value of k-weight will sometimes oscillated wildly, as shown in Figure 4.16 on the facing page The interaction between spline clamps and k-weight 50 This work is licensed under the Creative Commons Attribution-ShareAlike License.

51 CHAPTER 4. NORMALIZATION AND THE AUTOBK ALGORITHM Figure 4.16: Noisy data with µ 0 (E) computed using k-weight of 3. With a k-weight of 1, the data are still noisy (of course!) but the background function properly follows the data. The spline clamp and k-weight parameters sometimes interact strongly. The criterion that µ 0 (E) follow closely to the end of the data that is imposed by the spline clamp can have a surprising effect on noisy, heavily k-weighted data. This is what happened in the data shown in the previous section. Reducing the strength of the spline clamp can sometimes help. Figure 4.17: The same noisy data as in the last figure, also with a background k-weight of 3. However, this time the high-end spline clamp was set to none. Sometimes your data are well served by a low k-weight and a strong spline clamp. Other times, a large k-weight and a weak clamp work better. Still other times, a strong k-weight and a strong clamp work best. How do you know what to do? There are no hard and fast rules, although you will develop an intuition for how different data will respond to different parameter values. Don t be shy about trying different combinations. This work is licensed under the Creative Commons Attribution-ShareAlike License. 51

52 4.5. SPLINE RANGE IN BACKGROUND REMOVAL 4.5 Spline range in background removal Two parameters that can have a big effect on the quality of the background removal are the limits of the spline range. By default, the spline used to approximate the background function is computed between 0.5 Å 1 and the end of the data range. (Those defaults can be set with the Bkg spl1 and Bkg spl2 preferences.) In the main menu, there are entry boxes for the values of the spline range in k and in energy. You can edit those interchangeably, when one pair is changed, the other pair is updated. The same is true if you use the pluck buttons (Sec. 6.3 on page 70) to set their values. There are good reasons to try changing the lower or upper bounds of the spline range. In the case of data with a large, sharp white line, the autobk algorithm might have a hard time following that swiftly changing part of µ(e). The background removal might be improved by starting the spline range at a higher value. A good way to test the effect of spline range is to make a copy (Sec on page 47) of the data group, change the lower spline boundary to a large value for the copy, and plot both groups as χ(k) or χ(r) using the k button or the R button. Changing the upper bound of the spline range is often helpful in data where the signal becomes very small at high k such that the level of greatly exceeds the χ(k) data when k-weighted or if the shape of the background function is unstable due to sample inhomogeneity or some other measurement problem. Figure 4.18 shows an example of a change in the upper bound of the spline range. Figure 4.18: Gold foil data showing the effect of changing the upper end of the spline range. The obvious effect of changing the spline range is that χ(k) is 0 outside the spline range, as seen on the high-k end of the plot. Changing one end of the spline range can also have an effect on the opposite end of the spectrum. This can be seen on the low-k end of the spectrum in the plot. When you are working on data for which a good background removal is difficult, changing the spline range is one of the tricks you can pull out of your tool bag. 52 This work is licensed under the Creative Commons Attribution-ShareAlike License.

53 Chapter 5 Plotting Your Data in ATHENA Two of the main design goals of athena are to make basic data processing, i.e. background removal and Fourier transforms, as transparent as possible and to make processing of large amounts of data as seamless as processing a single data group. To this end, there are no buttons or other kinds of controls that explicitly tell athena to perform the basic processing chores. Instead, there are the plot buttons. When you click one of the plot buttons, the data processing which is required will be performed before the plot is made. For example, if you press the R button, the background will be removed from the current group and the χ(k) will be Fourier transformed to χ(r). Once all that is finished, the plot in R-space will be made. As you change the values of the parameters in the main window, athena keeps track of what has been changed and which data processing steps need to be redone. If you change the krange parameters, then press the R button again, the Fourier transform will be updated, but athena will recognize that the background removal is still up-to-date. Plotting the current group The row of red buttons are used to plot the current group. The current group is the one highlighted in the group list and the one whose parameter values are displayed in the main window. The controls used to determine how the plots are displayed are described in the next section (Sec. 5.1 on the following page). 1. Clicking the E button brings the background removal up to date and plots the µ(e) data. 2. Clicking the k button brings the background removal up to date and plots the χ(k) data. 3. Clicking the R button brings the background removal and Fourier transform up to date and plots the χ(r) data. 4. Clicking the q button brings the background removal, Fourier transform, and backwards transform up to date and plots the χ(q) data. 5. Clicking the kq button brings the background removal, Fourier transform, and backwards transform up to date and plots the χ(k) data along with the real part of the χ(q) data. Plotting many groups The row of purple buttons are used to plot the set of marked groups. The marked groups are the ones with their purple button checked in the group list. More details about the marking groups are found elsewhere in this document (Sec. 6.2 on page 68). The controls used to determine how the plots are displayed are described in the next section (Sec. 5.1 on the following page). 53

54 5.1. PLOTTING SPACE TABS 1. Clicking the E button brings the background removal up to date for all marked groups and plots their µ(e) data. 2. Clicking the k button brings the background removal up to date for all marked groups and plots their χ(k) data. 3. Clicking the R button brings the background removal and Fourier transform up to date for all marked groups and plots their χ(r) data. 4. Clicking the q button brings the background removal, Fourier transform, and backwards transform up to date for all marked groups and plots their χ(q) data. 5.1 Plotting space tabs Plotting in energy The appearance of the plots made in E-, k-, R-, or q-space are controlled by the contents of the plot options tabs in the lower right hand corner of athena. This is highlighted in Figure 5.1. In energy, you have the option of plotting µ(e) normalized or not and derivative or not. The red buttons on the left control how the current group is plotted. The purple buttons on the right control how marked groups are plotted. For the current group, you also have the option of plotting the background function, the pre-edge line, or the post-edge polynomial. As discussed in the normalization section (Sec. 4.1 on page 37), it is very helpful to examine the pre- and post-edge lines to verify that data normalization is done correctly. Figure 5.1: The plot options section with the energy tab showing. The two text entry boxes at the bottom of the tab are used to determine the extent of the data range plotted on the x-axis. Both those these numbers are relative to e0. The Plot emin and Plot 54 This work is licensed under the Creative Commons Attribution-ShareAlike License.

55 CHAPTER 5. PLOTTING YOUR DATA IN ATHENA emax preferences can be used to set the default plot range. See also the plot styles section (Sec. 6.4 on page 71) Plotting in k-space The plot of χ(k) is mostly determined by the value of the plotting k-weight buttons (Sec. 6.5 on page 71). The only option on the k-space tab is to make the plot as k-weighted χ(e) rather than χ(k). For the χ(e) plot, the k-axis is translated to absolute energy using the value of e0. If the window button is checked, the windowing function used to make the forward Fourier transform will be plotted along with the plot for the current group. The two text entry boxes at the bottom of the tab are used to determine the extent of the data range plotted on the x-axis. Although either number can be a negative value, there is no data below k=0. The Plot kmin and Plot kmax preferences can be used to set the default plot range. See also the plot styles section (Sec. 6.4 on page 71) Plotting in R-space Figure 5.2: The k tab. The plot of χ(r) is determined in part by the value of the plotting k-weight buttons (Sec. 6.5 on page 71). The options in the tab tell athena which part of the complex χ(r) to plot. For the current group, the parts are inclusive. Each selected part is plot. For the current group, you also have the option of plotting the envelope, which is the magnitude plotted in the same color as the negative magnitude. Selecting the envelope deselects the magnitude and vice versa. For marked groups, the parts are plotted exclusively and the envelope is not available. The two text entry boxes at the bottom of the tab are used to determine the extent of the data range plotted on the x-axis, behave much like the same boxes on the k tab, and have similar preferences Plotting in q-space Figure 5.3: The R tab. The letter q is used to denote wavenumber of the filtered χ(k) function and to avoid confusion with unfiltered k-space. The units of q are inverse Angstroms, just as for k. The plot of χ(q) is determined in part by the value of the plotting k-weight buttons (Sec. 6.5 on page 71). The options in the tab tell athena which part of the complex χ(q) to plot. For the current group, the parts are inclusive. Each selected part is plot. For the current group, you also have the option of plotting the envelope, which is the magnitude plotted in the same color as the negative magnitude. Selecting the envelope deselects the magnitude and vice versa. For marked groups, the parts are plotted exclusively and the envelope is not available. If the window button is checked, the windowing function used to make the forward Fourier transform will be plotted along with the plot for the current group. The two text entry boxes at the bottom of the tab are used to determine the extent of the data range plotted on the x-axis, behave much like the same boxes Figure 5.4: The q tab. on the k tab, and have similar preferences. This work is licensed under the Creative Commons Attribution-ShareAlike License. 55

56 5.2. SPECTRAL RESOLUTION AND K-RANGE 5.2 Spectral resolution and k-range The first and second coordination shells in iron metal are at 2.49 and 2.87 Å. These closely spaced shells overlap considerably when the Fourier transform of the χ(k) data are plotted. Consequently, the iron foil data can be used to demonstrate the relationship between the Fourier transform k-range and spectral resolution. We see the iron foil data plotted in Figure 5.5 using three different values for kmax. The data are three identical copies of the 60K iron foil data and have had the background function removed in the same way. For the smallest value of kmax, 10 Å 1, the second shell appears only as a shoulder at about 2.5 Å. The shoulder becomes more pronounced when kmax is increased to 16 Å 1. Only when kmax is set to 22 Å 1, the entire measured data range, is the second coordination visible as a resolved peak. Figure 5.5: Iron foil data, plotted with three different k-ranges. 5.3 Stacked plots When marked group plots are made using the purple plot buttons, the default behavior is to overplot the various data groups. At times, it might be preferable to place an offset between the plots. This is done in general by setting the y-axis offset parameter. Stacking plots in a systematic manner is done using the stack tab. Stacking is done by setting the y-axis offset parameters of the marked groups sequentially. This tab contains two text entry boxes. The first is used to set the y-axis offset parameter of the first marked group. Subsequent marked groups have their y-axis offset parameters incremented by the amount of the second text entry box. Clicking the Set y-offset values button sets these values for each marked group. 5.4 Indicators Indicators are vertical lines used to draw attention to specific points in plots of your data. This can be useful for comparing specific features in different data sets or for seeing how a particular feature propagates 56 This work is licensed under the Creative Commons Attribution-ShareAlike License.

57 CHAPTER 5. PLOTTING YOUR DATA IN ATHENA Figure 5.6: (Left) The plot stacking tab. (Right) An example of a stacked plot. Note that the stacking increment is negative so that that order of the colors is the same in the legend as in the plot. from energy to k to q. Points to mark by indicators are chosen using the pluck buttons (Sec. 6.3 on page 70) in the indicators tab. Click on the pluck button then on a spot in the plot. That value will be inserted into the adjacent text entry box. When the Display indicators button is selected, the indicator lines will be plotted (if possible) in each subsequent plot. Points selected in energy, k, or q are plotted in any of those spaces. Points selected in R can only be plotted in R. Points outside the plot range are ignored. Figure 5.7: (Left) The indicator tab. (Right) An example of a plot with indicators. Note that plots made in E, k, or q will plot indicators selected in any of those three spaces. The following preferences can be set to customize the appearance of the indicators. 1. Plot nindicators: the maximum number of indicators that can be set 2. Plot indicatorcolor: the color of the indicator line 3. Plot indicatorline: the line type of the indicator This work is licensed under the Creative Commons Attribution-ShareAlike License. 57

58 5.5. THE POINT FINDER 5.5 The point finder The point finder is a tool for knowing the corresponding coordinate for a point on a plot. Use the the pluck buttons (Sec. 6.3 on page 70) to select a the x- or y-value of a point on the plot. Clicking the find Y or find X button locates the corresponding coordinate on the most recent plot and replots the data with a marker showing that point. One good use of this tool is to compare the corresponding coordinate for a given value between data groups. Clicking on another group in the group list and making a plot will not change the value found by the pluck button. Clicking the find button will find the corresponding coordinate for the new data group. Figure 5.8: (Left) The point finder tab. (Right) An example of a plot with the point finder. The following preferences can be set to customize the appearance of the point finder. 1. Plot pointfinder: the shape of the point finder marker 2. Plot pointfindersize: the size of the point finder marker 3. Plot pointfindercolor: the color of the point finder marker 5.6 Group specific plot parameters At the bottom of the main window are a pair of parameters which affect how that group is plotted. The plot multiplier parameter is a multiplicative factor for the group when it gets plotted. The y-axis offset is a number added to the group when it is plotted so that it is offset in the vertical direction. Both of these are parameters that are set for each group individually. Detector groups (Sec on page 68) use their plot multiplier parameters to plot them on the same vertical scale as their corresponding µ(e) data. The stacked plots tab (Sec. 5.3 on page 56) is used to set the y-axis offset parameter for many groups. Like most other parameters in the main window, context menus (Sec. 7.1 on page 77) accessed by right clicking on the labels can be used to constrain these parameters across data groups. 5.7 Other plotting features 58 This work is licensed under the Creative Commons Attribution-ShareAlike License.

59 CHAPTER 5. PLOTTING YOUR DATA IN ATHENA Figure 5.9: The plot parameters group in the main window Zooming You can zoom in on any part of plot by selecting Zoom from the Plot menu or by typing Ctrl - =. You will be prompted in the echo area to click on two points in the plot. Those two points are the corners of a box surrounding the part of the plot you want to zoom in to. You can zoom repeatedly. Selecting Unzoom from the Plot menu or typing Ctrl - - will restore the original plot. Incremental unzooming is not implemented Cursor You can grab coordinate values from any point in a plot by selecting Cursor from the Plot menu or by typing Ctrl -.. Text will appear in the echo area prompting you to click on a point in the plot. After you do so, the coordinate values will be displayed in the echo area Plotting I0 The Plot menu has several options for plotting I0. I0 can be plotted along with µ(e) as shown below. Alternately, I0 can be plotted alone for the current group or for each marked group. The I0 channel is among the data saved in a project file (Sec. 8.2 on page 87) Merged groups and the standard deviation This work is licensed under the Creative Commons Attribution-ShareAlike License. 59

60 5.7.5 The collapse button Figure 5.10: A plot of µ(e) metallic tin along with the signal from the I0 channel. When data are merged, the standard deviation spectrum is also computed and saved in project files (Sec. 8.2 on page 87). The merged data can be plotted along with its standard deviation as shown in the merge section (Sec on page 113) by selecting the Plot merge+std.dev. option from the Plot menu The collapse button The group list is only tall enough to display about 11 groups without needing the vertical scroll bar. Any more, and some will be hidden from view by the scrollbar, as in Figure 5.11 on the next page. Clicking the collapse button, which is the button with the downward pointing arrow next to the plot option label, the plot options tab is hidden, giving more vertical space to the group list, as in Figure 5.12 on the facing page. When the plot options are hidden, the collapse button is replaced by an upward pointing arrow. Clicking it will restore the plot options tabs and shorten the group list. 60 This work is licensed under the Creative Commons Attribution-ShareAlike License.

61 CHAPTER 5. PLOTTING YOUR DATA IN ATHENA Figure 5.11: athena with a large number of data groups. Figure 5.12: The group list occupies more space at the expense of the plot options tabs. This work is licensed under the Creative Commons Attribution-ShareAlike License. 61

62 5.7.5 The collapse button 62 This work is licensed under the Creative Commons Attribution-ShareAlike License.

63 Chapter 6 Athena s User Interface athena can be used successfully by using relatively few of its capabilities. For instance, it s fairly obvious that you can import data by opening a file using the File menu, change a parameter value by editing the number in one of the little boxes in the main window, or plot data by clicking one of the buttons labeled with the letters E, k, R, or q. There is, however, a lot more to athena at the level of its user interface. Part of making the leap from beginner to expert is learning about the various user interface features. One aspect of athena s user interface that requires special explanation is the Show additional parameters button at the top of the background removal parameters section of the main window. Clicking it, changes the display of the background removal parameters, replacing the main parameters with a set of additional parameters which can be used to fine tune normalization and background removal. Figure 6.1: athena s main window with the additional background parameters showing. The main parameters can be restored by clicking the Show main parameters button. The additional parameters are all described elsewhere in this document. 63

64 6.1. USING THE GROUP LIST 6.1 Using the group list The group list is the primary mechanism for accessing and interacting with your data. As data files are imported in athena, each gets an entry in the group list. Data generated during the course of using athena, such as copied or merged groups, also get placed in the group list. Each group list entry consists of two parts, the label and the check button. The label contains text identifying the group. The default is for the label to be the same as the file name. Clicking with the left mouse button on a label makes that group the current group. The current group s label is highlighted with a light red color and its parameters are displayed in the main window. The current group is the one that gets plotted when the red plotting buttons are pressed. The check button is used to mark the group. Marking, explained in detail in the next section (Sec. 6.2 on page 68), is one of the fundamental user interface features in athena. Any feature of athena that involves more than one group uses the mark buttons Copying groups You can copy a group by hitting Ctrl - y or by selecting Copy group from the Group menu. This makes an identical copy of the current group and places it at the end of the groups list. All parameters are identical and the data arrays in ifeffit are all copied only the ifeffit group name in different. Copying is very useful for examining how changes in parameter values propagate through the data processing. You can make one or more copies, change particular data values, and overplot the results. The process of comparing parameter values can be automated. In the Group menu, you ll find an option for Copy series. This opens the dialog shown in Figure 6.2 on the facing page. You can select the parameter to increment from the drop-down menu. The next three entry boxes are for setting the grid of parameter values. When you click Make copies, the copies are made, the parameter values are incremented, the new groups are inserted into the group list, and they are renamed with useful labels. Finally a plot is made showing the differences between the copies with different parameter values Reorganizing the group list When a file is imported into athena, the name of the file is used as the label in the group list. That s fine, but you can change the label by selecting Rename group from the Group menu, typing Ctrl - l, or double clicking on an item in the group list. This replaces the echo area with a dialog for entering the new label for the group, shown in Figure 6.3 on the next page. Hitting or clicking the OK button renames the group, shown in Figure 6.4 on page 66. We have already seen (Sec. 4.3 on page 45) how groups can be copied. Making one or more copies is an excellent tool for exploring the effects of the various parameters in the main window. There are several other useful tools for modifying the contents of the group list. You can reorder the items in the groups list using Alt - k or Alt - j to move the current group up or down in the list. Hitting Ctrl - k or Ctrl - j changes the current group to the one above or below. Items can be removed from the list. The current group or the marked groups can be removed from the project by selecting Remove group or Remove marked groups from the Group menu. You can remove all the groups from the list by selecting Close project from the File or Group menu or by hitting Ctrl - w Information about items in the group list Hitting Ctrl - b displays several pieces of information about the current group. The dialog that pops up to display that information is shown in Figure 6.5 on page This work is licensed under the Creative Commons Attribution-ShareAlike License.

65 CHAPTER 6. ATHENA S USER INTERFACE Figure 6.2: The series copying dialog. In this example, a series of four copies with e0 values incremented by 5 ev. Figure 6.3: Renaming a group list entry. This work is licensed under the Creative Commons Attribution-ShareAlike License. 65

66 6.1.3 Information about items in the group list Figure 6.4: After renaming a group list entry. Figure 6.5: The dialog containing information about the data group. 66 This work is licensed under the Creative Commons Attribution-ShareAlike License.

67 CHAPTER 6. ATHENA S USER INTERFACE Hitting Ctrl - B displays that information for all the marked groups. If you mistakenly import a data group as the wrong record type, you can change it by selecting Change record type from the Group menu. You can only change between the various record types in energy, though. If you import a χ(k) file as µ(e), you will have to remove the group and re-import it. Figure 6.6: The dialog for changing the record type of a group Using the mouse in the group list You can turn on automated replotting when you select a new group by clicking on it in the group list, by selecting one of the items from the Group replot submenu at the bottom of the Plot menu, shown in Figure 6.7. With one of the options from that submenu selected, groups will be replotted when you click on them. Figure 6.7: Setting up group replotting from a submenu under the Plot menu. If you right click on any item in the group list, a context menu is posted, as shown in Figure 6.8 on the following page. The top two items in that context menu are for plotting. They work just like the red and purple plot buttons. The second two items are the same as the Group and Values menu. As mentioned above, double clicking on a group list item will rename it. This work is licensed under the Creative Commons Attribution-ShareAlike License. 67

68 6.1.5 Detector groups and background groups Figure 6.8: Clicking the right mouse button on a group list entry pops up this context menu Detector groups and background groups Detector groups are group list entries that can only be plotted in energy. They are made from the numerator and denominator arrays that were used to make the data in the data group. When you choose Make detector groups from the Group menu, those two groups are added to the group list. Their plot multiplier parameters are set such they plot nicely with µ(e) from their original data group. Detector groups can only be made in the session during which the original data was imported. Insufficient information is saved to project files to be able to properly reconstruct the detector groups. You can plot the I0 array (Sec on page 59) without making a detector group at any time from the Plot menu. Background groups are group list entries that can be plotted in any space. A background group is created from the background function for a group when you choose Make background group from the Group menu. Creating a background group using a small rbkg parameter is one way to examine the atomic fine structure, or AXAFS, if you believe in such things. 6.2 Marking groups As data are imported in athena, they are listed in the Data groups list. Each entry in list includes the name of the data set, the text of which acts something like a hyperlink in that clicking on that text will insert the analysis parameters for that group into the main window. Each entry also has a little purple check button which is used for marking the group. Much of athena s functionality revolves around marked groups. For example, the marked groups are the ones plotted when a purple plotting button is pressed, merging is done on the set of marked groups and, many of the data processing and data analysis chores use the marked groups. athena offers a number of simple tools for marking or unmarking groups. These are found in the Mark menu, as shown below, and also have keyboard bindings. Ctrl - a marks all groups, Ctrl - u unmarks 68 This work is licensed under the Creative Commons Attribution-ShareAlike License.

69 CHAPTER 6. ATHENA S USER INTERFACE all groups, and Ctrl - i inverts the markings such that the marked groups become unmarked and the unmarked ones become marked. The three buttons above the group list also serve to make all, mark none, and invert the marks. Figure 6.9: The group marking options are found in the Mark menu. Making all groups, removing all marks, or inverting all marks can be done using the mark buttons at the top of the group list Using regular expressions to mark groups There is one more tool which is considerably more powerful and flexible. In the Mark menu, this last marking tool it is called Mark regex and it is bound to Ctrl - r. So, what does regex mean? Regex is short for regular expression, which is a somewhat formal way of saying pattern matching. When you mark regex, you will be prompted for a string in the echo area at the bottom of the athena window. This prompt is exactly like the one used to rename groups (Sec on page 64). This string is compared to the names of all the groups in the Data groups list. Those which match the string become marked and those which fail to match become unmarked. Let me give you some examples. In a project file containing various vanadium standards, the Data groups list includes These represent the various oxidation states of vanadium. The last item is an unknown sample which can be interpreted as a linear combination of the other five samples. There are two scans of each sample, as indicated by the.1 and.2. To make plots of arbitrary combinations of spectra, you can click the appropriate mark buttons on and off. Using regular expression marking is quicker and easier. I ll start with a couple simple examples. If you want to mark only the vanadium foil spectra, hit Ctrl - r and then enter foil. To mark the V2O3 and V2O5, but none of the others, hit Ctrl - r and enter V2. In fact, you get to use the entire power of perl s regular expression language (see the regular expression documentation at CPAN for all the details). This means you can use metacharacters symbols which represent conceptual aspects of strings. Here are a few examples: This work is licensed under the Creative Commons Attribution-ShareAlike License. 69

70 6.3. PLUCK BUTTONS Figure 6.10: A project with several vanadium standards imported. To mark only the V2O3 and VO2 data: O[23]. That tells athena to mark the groups whose names have the letter O followed by either 2 or 3. To mark only the first scans of each sample: 1$. The $ metacharacter represents the end of a word, thus this regular expression matches all groups whose name ends in the number 1. To mark only the foil and unknown data: foil unknown. The metacharacter means or, so this regular expression matches the groups with foil or unknown in the name. Actually this regular expression could have been much shorter, both [fu] and f u would have worked in this case. Regular expressions are a large and fascinating topic of study, but beyond the scope of this document. Check out the link above read Wikipedia s excellent article on regular expressions for more information. Mastering Regular Expressions by Jeffrey Freidl is a superb book on the subject. Any regular expression that works in perl will work for marking groups in athena (but if you know what (?{ code }) means and do something ill-advised with it, you ll get no sympathy from me!). If you enter an invalid regular expression, athena will tell you. Regular expression marking is a wonderful tool, especially for projects containing very many data sets. 6.3 Pluck buttons Almost every text entry box that takes an energy or wavenumber value as its parameter has a little button next to it which is decorated with a small blue X, one of which is highlighted in Figure 6.11 on the next page. These are the pluck buttons and their purpose is to grab a value directly from the plot. When you click one of these buttons, a message in the echo area prompts you to select a point from the plot, demonstrated in Figure 6.12 on page 72. When you click on the plot, the x-axis value of the point you clicked on gets inserted in the associated entry box. 70 This work is licensed under the Creative Commons Attribution-ShareAlike License.

71 CHAPTER 6. ATHENA S USER INTERFACE Along with the pluck buttons in the main window, several data processing and data analysis dialogs use pluck buttons, as do the indicator (Sec. 5.4 on page 56) and point finder (Sec. 5.5 on page 58) plot options tabs. Figure 6.11: Using the pluck button for the upper edge of the normalization range. 6.4 Plot styles Plot styles are a mechanism for storing the contents of the plot options tabs. For example, you can save plotting parameters good for viewing XANES data and another set for viewing the full EXAFS spectrum. You can save any number of sets of parameters. When you save a set of parameters, you are prompted for a name. After that you can select a parameter set by name. These parameter sets are saved to disk, thus persist between sessions. All of the plot styles functionality is available by right clicking on the label that says Plotting options, which posts the context menu shown in Figure 6.13 on the next page. 6.5 Using different k-weights It is common practice in EXAFS to multiply χ(k) by different k-weights. That is, the χ(k) array is multiplied point-by-point by k-array. For k 1 weighted data, χ(k) at k=5 is multiplied by 5 and χ(k) at k=10 is multiplied by 10. Similarly, for k 2 weighted data, χ(k) at k=5 is multiplied by 25 and χ(k) at k=10 is multiplied by 100. This has the effect of amplifying the spectrum at the high-k end. Since the oscillations attenuate quickly after the edge, k-weighting is a way of making the high-k oscillations visible in a plot. A common approach to choosing a k-weight is to make the size of the oscillation roughly constant over the range of the data. Weighting data in that manner makes all parts of the data rage contribute equivalently. When Fourier transformed, the χ(r) spectrum is then dominated by the oscillatory structure of χ(k). The This work is licensed under the Creative Commons Attribution-ShareAlike License. 71

72 6.5. USING DIFFERENT K-WEIGHTS Figure 6.12: (Left) After clicking on the pluck button, athena waits for you to click on the plot, which shows µ(e) for BaTiO 3. Only the x-axis value of the click on the plot is used by the pluck button. (Right) After clicking on the point shown in Figure 6.12, the value of is inserted as the value of the upper edge of the normalization range. This is clearly a better value for that parameter. Figure 6.13: Clicking the right mouse button on the Plot options label pops up the plot styles menu. 72 This work is licensed under the Creative Commons Attribution-ShareAlike License.

73 CHAPTER 6. ATHENA S USER INTERFACE Fourier transform of an under-weighted spectrum may be dominated by a low-r peak representing the attenuation of the χ(k) spectrum. k-weighting is also used to change the emphasis of different contributions to the measured χ(k) spectrum. Low Z elements such as O and C have scattering amplitudes that peak and low-k and become quite small at high-k. Heavier elements, such as the transition metals, have small scattering amplitudes at low-k but continue to have large scattering amplitude at very high values of k. Very heavy elements, such as Pb or Sn, have minima in their scattering amplitudes around 5 to 7 Å 1. (See page 21 of Matt Newville s Fundamentals of X-ray Absorption Fine Structure.) By weighting χ(k) with different k-weightings, the low and high portions of the χ(k) spectrum can be differently emphasized in a Fourier transform. Hopefully, doing so can help you better understand your data. The k-weighting is controlled by the bank of buttons labeled 0, 1, 2, 3, and kw, and located just beneath the purple plot buttons. This is highlighted in Figure 6.14 The buttons selected determines the k-weighting used in a plot of χ(k) data or in a Fourier transform. Figure 6.14: athena s controls for setting the amount of k-weighting in a plot or Fourier transform. The k-weight button labeled kw is used in conjunction with the arbitrary k-weight parameter. When the kw button is selected, the χ(k) data are weighted by the value of the arbitrary k-weight. This can be used in a number of ways. The simplest is if you simply want a non-integer weight. If you want to overplot two different data groups each with a different k-weight, that can be done by setting the arbitrary k-weight appropriately. 6.6 Frozen groups There is a feature that athena shares with almost any other computer program not just analysis programs, but any program. Soon after starting to use athena, you will do something silly and regrettable. Often this is as simple as changing a parameter to some bad value and forgetting what the good value was. To help mitigate this sort of problem, athena allows you to freeze data groups. This work is licensed under the Creative Commons Attribution-ShareAlike License. 73

74 6.7. PALETTES A frozen group is one for which you cannot change its parameter values. When a group is frozen, the entry boxes associated with parameters become deactivated, which means that it is impossible to type in them. Furthermore, any global action such as constraining parameters or using the alignment dialog, will have no effect on the frozen group. The idea behind frozen groups is that, after working for a while to find parameter values that you like, you can freeze the group to avoid inadvertently altering its parameters. The various group freezing functions can be found in the Values menu, as shown in Figure Figure 6.15: The frozen groups submenu is found under the Values menu. Several visual cues indicate that a group is frozen, including the green highlighting the group list and the use of italic text in the main menu. The Freeze groups submenu offers a number of ways of selecting which groups to freeze. The frozen state of the current group can be toggled by typing Ctrl - f and all groups can be frozen or unfrozen by typing Ctrl - F or Ctrl - U. You can also freeze or unfreeze all marked groups. Finally, you can mark or unmark all groups using regular expressions. This works in the same manner using regular expressions to mark groups (Sec on page 69). There are various visual changes when a group is frozen. The highlight color in the group list changes from light red to light green. The text in the group list becomes italic. The labels for each section of parameters in the main window becomes italic. Finally, the label in the main window that normally says Current group is changed to Frozen group. When a group is frozen, direct edits of parameter values are disallowed. Frozen groups are skipped for algorithmic edits, such as parameter constraints or alignment. You can, however, still remove a frozen group from the project. Unfreezing a group is a simple as hitting Ctrl - f again. 6.7 Palettes athena s palettes are a space where a variety of kinds of textual information are stored or displayed. They are mostly things that do not need to be displayed front and center, they are displayed when summoned 74 This work is licensed under the Creative Commons Attribution-ShareAlike License.

75 CHAPTER 6. ATHENA S USER INTERFACE from the Edit menu or by a keyboard shortcut. Figure 6.16: The palettes window with the journal palette showing. This particular journal entry is taken from the alignment and merging demo file. Ifeffit This is the space where you can interact directly with ifeffit. This palette contains a buffer which displays every command sent to ifeffit as well as its response. At the bottom of the palette is a command line where any ifeffit command can be typed and entered. When focus is on the command line, the up and down arrow keys scroll through the history of commands typed at this command line. The ifeffit buffer is very helpful for those wanting to learn how to use ifeffit directly. Typing Ctrl - 1 displays this palette. Titles This palette is used to display the title lines associated with the current data group. Any title lines interpreted as such in the original data file will be displayed here. You can also add your own comments. The contents of this palette will be written to the header of any output column data file. The titles are also stored with the data group in a project file. Typing Ctrl - 2 displays this palette. Data This palette is used to display the actual data file from which a data group was read. This can only be done during the session in which the data was initially imported into athena. A project file does not retain enough information to make use of this palette. This palette is the one and only way that athena can be used to modify a data file. You can edit your data file in this palette and save it back to disk. Use this capability with caution or, preferably, not at all. Typing Ctrl - 3 displays this palette. Echo This palette contains a buffer which displays a history of messages displayed in the echo area. Typing Ctrl - 4 displays this palette. Macro This palette contains a tool for capturing ifeffit command and writing them to an output file. The concept is that you can capture commands for a particular operation and use the output file to create an ifeffit macro for use outside of athena. Typing Ctrl - 5 displays this palette. Journal This palette is one of athena s most important tools. It is a blank space in which you can write anything you want. The contents of this space are included when a project file is saved and imported into this space when a project file is imported. Thus, this serves as a journal for your data analysis. You can use this space to comment on your data and on the choices you make while working with your data. This enhances the value of the project file as a collaborative tool. Just as the project file is an excellent way to share data with a colleague, you can use the journal to exchange information or have a conversation with your colleague. Typing Ctrl - 6 displays this palette. This work is licensed under the Creative Commons Attribution-ShareAlike License. 75

76 6.8. SETTING USER PREFERENCES 6.8 Setting user preferences athena allows you to set an enormous number of preferences. Many dozens of things that could conceivably be configured can, in fact, be configured using this dialog. In any situation where is was not obvious to me that there was a best, most proper value for a parameter, I chose a default and made an entry for it in the preference dialog. The preference dialog is shown in Figure Figure 6.17: athena s preferences dialog. I am not going to explain this dialog in great detail. I am trusting that if you are sufficiently motivated to configure the behavior of athena to be something other than what comes out of the box, you will also be sufficiently motivated to follow your nose through the use of this dialog. The preference parameters are divided into related groups. For example, there are groups for background removal parameters, alignment parameters, colors, and so on. To view a group of preferences, click on the little cross sign next to the group s name in the list on the left side of the dialog. This will open a branch containing all the parameters in tat group. Click on one of them and it will be displayed in the controls on the left. Click on the default button to restore athena s default value or use the control below the default button to set a new value. That control will vary depending on the type of parameter. A text or numeric parameter will offer an entry box. A color parameter will offer a button which pops up a color selection dialog. A list parameter will offer a menu with the choices. And so on. The text area below these controls displays an explanation of the function served by that preference. Underneath that are buttons for setting or saving the parameters. The data about the preferences is contained in the athena.config which can be found in the disk space where athena is installed on your computer. This files is used to construct the preferences dialog. It is also the master file used when building athena from source to create the system-wide initialization file as well as a the part of athena s source code which sets the internal defaults for the parameters. It should never be necessary to work with the athena.config file. I just mention this for the benefit of the interested reader. 76 This work is licensed under the Creative Commons Attribution-ShareAlike License.

77 Chapter 7 Setting parameters in Athena The interface for setting parameter values in the main window is quite straight forward. For most parameters, you simply type values into the appropriate text entry box. For others, you select a value from a menu. That s all fine and dandy, but imagine the situation where you have several dozen data groups imported into athena and you decide that you need to change the value of the rbkg parameter for every group. It would be extremely tedious to manually change the parameter value for each data group one by one. Fortunately there is a better way. In this chapter, we will see the various tools athena provides for constraining parameter values across data groups. We will also look in detail at how the e0 parameter is determined and how parameter defaults are set. 7.1 Constraining parameters between data groups In athena, a constraint is the setting of a parameter to be the same for two or more data groups. (That word is used in a different context in artemis.) athena gives you a high level of control over the values of the parameters used to process your data. This control is very fine-grained in the sense that every group can have its own values for any parameters, thus allowing you to customize the data processing for each individual data group. Often, however, your data groups are sufficiently similar that it is expedient to use identical values for some or all parameters. Were you forced to click through the data groups setting each parameter value for each group individually, then athena would be very tedious to use. Fortunately, there are a number of tools dedicated to the problem of constraining parameter values Constraining individual parameters The first such tool is used to constrain individual parameters. As the cursor of your mouse passes over any of the labels for the menus or text entry boxes in the main window, you will see that the text of the label flashes a color change. This color change indicates that mouse clicks will have an effect. If you click the left mouse button, a hint about the purpose of that parameter is written to the echo area. A right mouse click posts a context menu, as shown in Figure 7.1 on the following page. The first two items in this context menu are used to set the values of this parameter for other groups to its value for the current group. The current group is, of course, the one whose values are currently displayed in the main window and the one which is highlighted in the group list. This parameter value can be applied to all groups or to the set of marked groups. The set of marked groups are the ones with their little purple buttons in the group list checked. So here we see again one of the many uses of the mark buttons. 77

78 7.1.2 Constraining groups of parameters Figure 7.1: Posting a context menu for an individual parameter. The third option is to set the value of this parameter to the standard. This requires some explanation. In this context, the standard is set by marking one and only one group in the group list. Choosing to set a parameter value to the standard, then, applies the parameter value from the single marked group to the current group. Any group can be the standard setting a standard is as simple as clicking a mark button. If more than one group is marked, an explanatory error message is written to the echo area. The last two options involve default parameter values. The parameter can be reset to its default value. This is handy if you have changed a parameter and found yourself in a place where the data processing is obviously wrong. By resetting the parameter to its default, you can return to a sensible place. The final option is to establish the current parameter value as the session default. The use of session defaults is explained in a later section (Sec. 7.3 on page 81). Several of the parameter context menus have a few more entries in their context menus: The importance context menu has entries for resetting the importance of all groups or marked groups to 1. The e0 context menu has several options for changing the value of e0 and a button for toggling the tying of energy and k parameters to the e0 value. All of the options will be explained in the next section (Sec. 7.2 on the facing page). The Fourier transform k-range context menu has an option for setting the upper bound to ifeffit suggestion, which is based on the level of noise in the data Constraining groups of parameters In the main window, the parameters are grouped into sets of related parameters. All of the parameters associated with background removal are in one box, all the Fourier transform parameters are in another box, and so on. The labels at the top of each box are sensitive to mouse clicks much like the entry box labels. 78 This work is licensed under the Creative Commons Attribution-ShareAlike License.

79 CHAPTER 7. SETTING PARAMETERS IN ATHENA Figure 7.2: Posting a context menu for a group of parameters. A left click posts a helpful message in the echo area, while a right click posts a context menu, as shown in Figure 7.2. The various options behave much the same as in the individual parameter context menus, except that all of the parameters in the box are effected. This, then, gives you a way of constraining all background removal parameters or all Fourier transform parameters between groups. It also provides a way of restoring default values for a set of parameters or assigning a set as session defaults (Sec. 7.3 on page 81). The Project and Current group boxes do not have context menus as constraining most of those parameters between groups would not be sensible Constraining all parameters The functionality which allows you to constrain parameter values between groups operates at three levels. We have seen the finest level of granularity, allowing individual parameters to be constrained. We have also seen how sets of parameters can be constrained. It is also possible to perform the same constraining operations on all parameters at once. These all-parameter operations are found in the Values menu, as shown in Figure 7.1 on the preceding page. Again, these operations work identically to the explanation above, except that every parameter is effected, with the exceptions of file and eshift, which would not be sensible to constrain. 7.2 Setting E0 The e0 is central to many of the chores that athena performs. Understanding how e0 is used and how it is set is essential to understanding how athena operates and essential to using athena well. By default, athena has ifeffit determine e0 and uses the value that ifeffit finds. ifeffit s algorithm is to find the first peak of the first derivative of µ(e). To avoid settling on a spot in a noisy This work is licensed under the Creative Commons Attribution-ShareAlike License. 79

80 7.2.1 Other ways of setting e0 Figure 7.3: The Values menu, which contains the options for constraining all parameters at once. pre-edge, ifeffit makes a series of checks to verify that its guess for e0 comes after several points in the derivative of µ(e) that are increasing in energy and is followed by several points that are decreasing. The details of this implementation are such that ifeffit often chooses a point that is slightly to the high energy side of peak that a person would choose, but it typically is a very good guess. The actual value of e0 is used for many things. It is compared to a table of edge energies to determine the value of the Z and edge parameters. It is the energy reference for the values of the normalization, pre-edge, and spline range parameters. And it is the edge energy in the autobk algorithm. The calibration (Sec. 9.1 on page 92) and alignment (Sec. 9.2 on page 92) dialogs can be used to refine the values for e0. You can also edit its value directly by typing in its entry box. The right-click context menu for e0 and the Values menu have several options for other ways of setting e0. There are a few situations where the default algorithm will fail. Very noisy data can result in a spurious identification of e0. Materials which have two inflections in the edge, such as zero-valent zirconium, might have the wrong inflection chosen. Materials with huge edge peaks, such as K 2 CrO 4, will have a point in the leading edge of the peak chosen rather than a point in the main edge Other ways of setting e0 Aside from the default method described above, athena offers a few other algorithms for setting e0. Tabulated atomic value The tabulated value of the edge energy of the zero-valent element will be used. To determine the element, a transitory value for e0 will be found using ifeffit. Once Z and edge are found, e0 is set to the tabulated value. Fraction of edge step In this algorithm, a transitory value for E 0 will be found using ifeffit. The data are normalized and the point on the edge which has a height equal to a specified fraction of the edge step is chosen as 80 This work is licensed under the Creative Commons Attribution-ShareAlike License.

81 CHAPTER 7. SETTING PARAMETERS IN ATHENA e0. This normalization is iterated up to 5 times to settle on a stable value. The value of the fraction is set by the Bkg fraction preference, which is 0.5 by default. Zero crossing Again, a transitory value for E 0 will be found using ifeffit. The second derivative of µ(e) is computed and athena searches in both directions in energy for the nearest zero-crossing of the second derivative, which is then used for e0. Peak of L edge white line A transitory value for E 0 will be found using ifeffit. The peak of the white line is then found as the zero crossing of the first derivative of µ(e) after the initial value of E 0 and is used as e0. Since all of these additional algorithms rely on ifeffit s initial guess of e0, each is subject to the same caveats given for the default algorithm. The Bkg e0 parameter can be set to one of these four options, setting the default algorithm for determining e0. When the Bkg ledgepeak parameter is set to an element symbol, athena will set e0 to the peak of the white line by default for any L III or L II edge data from an absorber above that element. Setting this preference to 0 tells athena to use the algorithm set by Bkg e0 to determine e0 as data re imported. Submenus under the Values menu (Sec. 7.3 on the facing page) can be used to set E0 using one of these algorithms for the current group, all groups, or the set of marked groups. 7.3 Default parameter values When data is imported in athena, all parameters are set to their default values. For most data, these defaults are reasonable in the sense that using them will result in a decent first stab at background removal and Fourier transform. The sequence of choices athena makes in setting those defaults is somewhat complicated and highly configurable. By understanding how the defaults are chosen, you can tune athena to do a good job processing your more of your data without your intervention. The choices of default values for each parameter is made by walking through a hierarchy of decisions, each subsequent level overriding the previous level. The first decision is made by consulting the program preferences (Sec. 6.8 on page 76). The program preferences are read from two initialization files when athena starts. The first initialization file is a system-wide file that always contains athena s fresh-outof-the-box parameter defaults. The second initialization file is your own personal collection of preferences. These personal preferences are typically set using the preferences dialog, which is found in Settings menu. The values found among the personal preferences will always override the system-wide set. Many of the parameter defaults which can be set in the preferences dialog have the option of being set to relative values rather than absolute values. For example, the Fft kmax parameter can be set to a value such as 12. It can also be set to a value like -1, which tells athena to select the value 1 wavenumber from the end of the data as the value for Fft kmax. All of the range parameters can be set to values which are relative to the extent of the actual measured data. These options are explained in the parameter description on the preferences dialog. The preferences can be overridden by setting session defaults. The session defaults can be set for individual parameters in the right-click context menu for each parameter (Sec on page 77), for each group of parameters (Sec on page 78), or for all parameters in the Values menu. The session default is taken from the value for the current group and is then used as the default parameter value for each subsequent data group as it is imported. These values do not persist between athena session. Once you close athena, the set of session defaults is lost. The concept behind session defaults is to provide a mechanism for handling data that is not well handled by the preferences. For example, on the beamline computer I typically have athena s preferences tuned to work well for the uranium L III data my group usually collects. When working on other edges, I will often set session defaults once I get a feeling for what parameter values work well for those data. This work is licensed under the Creative Commons Attribution-ShareAlike License. 81

82 7.3. DEFAULT PARAMETER VALUES Overriding the session defaults is the data preprocessing mechanism (Sec. 3.5 on page 28). When data preprocessing is performed and the option to set parameter values to the preprocessing standard is selected, those values will override all session defaults and preferences. 82 This work is licensed under the Creative Commons Attribution-ShareAlike License.

83 Chapter 8 Data export Although athena handles all of your XAS data processing chores, there are many other things you may want to do with you data, such as preparing beautiful plots for publication or importing data into artemis. This chapter explains the various kinds of output files available in athena. There are three main types of export files, each of which is explained on the following pages: Column data files useful for importing into other plotting programs Project files which capture the entire state of your current work in athena. These can be re-imported into athena, imported into artemis, or ed to your collaborator in another time zone. Report files summarizing parameter values for all the data groups in your project. These report files can be imported into spreadsheet or a database program. 8.1 Column output files After doing a lot of analysis, you will eventually need to make beautiful pictures for publication. As a glance at any of the screenshots in this document will attest, the graphical output of athena is adequate but far from beautiful. Fortunately, athena can export your data in a variety of ways and in a format that can be imported easily into almost any other program, such as a spreadsheet or a graphics package such as Origin or Kaleidegraph. The current data set the one marked in red in the group list and the one whose parameters are displayed in the main window can be saved in a number of ways. The various choices are listed under the File menu, as seen in Figure 8.1 on the next page. Note that χ(k) data can be saved with various k-weightings using the entries in the submenu. The columns in the µ(e) output file are: 1. energy 2. µ(e) 3. background 4. derivative of µ(e) 5. I0 6. pre-edge line 7. post-edge line The columns in the norm(e) output file are: 1. energy 83

84 8.1. COLUMN OUTPUT FILES Figure 8.1: Exporting a column data file for a group. 2. normalized µ(e) 3. normalized background 4. derivative of normalized µ(e) 5. I0 The columns in any of the χ(k) output files are: 1. k 2. k-weighted χ(k) 3. Fourier transform window The χ(r) output file contains both parts of the complex Fourier transform, as well as the magnitude and phase. That is, of course, redundant, but it s also convenient. The columns are: 1. R 2. real part of χ(r) 3. imaginary part of χ(r) 4. magnitude of χ(r) 5. phase of χ(r) 6. back transform window For the sake of clarity, we use the letter q to represent Fourier filtered wavenumber. The χ(q) output file also contains both parts of the complex back transform, as well as the magnitude and phase. 1. q 2. real part of χ(q) 3. imaginary part of χ(q) 84 This work is licensed under the Creative Commons Attribution-ShareAlike License.

85 CHAPTER 8. DATA EXPORT 4. magnitude of χ(q) 5. phase of χ(q) The derivative output file has been discontinued as of version The µ(e) and normalized µ(e) files now have columns containing the derivative and derivative of the normalized spectrum, respectively. In certain situations, it is much more convenient to write column data files containing data from many groups. This is done with the help of the mark buttons. The data from each of the marked groups can be saved in a variety of forms using the saved marked groups submenu, as shown in Figure 8.2. Figure 8.2: Exporting column data files for the set of marked groups. The output file will contain the x-axis value (i.e. energy, k, R, or q) in the first column. The remaining columns will contain each of the marked data groups, in the order they appear in the group list. The final column output option is to export each of the marked groups as a single data column file of the sort described above. When you select one of the output file types shown in Figure 8.3 on the next page you are prompted to select a directory, as in Figure 8.4 on the following page. Each marked group will be exported to a file in that directory with a file name formed from the group label. All of the output files discussed on this page have a header of the form shown below. The first line identifies the version of athena used to write the file. The second line identifies the type of file. The next several lines summarize all the parameters from the main window. The remaining lines are any header files recognized by athena from the original data file. This work is licensed under the Creative Commons Attribution-ShareAlike License. 85

86 8.1. COLUMN OUTPUT FILES Figure 8.3: Exporting column data files for each of the marked groups. Figure 8.4: Folder selection dialog for exporting each marked group. Note that, at this time, there is no way to create a new folder from within this widget. Your target folder needs to already exist. 86 This work is licensed under the Creative Commons Attribution-ShareAlike License.

87 CHAPTER 8. DATA EXPORT # Athena data file -- Athena version # Saving fe.300 as mu(e) #. Element=Fe Edge=K # Background parameters #. E0= Eshift=0.000 Rbkg=1.000 #. Standard=0: None #. Kweight=1.0 Edge step=2.825 #. Fixed step=no Flatten=yes #. Pre-edge range: [ : ] #. Pre-edge line: * E #. Normalization range: [ : ] #. Post-edge polynomial: * E e-07 * E^2 #. Spline range: [ : ] Clamps: None/Strong # Foreward FT parameters #. Kweight=0.5 Window=kaiser-bessel Phase correction=no #. k-range: [ : ] dk=1.00 # Backward FT parameters #. R-range: [ : ] #. dr=0.00 Window=kaiser-bessel # Plotting parameters #. Multiplier=1 Y-offset=0.000 #. # XDAC V1.2 Datafile V1 # "fe.300" created on 10/4/02 at 9:37:52 AM on X-11A # ring energy= 2.58 GeV # E0= # NUM_REGIONS= 3 # RB= k # RSS= k # PP= # settling time= 0.50 # offsets= # gains= # iron foil, I0: 50N2, It:N2, 300K # Project files The most important type of output file is the project file. A project file contains all of the data you have imported, all of the parameters associated with each data file, the content of the journal, and several other collections of important data. All of this gets saved in a single, easily transportable file. The primary purpose of the project file is to save you work. When you open a saved project file, all of the data and all of their parameters are imported into athena, returning athena to the state it was in when saved the project file. artemis ( athena s sister program intended for analysis of EXAFS data) can read these project files. Thus the project file is the best way of moving your data between the two programs. Even better, the project file is a form of collaboration. The format of the file is platform independent. A project file written on one computer can read on another computer, even if those computers use different operating systems. A project file can be burned to a CD, placed on a web site, or sent to a collaborator by . To save a project file, simply select one of the File menu options highlighted in Figure 8.5 on the next page. The first two options saves the entire current state of athena. If the project has already been saved, the Save project option overwrites the previous file with the new state of your project. Hitting Ctrl - s does the same thing. Clicking on the modified indicator the other highlighted region in the screenshot This work is licensed under the Creative Commons Attribution-ShareAlike License. 87

88 8.2.1 The project file format and compatibility with older versions Figure 8.5: Saving a project file. also saves the project. Alternately, you can select Save project as... and you will be prompted for a new file name for the project. The final option will write only the marked groups to a project file. You can think of this as a sort of sub-project file. This is another of the many ways that the group markings are used by athena. As with any software, you should save your work early and often. athena and ifeffit have their flaws. It would be a shame to discover one of them after having done a lot of unsaved work The project file format and compatibility with older versions The athena project file is designed to be quick and easy for athena to read. Unfortunately, the file format is not particularly human-friendly. Most of the lines of the project file are in the form written out by perl s Data::Dumper module. This freezes athena s internal data structures into perl code. When the project file is imported, these lines of perl code are evaluated. (This evaluation is performed in a Safe compartment, i.e. a memory space with restricted access to perl s system functionality. This provides a certain level of protection against project files constructed with malicious intent.) Starting with version , athena writes out its project files using compression. The files written are identical to the format used by the popular gzip program, using the highest level of compression. athena and artemis will import these files or uncompressed project files from earlier versions of athena in a transparent manner. It is quite possible that the user will never even realize that this change in the project file format occurred. 88 This work is licensed under the Creative Commons Attribution-ShareAlike License.

89 CHAPTER 8. DATA EXPORT One possible problem is if someone using the latest version of athena wants to share a project file with someone who is not using the latest version. In that case, the project file will be written using compression, but the person with the older version will not be able to import it into his version of athena. The best solution to this problem is to encourage your colleague to upgrade to the latest version of athena. Barring that, there are two other possibilities. The better solution is to rename the file from whatever.prj to whatever.prj.gz then use a decompression program to decompress the project. On unix, gzip is a good choice. On the Mac, there are a number of options, including gzip. On Windows, many popular compression and archiving programs can deal with gzip compressed files. Simply run the renamed file through the decompression program and use the resulting file. There are no changes to the textual content of the project file the only change is that athena uses compression by default. The less good solution is for the person writing the project file to set the General compress prj preference parameter to false. This will get you over the hurdle of communicating with your colleague, but it is an inferior solution. Compression reduces the size of the project file by up to a factor of 4, which is a very nice feature indeed. 8.3 Parameter report files The final kind of output file is a parameter report. In the Edit menu, you will find a submenu labeled Write a report, shown in Figure 8.6. The various options in that submenu write out files containing the parameters from the main window. Figure 8.6: Writing a report on data groups in athena. The first two options write all the parameters to an Excel file, the second two options write the same information to a simple comma separated value file, the next two options write the information to a plain text file. In each case, you have a choice of saving parameters from all groups or only the marked groups. The last option in the list is a way of moving data from athena to the Xfit analysis program. If you This work is licensed under the Creative Commons Attribution-ShareAlike License. 89

90 8.3. PARAMETER REPORT FILES Figure 8.7: An example of the Excel spreadsheet output displayed in OpenOffice. know what that is, you probably already know how to use this output file. If you have no idea what I am talking about, it is unlikely to matter to you. Really. 90 This work is licensed under the Creative Commons Attribution-ShareAlike License.

91 Chapter 9 Data processing athena offers a variety of data processing chores chores which modify the data in some way to prepare it for more extensive analysis. With the exception of merging data groups, all data processing features are accesses through the Data menu, shown in Figure 9.1. All the entries in the Data menu, replace the main window with a dialog specially designed for the data processing chore. You can work on more than one data group in any dialog without having to return to the main menu. Clicking on a group label in the group list will make that group current, display parameters appropriate to the data processing dialog, and plot the data in some appropriate manner. When you are finished using the data processing dialog, you can press the button labeled Return to the main window. Doing so will close the special dialog and redisplay the main window. Figure 9.1: The Data menu is used to access almost all data processing dialogs. 91

92 9.1. CALIBRATING DATA GROUPS 9.1 Calibrating data groups Data calibration is the process of selecting a point in your data as the edge energy and applying an energy shift to your measured data so that the selected point is at a specified value. For metals, that value is usually the tabulated edge energy. Figure 9.2: This is the calibration dialog. When this dialog in Figure 9.2 starts, the current group is plotted as the derivative of µ(e). The menu allows you plot the data as µ(e), normalized µ(e), derivative of µ(e), or second derivative of µ(e). If your data is noisy, you may find it helpful to apply smoothing. ifeffit s simple three-point smoothing algorithm is applied the number of times indicated, then the data are replotted. The selected point is shown in the plot with the orange circle, as shown in Figure 9.3 on the next page. You can type in a new value in the Reference box or click the Select a point button then click on a point in the plot. By default, the Calibrate to box contains the tabulated edge energy of the absorber measured for these data, but that too can be edited. When you plot the second derivative, the Find zero crossing button becomes enabled. This finds the zero crossing of the second derivative that is nearest to the current value of the reference point. When plotting the second derivative, smoothing helps, even for fairly clean data. When you click the Calibrate button, the values of e0 and eshift are set for the current group such that the selected point in the data takes the calibration value. 9.2 Aligning data groups Aligning data is the process of moving a data group in energy onto an absolute energy grid defined by some standard. In athena that standard is chosen fairly arbitrarily it is simply one of the other groups in the group list. The alignment is done by adjusting the eshift parameter. 92 This work is licensed under the Creative Commons Attribution-ShareAlike License.

93 CHAPTER 9. DATA PROCESSING Figure 9.3: As you work on calibrating your data, the current reference point is indicated by a small orange circle. This adjustment can be done simply by manually editing the eshift parameter, but tools exist on the alignment dialog, shown in Figure 9.4 on the following page, to make this somewhat easier. There are several variations on how the alignment is performed and visualized. As the alignment proceeds, it can be plotted as µ(e), normalized µ(e), the derivative of µ(e) (as shown in Figure 9.5 on the next page), or the smoothed derivative of µ(e). A three-point smoothing function is applied three times to the derivative of the µ(e) if that plotting option is selected. The alignment is always done by moving the current data group and keeping the standard fixed. The standard is selected from the menu at the top of the dialog. This menu contains the entire contents of the group list, excluding those groups that cannot be plotted in energy. You can perform the alignment by hand by clicking any of the buttons labeled with numbers. Those buttons will move the current group up or down in energy by the amount on the button s label. Alternately, you can type an energy shift value in the box that displays the current value of eshift. You can click these buttons until the data line up nicely. Clicking the Auto align button performs a simple fit in an attempt to align your data to the standard. The fit is evaluated over an energy range from 50 volts below the edge to 100 volts above. The parameters in the fit are an energy shift and an overall scaling term. The function minimized is the difference between the derivative of the standard and the derivative of the current group modified by the fitting parameters. The energy shifted data is interpolated onto the energy grid of the standard for the fit. This algorithm works quite well for data that are fairly clean and are misaligned by less than 5 or 10 volts. For noisy data, the fit may be more successful if you choose to fit smoother data by selecting that option from the menu labeled Fit as:. For very misaligned data, you may need to manually set an approximate value for eshift before clicking the Auto align button. You can apply the automated alignment algorithm to many groups in sequence. First mark all the groups that need to be aligned, then click the button that says Align marked groups. This may take a few minutes, depending on how many groups you have marked, but at the end hopefully all of your data will be nicely aligned. This alignment algorithm is the same as the one used by the preprocessing feature (Sec on page 30) of the column selection dialog. If you have imported a reference channel (Sec. 3.4 on page 27) with your data, you can use this dialog to align the reference channels. This puts your real data on a proper absolute energy grid, which is very important for comparing edge energies in XANES studies. This work is licensed under the Creative Commons Attribution-ShareAlike License. 93

94 9.2. ALIGNING DATA GROUPS Figure 9.4: The data alignment dialog. Figure 9.5: As you work on aligning your data, the current data group is plotted along with the standard. This gives you visual feedback on how well your data are aligned. 94 This work is licensed under the Creative Commons Attribution-ShareAlike License.

95 CHAPTER 9. DATA PROCESSING It is very important to align your data well. Many other parts of athena assume that you have already done a good job of aligning the data. Merging (Sec on page 112) and linear combination fitting (Sec on page 115) are examples of this. A common approach to processing data that I use is to import a first scan and to decree that one as the standard. I will calibrate the reference channel of that first scan. That puts the reference of the first scan at its proper place on an absolute energy scale. Once that is calibrated, I will import the rest of my data from that series of measurements and also import a reference channel for each one. I will then align each of the reference channels to the reference channel of my designated standard. If the data is of high quality, I will typically use the pre-processing feature while importing all of my data. In many cases, following this procedure and trusting the automated alignment is sufficient to prepare my data for merging and further analysis. 9.3 Dispersive XAS In a dispersive XAS experiment a curved crystal polychromator replaces the the standard monochromator. By virtue of being curved, a polychromator passes a much broader band of energies than a monochromator. The curved geometry means that different parts of the crystal are at different angles relative to the incident white beam, so each part of the crystal passes a different energy. The curvature also serves to focus the polychromatic beam to a spot at some distance from the crystal. The details of the band pass and the focal distance depend on the energy range of the experiment. The sample is placed at the focal spot. All the energies pass through and interact with the sample. After the sample, the energies splay out as the beam defocuses. The dispersive data is measured as a function of pixel position on an areal detector. Each pixel subtends an energy range of the polychromatic beam The dispersive data processing algorithm These data must be calibrated by converting pixel position to energy. This is done by measuring a well-known standard and the unknown data in the identical experimental configuration. The standard is compared to the same sample as measured on a normal XAS beamline. The dispersive and standard data are compared. Pixel position p is converted to energy by a quadratic function: E = A + B p + C p 2 (9.1) The parameters A, B, and C are determined by fitting the standard measured in dispersive mode to the standard measured normally. That set of parameters is then applied to all the data measured under the same experimental conditions. In this example, taken from the demo file (Sec. 2.2 on page 16) for dispersive data calibration, data was measured on copper sulfide along with a copper foil used as the standard. The first item in the group list is the data measured copper foil on a conventional beamline. The third item is the copper foil data measured in dispersive mode. The second item is that same measurement calibrated by the beamline scientist and can be used to test athena s implementation. The remaining data are a sequence of dispersive measurements made on copper sulfide. The conventionally measured data is selected as the Standard in the menu at the top of the page in Figure 9.6 on the next page. The fit using the equation above is quite sensitive to the starting conditions. It is therefore prudent to adjust the linear term by hand. The initial guess for the calibration terms is shown in red along with the This work is licensed under the Creative Commons Attribution-ShareAlike License. 95

96 9.3.2 Using the dispersive data correction Figure 9.6: The dispersive XAS calibration dialog. conventional data in blue in Figure 9.7 on the facing page. Changing the linear term to 0.29 and clicking the Reset offset button results in the green spectrum, which is much closer to the standard data. The Reset offset re-evaluates the offset term to roughly align the first peak of the first derivative of the standard with the peak of the dispersive spectrum calibrated with the new linear term. These two terms will stay strictly related as long as the constrain offset to linear term button. Once you have a linear term and offset that are close to correct, unclick that button and try fitting by clicking the Refine alignment parameters button. The resulting µ(e) spectrum, shown in Figure 9.8 on the next page, looks very much like the conventional data. For these data, the dispersive χ(k) spectrum is almost identical to the conventional spectrum. This gives some confidence in using the fitted conversion parameters for the copper sulfide data. Armed with these parameter values, we can convert the copper sulfide data to energy. A converted dispersive measurement can be made into a data group and inserted into the group list by pressing the Make data group button. The Convert all MARKED pixel groups button will apply the conversion parameters to all marked data groups (Sec. 6.2 on page 68). Note that the algorithm employed by athena is a reimplementation of an algorithm long used at ESRF beamline ID Using the dispersive data correction By default, the dispersive data correction tool is disabled in athena. The reason is that the test made on each imported data file to determine whether it is contains dispersive data is rather time consuming. Since rather few of athena s users measure dispersive data, it is better to disable that time-consuming test. Because it is disabled, you will see that the entry for Calibrate dispersive XAS is greyed out in the Data menu. To enable the dispersive data correction, go to the preferences dialog (Sec. 6.8 on page 76) and set the Pixel do pixel check parameter to true. You will now be able to access the dispersive data correction 96 This work is licensed under the Creative Commons Attribution-ShareAlike License.

97 CHAPTER 9. DATA PROCESSING Figure 9.7: The copper foil calibrated using the default parameters and a reasonably close guess. Figure 9.8: The fit to the copper standard. This work is licensed under the Creative Commons Attribution-ShareAlike License. 97

98 9.4. DEGLITCHING DATA dialog. 9.4 Deglitching data Occasionally your data has spurious points that are obviously different from the surrounding points. These so-called glitches can be caused by a variety of issues involving the monochromator, the electronics, or the sample itself. In principle, it should not be necessary to do anything at all about glitches. A feature in the data that is only one or two points wide necessarily contributes a high frequency signal to the data. Since the data are treated using Fourier techniques, these high frequency additions to the data should have scant impact on the data. In practice, there are a variety of ways that glitches like those shown on the right in Figure 9.10 on the facing page can impact the processing of the data. Certainly, large glitches are unsightly and have an aesthetic impact on the presentation of your data. The process by which glitchy points are removed from the data is called deglitching. Yes, I also think that s a funny sounding word. Figure 9.9: The deglitching dialog. athena s approach to deglitching involves simply removing the points from the data. No effort is made to interpolate from the surrounding points in an effort to replace that point with a presumably more appropriate value. The reason that no interpolation is done is that EXAFS data are typically measured on a grid that is oversampled. When the data are converted from µ(e) to χ(k) as part of the background removal, the data are rebinned onto the standard k-grid. Since a rebinning is performed later in the data processing, there is no reason to interpolate at the time of deglitching. Deglitching only removes points from the data in athena s memory. The data on disk are never altered. There are two methods of deglitching offered by athena s deglitching dialog, shown in Figure 9.9. The first involves selecting and removing the glitches one by one. The points are selected by clicking the Choose a point button then clicking on the glitch in the plot. After clicking on the plot window, the selected point 98 This work is licensed under the Creative Commons Attribution-ShareAlike License.

99 CHAPTER 9. DATA PROCESSING is indicated with an orange circle, as on the left of Figure Clicking the Remove point button removes that point from the data, shown in the bottom panel. Figure 9.10: (Left) This is an example of data the needs deglitching. In this case, there was a problem with data channels not arriving at the measurement computer in the proper sequence. This timing problem resulted in occasionally spikes in the data. (Right) A point has been selected for removal. The point flagged for removal is indicated with a little orange circle. (Bottom) The selected point has been removed from the data. The deglitching margins are displayed along with the data. The second method for removing glitches is more automated. In the figure above, the deglitching margins are shown by the orange lines. Those margins are drawn between the specified minimum and maximum energy values. The lines are drawn a set amount above and below the post-edge line used to normalize the data. The separation between the post-edge line and the margins is given by the value in the tolerance box. When you click the Remove glitches button, and points that within the energy range of the margins but which lie above the upper margin or below the lower margin are removed from the data. These margins can also be drawn in the pre-edge region using the pre-edge line. There is no way to use margins in an energy region that includes the edge. This technique is handy in that it quickly removes many glitches in a situation like the one shown. It is very dangerous, however, if not used with care. If the margins extend into the white line region or are so tight around the post-edge line that the oscillatory structure crosses the margins, this technique will happily remove good points from the data. So set your margins well. This work is licensed under the Creative Commons Attribution-ShareAlike License. 99

100 9.5. TRUNCATING DATA A useful variation of the point-by-point technique involves plotting the χ(e) data. This can only be done for glitches above the edge, but it can be a very useful technique for removing small glitches from the data. In Figure 9.11 we see µ(e) data for U 3 O 8 that appear fine. Figure 9.11: (Left) µ(e) data for U 3 O 8 that have a tiny glitch hidden in the high energy region. (Right) Plotted as χ(k), the glitch at about 12 Å 1 in these χ(k) data is clearly seen. When the χ(e) is displayed, the k-weight value specified by the k-weight controls is used. From there, the point-by-point technique is identical to how it used with µ(e) data. The advantage is that small glitches might be easier to see and to pluck from the data when the data is plotted as χ(e). The point-by-point deglitching algorithm works on the χ(e) data in the same manner as for µ(e) data. Points are selected by clicking on the plot, then removed by clicking the Remove point button. 9.5 Truncating Data If your data does something odd at one end of the scan, the easiest solution might be to simply trim it away. The truncation dialog in Figure 9.12 on the facing page allows you to chop data before or after a selected value. The menu is used to tell athena whether points should be trimmed from before or after the selected point. The point can be chosen by typing in the box or by clicking the pluck button then clicking on the plot. When you select a point, it is indicated with a vertical line, as shown in Figure 9.13 on the next page. To remove the data before or after that line, click the Truncate data button. Sometimes the issue is not simply that the data are icky after a certain point. Sometimes your sample has elements with nearby edges, thus limiting the range over which you can actually measure the data. An example is shown in Figure 9.14 on page 102, the Ti K edge is at 4966 ev and the Ba L III edge is at 5247 ev. A careless choice of spline and normalization range will lead to a data processing disaster. Of course, truncation is not the only way of dealing with this issue. A careful choice of the spline, pre-edge, and normalization ranges is usually sufficient to treat any strange features at the beginning or end of the data set. So which is better? I think it s a matter of preference. As long as you understand what you are doing and process all your data in a consistent, defensible manner, you can use either approach. This truncating algorithm is the same as the one used by the truncating feature (Sec on page 30) of the column selection dialog. 100 This work is licensed under the Creative Commons Attribution-ShareAlike License.

101 CHAPTER 9. DATA PROCESSING Figure 9.12: The truncation dialog. Figure 9.13: Tin oxide data with some spurious points near the end of the scan. This work is licensed under the Creative Commons Attribution-ShareAlike License. 101

102 9.6. REBINNING DATA GROUPS Figure 9.14: The Ti K and Ba L III edges of BaTiO Rebinning data groups Some beamlines offer the option of slewing the monochromator continuously from the beginning of the scan to the end. A typical implementation of this works by driving the mono at a given speed and reading the measurement channels continuously. The signal is integrated for bins of time. After each time interval, the integrate signals are stored in a buffer. At the end of the scan, the buffer is dumped to disk. At my old beamline (MRCAT, Sector 10 at the APS), a typical EXAFS scan measured in this mode takes under 3 minutes. The drawback of this measurement mode (other than the generation of tons of data that needs to be analyzed!) is that the data are vastly over sampled. The energy grid is typically 0.3 to 0.5 ev. That is fine in the edge region, but much too fine for the EXAFS region. The dialog shown in Figure 9.15 on the facing page allows you to specify a simple three-region grid. Typically, the pre-edge region is sparse in energy, the edge region is fine in energy, and the EXAFS region is uniform in wavenumber. The grid sizes and the energies of the boundaries are entered into their entry boxes. You can view the results of the rebinning by pressing the Plot data and rebinned data button. Clicking the Make rebinned data group button performs the rebinning and makes a new group. This group gets placed in the group list and can be interacted with just like any other group. You can bulk process data by marking a number of groups and clicking the Rebin marked data and make groups button. This may take a while, depending on how many groups are being processed. This deglitching algorithm is the same as the one used by the rebinning feature (Sec on page 29) of the column selection dialog. This uses a boxcar averaging to put the measured data on the chosen grid. This has the happy effect of cleaning up fairly noisy data, as you can see in Figure 9.16 on the facing page. 9.7 Smoothing data Smoothing data is usually a bad idea. The way to improve noisy data is to measure more of it and rely upon the central limit theorem to work its magic. Smoothing is usually little more than an aesthetic fix and it introduces distortions to your data that become serious sources of systematic uncertainty in any later attempts to analyze the smoothed data. 102 This work is licensed under the Creative Commons Attribution-ShareAlike License.

103 CHAPTER 9. DATA PROCESSING Figure 9.15: The rebinning dialog. Figure 9.16: Quick scan data that have been rebinned onto a normal EXAFS energy grid. This work is licensed under the Creative Commons Attribution-ShareAlike License. 103

104 9.8. CONVOLUTING DATA GROUPS Be that as it may, athena gives you a few smoothing options. One applies ifeffit s three-point smoothing algorithm repeatedly to your data. The number of iterations can be set using the number selection control. The other is a wacky sort of Fourier thing that I once wrote. On occasion it works fine, usually it sucks. Eventually I plan to implement a Savitsky-Golay filter. You can overplot the data and the smoothed data using the button on the left, as shown in Figure The button on the right makes a group out of the smoothed data and places it in the group list. Figure 9.17: The smoothing dialog. 9.8 Convoluting data groups This is one of athena s odder utilities. It takes perfectly fine normalized µ(e) data and makes it worse by adding artificial broadening, artificial noise, or both. The broadening can be a Gaussian or a Lorentzian convolution by the selected width in energy. The noise is randomly generated using an epsilon that is chosen as a fraction of the size of the edge step. Like other dialogs, there is a button for plotting the data along with its modification and another for turning the modified data into a data group listed in the group list. These are shown in Figure 9.19 on the facing page. An example of broadened data is shown in on the left in Figure 9.20 on page 106 and an example of data with artificial noise is shown on the right. 9.9 Deconvoluting data groups 104 This work is licensed under the Creative Commons Attribution-ShareAlike License.

105 CHAPTER 9. DATA PROCESSING Figure 9.18: Some noisy gold oxide data that has been smoothed using the iterative smoothing algorithm. Figure 9.19: The convolution dialog. This work is licensed under the Creative Commons Attribution-ShareAlike License. 105

106 9.10. SELF-ABSORPTION APPROXIMATIONS Figure 9.20: (Left) Iron foil data broadened by 1 ev. (Right) Iron foil data with a bit of artificial noise added. Spectral deconvolution is on athena s to do list Self-absorption approximations The statement that µ(e) measured in fluorescence is the ratio of the signals on the fluorescence and incident ion chambers is only true in the limit of very thin samples or very dilute samples. For thick, concentrated samples, the depth into which the incident beam can penetrate changes as fine structure of µ(e) changes. As the oscillatory part wiggles up, the penetration depth diminishes. As it wiggles down, the depth increases. This serves to attenuate the oscillatory structure. Ideally, all your samples that must be measured in fluorescence should be either sufficiently thin or sufficiently dilute that your data is unaffected by this self-absorption effect. Sometimes, the constraints of the sample are such that self-absorption cannot be avoided. In that case, you need to figure out what to do at the level of the data analysis to find the correct answer in the face of this problem. One solution is presented here. The self-absorption correction dialog offers four different algorithms to approximate the effect of selfabsorption using tables of x-ray absorption coefficients. One of them works on XANES data, while all four can be used to correct EXAFS data. One of the algorithms works well for samples that are not in the infinitely thick limit. These various algorithms are taken from the available literature and are offered to allow you to compare. The example I show here are particularly well suited to this sort of correction. In both cases, we have a way to evaluate the success of the correction. In general, it can be difficult to guarantee the success of the correction, particularly if the entire composition of the sample is not well known. That means that, in practice, this sort of correction is not always useful. But when it is, it s very useful indeed. It is also important to understand that the self-absorption effect only effects the amplitude of your EXAFS data, not the phase. Thus even if you are unable to properly correct, you can still analyze your EXAFS data for bond lengths. 106 This work is licensed under the Creative Commons Attribution-ShareAlike License.

107 CHAPTER 9. DATA PROCESSING Correcting XANES data The self-absorption dialog in Figure 9.21 allows you to choose between the four algorithms and to provide the parameters of the correction. Figure 9.21: The self-absorption dialog. In this example of correcting XANES data, ammonium sulfate was dissolved in water at three different molarities: 0.1, 0.47, and The correction algorithm requires a complete description of the sample, so we need to determine the ratio of water to ammonium sulfate. 1 amu = x 10^-27 kg 1 mole = x 10^23 particles 1 water molecule is 18 amu = x 10^-26 kg 1 mole of water is kg 1 liter of water = 1 kg water, so 1 liter is moles Adjusted for the density change upon adding the solute, there are about 54.8 moles of water in the solution So the formulas for these three molar solution are ((NH4)2SO4)0.10(H2O)54.8, ((NH4)2SO4)0.47(H2O)54.8, and ((NH4)2SO4)0.94(H2O)54.8. The uncorrected and corrected data for the 0.94M sample are shown in Figure 9.22 on the next page on the right. The three uncorrected spectra are shown on the left and the corrected spectra are shown on the bottom. Thanks to Dani Haskel and Zhang Ghong for these data. This work is licensed under the Creative Commons Attribution-ShareAlike License. 107

108 Correcting XANES data Figure 9.22: (Left) This is the 0.94M data corrected by this algorithm. (Right) Here is the raw data for the three samples. You can see the effect of self-absorption growing for the more concentrated samples. (Bottom) The corrected data. Not bad, eh? 108 This work is licensed under the Creative Commons Attribution-ShareAlike License.

109 CHAPTER 9. DATA PROCESSING Correcting EXAFS data Of the four algorithms, only the Booth algorithm as shown in Figure 9.23 is suitable for samples of finite thickness. The other three all assume that samples are infinitely thick. Figure 9.23: The self-absorption dialog with copper data for correction using the Booth algorithm. After selecting an algorithm, you can use the other controls to enter the incident and outgoing angles in degree and the thickness of the sample in microns. All algorithms require that you specify the formula of the sample with stoichiometries in atomic percent. These two data groups were measured from the same thin copper foil, one in transmission and the other in fluorescence. These data were provided by Corwin Booth and are the data from the paper where he and Bud Bridges presented their algorithm. Since this is a thin film, only the Booth algorithm is appropriate. (Although you might want to compare it to the other algorithms, if only to see how the others overestimate the size of the correction due to the fact that they do not consider film thickness.) The formula for copper is Cu and Corwin reports that the thickness of the sample is 4.6, the incident was 49 degrees and the outgoing angle was 41 degrees. Enter these values and plot the correction. Save the corrected data group and compare it to the transmission data, as shown in Figure 9.24 on the next page. There are several things that can effect the comparison of the corrected fluorescence data and the transmission data. These include how the two data sets were normalized, the incident and outgoing angles, and the thickness. Try changing all those things to see how they effect the correction Information depth For any sample, you can plot the information depth as a function of wavenumber. This quantity was defined by Troger et al. and represents the depth into the sample probed by the incident beam for a given sample geometry as a function of energy. In that depth, 68 percent of the incident photons are absorbed This work is licensed under the Creative Commons Attribution-ShareAlike License. 109

110 Algorithm references Figure 9.24: It works pretty well. The green trace is the corrected fluorescence spectrum, which compares well to the transmission data. and 68 percent of the fluorescence photons are generated. The information depth provides a useful metric for whether a film sample can be considered thick in a particular experiment Algorithm references Fluo algorithm The program documentation for Fluo can be found at Dani s web site and includes the mathematical derivation: Booth Algorithm C. H. Booth and F. Bridges, Physica Scripta, T115, (2005) p See also Corwin s web site: Troger Algorithm L. Troger, et al., Phys. Rev., B46:6, (1992) p Pfalzer Algorithm Another interesting approach to correcting self-absorption is presented in P. Pfalzer et al., Phys. Rev., B60:13, (1999) p This is not implemented in athena because the main result requires an integral over the solid angle subtended by the detector. This could be implemented, but the amount of solid angle subtended it is not something one typically writes in the lab notebook. If anyone is really interested in having this algorithm implemented, contact Bruce. Atoms Algorithm B. Ravel, J. Synchrotron Radiat., 8:2, (2001) p See also the documentation for Atoms at Bruce s website for more details about it s fluorescence correction calculations. Elam tables of absorption coefficients W.T. Elam, B.Ravel, and J.R. Sieber, Radiat. Phys. Chem., 63, (2002) p Removing multi-electron excitations 110 This work is licensed under the Creative Commons Attribution-ShareAlike License.

111 CHAPTER 9. DATA PROCESSING XAS is normally thought of in terms of a single electron phenomenon. A photon goes in and a photoelectron goes out. In fact multi-body phenomena are possible and, on occasion, must be considered in the interpretation of XAS data. One such is the so-called shake-off effect in which the photoelectron has sufficient kinetic energy to excite a high-lying electron. For example, at around 415 ev above the uranium L III edge, the photoelectron can excite an or N 7 transition. The cross-section of this secondary edge can be quite small. In the example of the L III N 6,7 transition, the secondary cross section is about 3 orders of magnitude smaller than the primary L III edge. If, in this example, you have very good data with measurable EXAFS beyond about 10.5 Å 1, the multi-electron excitation will not be small compared to the L III EXAFS. Other multi-electron excitations have even larger cross-sections compared to their primary excitations. For a much more complete discussion of multi-electron excitations see Iztok Arcon s Mulielectron Photoexcitations page. athena uses a relatively simple algorithm to attempt to remove the effect of the multi-electron excitation from your data. Be warned that the algorithm described here requires considerable user input and sufficient knowledge to properly evaluate the results. This algorithm can do serious damage to your data.without a sober, knowledgeable assessment of the results of applying this algorithm made by you, the user, this part of athena should be considered fragile and dangerous. That said, let s carry on. The dialog shown in Figure 9.25 provides an interface to a simple, three-parameter algorithm for approximately removing the effect of the multi-electron excitation. Figure 9.25: The multi-electron excitation removal correction dialog. Describe basic idea secondary peak is a broadened reflection of the first. Describe algorithm spectrum shifted and broadened then subtracted from the data. Plot in various spaces to evaluate result. This work is licensed under the Creative Commons Attribution-ShareAlike License. 111

112 9.12. MERGING DATA GROUPS Real evaluation will require proper fitting of data. Make a group. Database of energy offsets. Figure 9.26: Removing the effect of the multi-electron excitation. The secondary excitation can be seen as the shoulder marked by the purple arrow. The red line shows χ(k) after removal. How did we know that to be the effect of an MEE? Problems fitting + C. Hennig, Phys. Rev. B, 75, (2007) p Merging data groups Sadly, most data that we measure is, frankly, kind of crappy. A single scan typically ranges from noisy to so dominated by noise that it s hard to recognize it as oscillatory. Fortunately, the central limit theorem works every single time. If you add up enough noisy scans, it eventually turns into real data! All entries in the group list which are marked will be included in the merge. Make sure that the marked groups really are the ones you want to include in the merge! Data can be merged as µ(e), normalized µ(e), or χ(k). In most cases, it makes little difference which one you choose. χ(r) will be the same regardless. (This can be tested, in fact, I encourage you to do so.) The standard deviation in the merged data is also computed and stays with the data in project and certain output files, although athena does nothing else with the standard deviation other than plotting it, which is shown in Figure 9.28 on the next page. By default, each data set is weighted the same in the merge. You can specify the weight to use for each data set using the importance parameter, which is 1 by default for ever group. Alternately, you can let ifeffit determine the amount of noise in the data by looking at the signal between 15 and 25 in R-space and then use the noise to weight the data. In that way, cleaner data contributes more to the merge. The choice between using the noise or the importance is made using the check buttons in the menu. The data merging feature is one of athena s most important. My typical work pattern is to carefully align scans on a sample, merge them, then analyze the merged data in artemis. It is essential that your data be well-aligned before merging. Merging poorly aligned data has the effect of significant attenuating the fine structure. 112 This work is licensed under the Creative Commons Attribution-ShareAlike License.

113 CHAPTER 9. DATA PROCESSING Figure 9.27: The contents of the Merge menu, showing the various ways that data can merged. Figure 9.28: Data merged as µ(e) plotted with its standard deviation. This work is licensed under the Creative Commons Attribution-ShareAlike License. 113

114 9.12. MERGING DATA GROUPS When merging as µ(e) or normalized µ(e), if every data group included in the merge has a reference channel, the reference channels will also be merged and these two merged spectra will be tied together as a reference channels (Sec. 3.4 on page 27). Thus the merge of the reference channels can serve as the alignment standard for the merge of the data. There is one situation where merging as µ(e) will be substantively different from the other two options. If something happens to change the values of the signals on the detectors in such a way that µ(e) for subsequent scans is of very different sizes but the normalized µ(e) data is consistent for all the data, then the merge in µ(e) will be dominated by the scans with larger absolute values while the merge in normalized µ(e) will treat all the data with similar weights. One way of having this happen is to change amplifier gains between scans. In that situation, you probably should choose to merge normalized or χ(k) data. 114 This work is licensed under the Creative Commons Attribution-ShareAlike License.

115 Chapter 10 Data analysis in Athena athena provides various kinds of data analysis. None of the data analysis capabilities in athena require the use of feff. Analysis of data using feff is a huge topic and involves a different program, artemis. The data analysis techniques included in athena are all purely empirical. While there is no substitute for careful, sophisticated analysis of EXAFS data using theory from feff, often the empirical techniques described in this chapter are adequate to answer the questions you have about your data. athena s analysis tools are accessed from the Analysis menu, as shown in Figure Figure 10.1: The contents of the Analysis menu Linear combination fitting 115

116 Fitting a single data group athena has a capability of fitting a linear combination of standard spectra to an unknown spectra. These fits can be done using normalized µ(e) spectra or χ(k) spectra. One use of this sort of analysis might be to interpret the kinetics of series of spectra measured during a reduction reaction. By fitting each intermediate spectrum as a linear combination of the end members, one can deduce the rate of the reaction. Another possible use would be to determine the species and quantities of standards in a heterogeneous sample. To access this feature, choose Linear combination fit from the Analysis menu. The normal parameter view will be replaced by the dialog in Figure 10.2 for performing the linear combination fit. Figure 10.2: The linear combination fitting dialog Fitting a single data group The linear combination dialog presents a table of menus. Each of these menus can be used to select a spectrum from among the data groups currently in the Data groups list. The basic idea of this dialog is that you will choose two or more standard spectra and fit a linear combination of them to the current (i.e. the one highlighted in pale red in the Data groups list) group. The fitting is done using the normalized µ(e) spectra. If the standards or the unknown are to be flattened, then the flattened spectrum will be used. (See the section on background removal (Sec. 4.1 on page 37) for details about flattened spectra.) You should have already done some data processing on the standards and on the unknowns. Specifically, you should align your data and set appropriate normalization parameters for each spectrum before starting to use the linear combination fitting dialog. Failing to adequately prepare your data for these fits may result in questionable fits. To do the fit, weighting parameters are defined for each standards spectrum except for the last one in the list. The weight for the last spectrum is one minus the sum of the other weights, thus constraining the standards to be 100 percent of the unknown. Thus, if you used three standards, the first two would have weights x and y and the third would have weight 1-x-y. x and y would then be varied to best fit the data. Each standard spectrum is interpolated onto the energy grid of the unknown when the fit is performed as 116 This work is licensed under the Creative Commons Attribution-ShareAlike License.

117 CHAPTER 10. DATA ANALYSIS IN ATHENA normalized µ(e). The fit is performed over the data range indicated by the text boxes near the top of the window. There are pluck buttons which can be used to set the fitting range by clicking on a plot of the data. Fitting normalized µ(e), derivative µ(e), or χ(k) is chosen using the radio buttons just above the table of standards. When fitting χ(k) spectra, you have the option of fitting a single spectrum to the data. When fitting normalized or derivative µ(e) spectra, you have the option of floating an E 0 for each standard independently. This is intended to fix up any inconsistencies in the energy alignment of the various spectra (although it is much better to do a good job of aligning your data before doing your linear combination fitting). These E 0 variables can be introduced by clicking on the checkbuttons in the table of standard spectra. You can introduce a linear offset to the fit to normalized µ(e) spectra. This is simple a line added to the sum of spectra in the fit. It introduces two parameters to the fit, a slope and an intercept. The line is multiplied by a step function centered at the E 0 of the unknown. Thus the linear offset is introduced only after the edge of the unknown. The purpose of this offset is to accommodate any variations in how the normalization is performed on the various spectra. To turn on the linear offset in the fit just click on the button labeled Add a linear term after e0? For best results, you should do a good job of aligning and normalizing your spectra before starting linear combination analysis. When normalization and alignment are done correctly, you can expect your fitted weights to sum to 1 and variation of E 0 for the data or standards will be unnecessary Constraints and modifications to the fit athena s linear combination dialog offers several constraints to the fitting parameters. The constraints are set and unset using the checkbuttons near the bottom of the dialog. Weights between 0 and 1 You can constrain the variable weights to be between 0 and 1 by clicking on the button labeled Weights between 0 and 1. In this case, each weight used is computed from the variable using this formula: guess weight_varied = 0.5 def weight = max(0, min(1, weight_varied)) The weight reported at the end of the fit, then, is the result of that formula. Note that the use of the min/max idiom means that uncertainties cannot be calculated for situations where the guess variable gets pinned to 0 or 1. That can happen in situations where one or more of the standards used in the fit is not appropriate to the data and is an indication that you should rethink the set of standards used in the fit. When this option is not selected, the guessed variable itself is used as the weight in the fit and is not prevented from being negative or larger than 1. Force weights to sum to 1 You can loosen the constraint that the weights sum to 1 by deselecting the final checkbutton. This allows the final weight to float freely along with the rest rather than constrain it to equal 1 minus the sum of the rest, as described above. Loosening this constraint might yield fit results that are hard to interpret. If the constraint that weights must be between 0 and 1 is in place, then the weight of the last standard in the fit is computed by this formula: This work is licensed under the Creative Commons Attribution-ShareAlike License. 117

118 Fitting, statistics, reports def weight_final = max(0, 1 - (w1 + w wn)) This forces the final weight to be positive, but may result in a fit that does have weights that, in fact, do not sum to one. Should that happen, it might be interpreted to mean that the normalization of the data or standards was not correct or that the choice of standards is not appropriate to the data. Constrain all standards to use a single E0 shift You can force all standards to use a single E 0 parameter in the fit. This is equivalent (albeit with a sign change) to fixing all the standards and using an E 0 shift on the unknown data. Adding noise to the data It is sometimes useful to check the robustness of the fit against noisy data. This is particularly true for a data set wherein some data are much noisier than others. To this end, athena allows you to add pseudo-random noise to the data before performing the fit. This is done using ifeffit s random() function with a user-supplied value for sigma. No care is taken to normalize sigma relative to the data, so a bit of trial and error might be necessary to find a suitable level of noise for your test. For normalized µ(e), sigma has a simple interpretation it is a fraction of the edge step. For derivative µ(e) and χ(k) data, you will need to compare your sigma value to the actual values of the data. You can examine the level of noise relative to your data before fitting by using the Plot data and sum from the operations list Fitting, statistics, reports To perform the fit, click Fit from the operations list. After the fit finishes, the data and the linear combination will be plotted along with vertical bars indicating the range over which the fit was evaluated. The values of all the fitting parameters are written to the Fit results tab. Interpretation of the statistical parameters in the linear combination fit is somewhat challenging. There are two reasons for this, both of which have to do with the fact that a non-linear, least-squares minimization is used in the analysis. First, it is difficult (perhaps impossible) to quantify the number of independent measurements in the XANES spectrum. That number is certainly less than the number of data points measured. Nonetheless, when the chi-square is evaluated, the number of data points is used as the number of measurements. Second, athena has no way of evaluating a measurement uncertainty ɛ for the XANES measurement. A value of 1 is used for ɛ in the equation for chi-square. These two issues, taken together, mean that chi-square and reduced chi-square tend to be very small numbers much smaller than 1. As a result, it is impossible to use reduced chi-square to evaluate the quality of a single fit. Relative changes in chi-square between fits are probably meaningful. However, given the two problems described above, chi-square does not have a very different meaning from the R-factor. The R-factor reported in the text box is sum ( (data - fit)^2 ) sum ( data^2 ) where the sums are over the data points in the fitting region. The chi-square and reduced chi-square are those reported by ifeffit. Interpretation of the statistical parameters requires you to be mindful of what you know about the system you are measuring. The statistical parameters alone are not sufficient to evaluate the fit results. The results of sample fractions must be meaningful in the context of any external knowledge you have about the system. You can replot the data and the fit using the most recent values for the fitted parameters by clicking Plot in the operations list. 118 This work is licensed under the Creative Commons Attribution-ShareAlike License.

119 CHAPTER 10. DATA ANALYSIS IN ATHENA You can save the text from the fit results box to a file by clicking Write a report in the operations list. This writes a column data file with the fit results as the header information. The columns in the file are x-axis (either energy or k), the data, the best fit, the residual, and each of the weighted components. You can make a data group out of the linear combination by clicking Make fit group in the operations list or out of the residual by clicking Make difference group in the operations list. This will allow you to plot and manipulate the fit or difference after leaving the linear combination dialog. The data group containing the fit result will be treated as normal data that can have a background removed or be Fourier transformed. When you save a fit using the derivative spectra, the fit group will be saved as a normal µ(e) spectrum. Reset in the operations list returns almost everything in the dialog back to its original state. If you need more than four standards, the number of standards as well as several other aspect of the linear combination fitting is configurable using the preferences dialog Constraining linear combination fit parameters between groups The various operational parameters described above can be constrained between data groups in the same manner as background removal and Fourier transform parameters on athena s main page. Two items in the operations list are Set params, all groups and Set params, marked groups. These will export the current group s values for fitting range, noise, weights between 0 and 1, force weights to sum to 1, and use of linear term to other groups. This should probably be done before using the marked group fitting feature described in the next section Batch processing One of the choices in the operations list is to Fit marked groups. All groups marked by having their purple buttons checked will be fit in the manner described above using the current selection of fitting standards and other fitting options. When the sequence of fits is finished, the Write marked report option will become enabled in the operation list. This will allow you to write a report in the form of a comma separated value file which summarizes the results of the sequence of fits. This report file can be read into any spreadsheet program. Note that the report file will only reflect the fits done during the batch job. Any changes made to the fitting model will not be included in that report until a new batch job is performed. Also note that the only way that the batch job is different from running the same sequence of fits by hand is that the report file can be generated. There is currently no way to generate a similar report from a sequence of fits not run using the batch processing option. However, you always have the option of saving individual fit reports as described above Combinatorial fitting using many standards One of the uses of this sort of XANES fitting is to try to figure out what s actually in a sample. One approach to figuring this out is to measure all plausible standard compounds and try fitting a large number of different combinations of the standards to the data. provides a tool for automating this. Here is how it works: 1. Load all of the standards that you want to consider into the table of standards in the linear combination dialog. You may need to increase the maximum number of standards using the preferences dialog to provide enough space in the table for all of the standards that you wish to consider. 2. You can limit the number of standards used in each fit with the incrementer widget just below the button marked Use marked groups. By default this number is 4, which says that the fits will This work is licensed under the Creative Commons Attribution-ShareAlike License. 119

120 Combinatorial fitting using many standards consider all possible binary, ternary, and quaternary combinations of standards. Increase this number to consider higher orders of combinations of standards. Decrease it to limit the number of fits to perform. You can also mark one standard as required by clicking the radio button in the right-most column of the table of standards. This will limit the combinations of standards tested against to data to those that contain the required standard. 3. Click Fit all possible combinations in the operations list and go get a cup of coffee. If the number of possible standards is large, this series of fits could take a while. For example, with 11 standards and considering up to the quaternary combinations, athena will perform 550 fits. (Really! C C C4 11 = 550). Once this series of fits finishes, the tab labeled Combinatorics will become active and raise to the top. In Figure 10.3, you will see two tables. The top table concisely summarizes all the fits that were performed, in order of increasing R-factor. Initially, the first item in the list which has the lowest R-factor is selected (i.e. highlighted in pale red). Figure 10.3: The combinatorial fitting results tab. The second table contains each of the standards and its weight and E 0 from the fit selected in the upper table. You can select a fit from the upper table by clicking on its line. When you do so, that fit becomes highlighted in pale red, its fitting results are inserted in the bottom table, it s best fit function is plotted along with the data, and its results are inserted into the other two tabs. In this way, you can examine any fit from the series, as seen in Figure 10.4 on the next page. Depending on the selection of standards, it is reasonable that two or more fits might have similar R- factors. You might interpret that to mean that those fits are statistically indistinguishable or you might be able to invoke some a priori knowledge to help choose between the similar fits. Other fits farther down in the list will be obviously worse both by statistical metric and by examination of their results. Clicking the right mouse button on a fit in the upper table will post a context menu with options relevant to the selected fit. These options include saving the fit as a data group; writing a data file with columns for the data, fit, residual, and each weighted standard; saving the report from the Fit results tab 120 This work is licensed under the Creative Commons Attribution-ShareAlike License.

121 CHAPTER 10. DATA ANALYSIS IN ATHENA Figure 10.4: The best fit from a combinatorial sequence. to a file; and writing a comma-separated-value report for the entire combinatorial sequence which can be imported into a spreadsheet program. Beneath the tables is a button labeled Write CSV report for all fits. Clicking this will prompt you for a file name and location, then write a comma-separated-value report of all fits Peak fitting Peak fitting involves fitting a number of analytical line shapes to XANES data. The typical approach is to simulate the XANES data using one or two step-like function and several Gaussians or Lorentzians for the peaks in the data. The centroids, amplitudes, and widths of the various line shapes are either fixed or varied to best fit the data. In athena s implementation of peak fitting, a Levenberg-Marquardt non-linear least-squares minimization is used. (To be specific, ifeffit s minimize command is used after constructing an array with a sum of line shapes.) Peak fitting is an inherently empirical analysis technique. By themselves, the line shapes used have little physical meaning. The utility of peak fitting is in quantifying the variation of certain spectral features in a sequence of data. As an example, consider the small peak that appears just before the main rising part of the edge in a titanate perovskite. In Figure 10.6 on page 123, this is the peak around 4968 ev. This peak varies as a function of temperature as you approach then exceed the crystallographic phase transition. The size of the peak can be related to the amount of distortion in this tetragonal structure. Peak fitting is a useful tool in this temperature-dependent study as it can quantify the relationship between a spectral feature and an extrinsic parameter. Figure 10.6 on page 123 shows the peak fitting dialog. The available line shapes include arc tangent error function Gaussian Lorentzian Two other obviously useful functions are not available in the current version of athena, the pseudo- Voight (typically implemented as a weighted sum of a Gaussian and a Lorentzian) and the Cromer-Lieberman calculation of the bare atomic edge step (which might better approximate the shape of the XANES data). This work is licensed under the Creative Commons Attribution-ShareAlike License. 121

122 10.3. LOG-RATIO/PHASE-DIFFERENCE ANALYSIS Figure 10.5: The peak fitting dialog. Each line shape has an independent centroid, amplitude, and width. By default, the centroids are fixed and the amplitude and width are varied in the fit. Which parameters are fixed and which are varied are controlled by the check buttons in the columns labeled Fit. The pluck button (Sec. 6.3 on page 70) next to the centroid can be used to grab a value from the plot. In my experience, the fits are fairly unstable when the centroids are varied, particularly with peak functions placed close together. I typically leave the centroid values fixed, adjusting them by hand and rerunning the fits if necessary. The peak shapes are unit normalized. This means that the amplitude is the area under the peak. The result of a fit can be saved as a group in the group list for later comparison to your data. The log file is a column data file containing the fit results in the header and columns of 1. energy 2. the data 3. the fit 4. the residual 5. each component Humble confession: the peak fitting dialog is one of the weaker parts of athena. It is serviceable, but somewhat buggy and missing some important features. One of these days it will get some more of my attention Log-ratio/phase-difference analysis Log-ratio/phase-difference analysis is a purely empirical technique that can be used to determine changes in the distribution parameters of the first coordination shell for certain kinds of data. This technique is most 122 This work is licensed under the Creative Commons Attribution-ShareAlike License.

123 CHAPTER 10. DATA ANALYSIS IN ATHENA Figure 10.6: Fit to PbTiO 3 data measured at room temperature using an arc-tangent, a Lorentzian, and a Gaussian. useful for data with a well-separated first coordination shell, i.e. one for which data from higher coordination shells is spectrally isolated from the first shell. An excellent example of a situation where this analysis would be useful would be a temperature series. In that case, log-ratio analysis can be used to measure the variation in σ 2 as a function of temperature and phase difference analysis can be used to measure variation in bond length. The approach of log-ratio/phase-difference analysis is to compare unknown data to a well known standard. The standard might be a room temperature measurement in the case of a temperature series. Or it might be a well ordered oxide for comparison with more disordered oxide forms. In any case, the analysis returns the differences between the standard and the unknown of the various cumulants of the distribution of atoms in the first shell. The analysis is performed by first by Fourier filtering both the data and unknown to spectrally isolate the signal from the first coordination shell. Then polynomials are fitted to the log of the ratio of the amplitudes of the χ(q) functions and to the difference of the phases of the χ(q) function. Log-Ratio(q) = ln( Amp_unknown(q) / Amp_standard(q) ) Phase-Diff(q) = Phase_unknown(q) - Phase_standard(q) These are fit using the cumulant expansion: Log-Ratio(q) = c_0 + 2*c_2 * q^2 + (2/3)*c_4 * q^4 Phase-diff(q) = 2 * c_1 * q - (4/3) * c_3 * q^3 The standard is selected from the menu at the top of this dialog. The unknown is the current group, i.e. the one highlighted in pale red. There are some other caveats along with the fact that this technique requires a spectrally isolated first shell. 1. A perfectly ordered coordination shell is not necessary, but the distribution of atoms in the first shell must be well described by an expansion in a small number of cumulants. Thus, this technique may be inappropriate for highly disordered materials. 2. Although this analysis is often referred to in the literature as model independent analysis, that is as much a shortcoming as an advantage. The technique can be used to measure changes in structural cumulants, but cannot be used to measure absolute values of those cumulants. 3. This analysis cannot be performed on higher coordination shells except in the vary rare case of a second shell which is spectrally isolated both from the first shell and from all higher shells. This work is licensed under the Creative Commons Attribution-ShareAlike License. 123

124 10.4. PRINCIPLE COMPONENT ANALYSIS 4. The presence of spectral weight from any higher shell or from any multiple scattering paths will add considerable systematic uncertainty to this analysis. When you select Log-Ratio from the Analysis menu, the main window is replaced with the logratio/phase-difference dialog, shown in Figure Figure 10.7: The log-ratio/phase-difference dialog. Once you select Fourier transform parameters and ranges for use in the analysis, you can click the Fit button to perform the fit. The fit to the log-ratio of the amplitudes is plotted when the fit is over. The buttons can be used to plot either the fit to the log-ratio of amplitudes or the fit to the phase difference. The fits use all cumulants up to the fourth. Depending on your data quality, choice of Fourier transform ranges can be important and quite sensitive. You can save the log-ratio and phase-difference data along with the fits to a file by clicking the Save ratio data and fit button. The three plot buttons behave just like the purple plot buttons would behave were only the standard and unknown marked. Note that the kmin, kmax, kw, dk, rmin, rmax, and dr parameters for the standard and the unknown will be reset to the values used in this analysis, but not for frozen groups (Sec. 6.6 on page 73). My favorite explanation of this analysis method is Application of the Ratio Method of EXAFS Analysis to Disordered Systems, G. Bunker, Nucl. Inst. Meth., 207, (1983) p Principle component analysis PCA is on athena s to do list. 124 This work is licensed under the Creative Commons Attribution-ShareAlike License.

125 CHAPTER 10. DATA ANALYSIS IN ATHENA Figure 10.8: The log-ratio/phase-difference dialog Difference spectra In many situations, the trends in a sequence measured data can be indicative of the of the physical process being measured. Shown in Figure 10.9 is a sequence of Pt L III spectra measured on a hydrogenated Pt catalyst. In this sequence, the hydrogen is being desorbed, resulting in measurable changes in the spectra. Figure 10.9: The dehydrogenation sequence of a Pt-bearing catalyst. Selecting one of the difference spectra options from the Analysis menu replaces the main window with the difference dialog, as shown in Figure on the following page. Difference spectra can be computed as µ(e), normalized µ(e), χ(k), χ(r), or χ(q). For difference spectra to be meaningful, it is essential that data processing be performed correctly for each data group. It is essential that you take great care with selecting parameters (Sec. 7.1 on page 77), calibrating (Sec. 9.1 on page 92), aligning (Sec. 9.2 on page 92), and all other processing chores. As you click on each group in the group list, the difference spectrum is calculated and plotted. You can select two points, shown in Figure on page 127 by the orange markers, and integrate the area under that part of the spectrum. This work is licensed under the Creative Commons Attribution-ShareAlike License. 125

126 10.5. DIFFERENCE SPECTRA Figure 10.10: The difference spectrum dialog with data taken from the diff.prj demo file. The difference spectra in energy or k can be saved to data groups. Those data groups are treated like any other energy or k group. Difference groups in energy can have a background removed and difference spectra can be Fourier transformed. This part of athena is directly applicable to dichroism studies. The difference spectra in normalized µ(e) and the integration can be used to measure magnetic moments in magnetic materials. 126 This work is licensed under the Creative Commons Attribution-ShareAlike License.

127 CHAPTER 10. DATA ANALYSIS IN ATHENA Figure 10.11: (Left) The difference spectra between the first group in the list and the current group in the screenshot of the difference dialog. (Right) The difference spectra plotted after making data groups from each one. This work is licensed under the Creative Commons Attribution-ShareAlike License. 127

128 10.5. DIFFERENCE SPECTRA 128 This work is licensed under the Creative Commons Attribution-ShareAlike License.

129 Chapter 11 Worked examples This chapter presents several fleshed-out examples of performing specific chores with athena. At this time there are three examples. More may be added in future versions of this document. Basic data processing This example walks through the import and processing of several data files measured on an iron foil. Data calibration and alignment, parameter constraint, and merging are demonstrated in this example. A difficult background removal problem MoO 3 presents a particularly challenging background removal problem. This example demonstrates an iterative approach to background removal. After an initial removal, the MoO 3 are analyzed in artemis using a simple model and that information is used to improve upon the background removal in athena. Linear combination analysis Using data measured on a variety of gold standards and a sequence of data measured on a system of cyanobacteria chemically reducing gold chloride to metallic gold Basic data processing This worked example will walk you through data import, demonstrate calibration, alignment, and merging of data, and consider well chosen parameter values for background removal and Fourier transform. This example uses data collected on an iron foil at three temperatures. The data files can be found on the web with the html version of this document. To begin, import (Sec. 3.1 on page 21) the first scan at 60K, fe.060. This is a relatively simple data file containing columns for energy and the signals on the I0 and It detectors. Select columns to form µ(e) data as shown in Figure 11.1 on the following page. When I collected these data, I purposefully miscalibrated the monochromator so that I would have a data set for explaining the use of athena s calibration dialog. The first thing to do, then, is to correctly calibrate these data. Open the calibration dialog (Sec. 9.1 on page 92) by selecting Calibrate energies from the Data menu. The derivative of µ(e) for these data will be plotted, shown in Figure 11.2 on the following page on the left. The choice of edge position, denoted by the little orange circle, is reasonable in that it is close to the first peak of the first derivative, as one expects. The monochromator calibration is obviously wrong as the orange circle is at ev, while the tabulated value for the iron K edge is 7112 ev. We want to select the peak of the first derivative and set that point to 7112 ev. We can simply use the currently selected point it is quite close to the peak. Alternately, we can click the Select a point button and try to click on the plot, selecting point even closer to the peak. To do that, it would be helpful 129

130 11.1. BASIC DATA PROCESSING Figure 11.1: The column selection dialog with columns chosen correctly for the iron foil data. Figure 11.2: The iron foil data, as plotted in the calibration dialog. (Left) Derivative of µ(e). (Right) Second derivative of µ(e). 130 This work is licensed under the Creative Commons Attribution-ShareAlike License.

131 CHAPTER 11. WORKED EXAMPLES to change the value of emin and emax in the energy plot tab (Sec. 5.1 on page 54) the replot the data such that a tighter region around the peak is displayed. A third, highly accurate way of finding the exact peak of the first derivative is to plot the second derivative of the data by selecting second deriv from the display menu. The second derivative of the data along with the currently selected value of edge position are shown on the right of Figure 11.2 on the facing page. With the second derivative selected for display, the Find zero-crossing button becomes activated. clicking that button will cause athena to search in both directions for the nearest energy value that hits the y=0 axis and select that as the new edge position. The value should be about ev. Click the Calibrate button and return to the main window. You will notice two things once the main window is displayed again: the value of e0 is now 7112 and the value of the eshift parameter is now about 6.7. In athena, calibration works by simultaneously setting those two parameters such that the selected point has the chosen energy value. Now, import the second scan at 60K, fe.061. Mark (Sec. 6.2 on page 68) both groups by clicking on their little purple buttons and plot them in energy by clicking on the E button. Figure 11.3: (Upper left) Misaligned iron foil µ(e) data. (Upper right) The derivatives of the misaligned data, as plotted in the alignment dialog. (Lower left) Aligned data plotted in k, but with e0 unconstrained. (Lower right) Aligned data plotted in k after constraining e0. One aligned and constrained in e0, these successive scans are quite consistent. The upper left of Figure 11.3 shows that these data are not aligned. Since they are successive scans on the same iron foil under the same experimental conditions, we expect these data to be identical within statistical noise. The reason that they are different is that the second scan has not yet been calibrated. Fixing this requires two steps. First, open the alignment dialog (Sec. 9.2 on page 92) by selecting Align This work is licensed under the Creative Commons Attribution-ShareAlike License. 131

132 11.1. BASIC DATA PROCESSING scans from the Data menu. The two scans are plotted as the derivative of µ(e). The first scan in the list, fe.060, is automatically selected in the Standard menu. The second scan is highlighted in orange in the groups list and is displayed as the Other. These are very clean data, so the automatic alignment algorithm should work well. Click the Auto align button. If you data is noisy, the automated alignment might not work well, in which case you can use the other buttons to adjust the energy shift until you are satisfied that the data are well aligned. Returning to the main menu, we find that the eshift parameter for fe.061 is now about 6.7 ev. When plotted together in energy, the data are well aligned. However when plotted together in k by pressing the k button, there remains a problem, as we see in the lower left of Figure 11.3 on the preceding page. The fe.061 data have been aligned, but not calibrated. That is, its e0 parameter has not been set to the same value as for the fe.060 data. Consequently, the position in the data where k=0 is different for the two spectra and the χ(k) data from the background removal are different. To correct this, you can either enter the value for e0 from fe ev into the e0 text entry box after clicking on fe.061 in the group list. Alternately, you can select fe.060 in the group list, then right click on the e0 parameter to raise its context menu (Sec on page 77) and select Set all groups to this value of E0. Once the e0 parameters are set the same for these data sets, we see in Figure 11.3 on the preceding page in the lower right that the data are quite consistent between these two scans. Now we need to import the remaining data measured on the iron foil. Using the file selection dialog, select the remaining data files as described in the section on multiple file import (Sec. 3.3 on page 26) and shown in Figure Figure 11.4: Importing the remaining iron foil data. Clicking the Open button will import all those data files and list them in the group list. Once they are imported, mark (Sec. 6.2 on page 68) all of the groups either by typing Ctrl - a or by clicking the A mark button above the group list. Finally select the fe.060 group by clicking on it in the group list. Once you have done all of that, athena will look like Figure 11.5 on the facing page. At this point, only fe.061 has been aligned to fe.060 and had its value of e0 properly constrained. We need to do so for the remaining data groups. Processing all 5 of the remaining data groups would be quite tedious if we had to handle each one individually. Fortunately athena has lots of tools to help process large quantities of data. To align (Sec. 9.4 on page 94) the remaining data to fe.060, choose Align data from the Data menu. athena chooses the first item in the group list as the data alignment standard and selects the second group as the one to align. These selections are shown at the top of Figure 11.6 on page 134. Of course, fe.061 has already be aligned. If you select any other group by clicking on it in the group list, you will see that it it is not yet aligned. You can align the remaining groups by selecting each on in turn 132 This work is licensed under the Creative Commons Attribution-ShareAlike License.

133 CHAPTER 11. WORKED EXAMPLES Figure 11.5: All of the iron foil data have been imported and marked. and clicking the Auto align button but that seems tedious. Much better to click the Align marked groups button. Since all the groups are aligned, the automated alignment algorithm will be applied to each one in turn. Once finished, you can click on groups to check on the quality of the alignment. Since these are very good data, the automated alignment should have worked well. Click on the Return to the main window button to continue with the data processing. Each of the data groups has now been aligned, but only fe.061 has the same value of e0 as fe.060. Again, clicking through the groups list and editing the e0 values seems horribly tedious. Here we see the true value of the Set all groups to this value of E0 in the e0 context menu (Sec on page 77). The χ(k) data for the aligned and constrained data are shown in Figure 11.7 on the following page. There is another, perhaps quicker, way of doing everything that is described above. To start, import the fe.060 data and calibrate it as explained at the start of this section. Then use the file selection dialog to select all of the remaining data. Click to the Preprocess tab, select the fe.060 data as the standard, then click the Mark, Align, and Set parameters buttons. Now click the Open button. As the remaining data are imported, the alignment and e0 constraint will happen on the fly and the new group will be marked. Once the file selection dialog using these preprocessing features is finished, athena should look just like it did in Figure As a final chore in this section, we will merge (Sec on page 112) the data measured at each temperature. Since the data are properly aligned and calibrated, this is a fine time to perform the merge. First mark each data group that should be merged together. As we see in Figure 11.9 on page 135, the two groups measured at 300K are marked. Select Merge marked data in mu(e) from the Merge menu. This will perform the merge then insert a new group in the group list. Then select Change group label from the Group menu or type Ctrl - l to give the merged group a more suggestive name. Repeat this process for the data at each temperature. Now you are ready to begin analysis on the iron foil data! This work is licensed under the Creative Commons Attribution-ShareAlike License. 133

134 11.1. BASIC DATA PROCESSING Figure 11.6: All of the iron foil data are marked and waiting to be aligned. Figure 11.7: The χ(k) spectra for all the iron foil data. 134 This work is licensed under the Creative Commons Attribution-ShareAlike License.

135 CHAPTER 11. WORKED EXAMPLES Figure 11.8: Using the preprocessing features of the column selection dialog to align and constrain data on the fly as it is imported. Figure 11.9: Merging the data at each temperature and renaming the merged groups. This work is licensed under the Creative Commons Attribution-ShareAlike License. 135

136 11.2. A HARD BACKGROUND REMOVAL PROBLEM 11.2 A hard background removal problem This section was based closely on idea presented in a tutorial written by Shelly Kelly. That document was expanded somewhat and edited to match the format of this document. The data shown here were kindly donated by Simon Bare of UOP LLC. This tutorial shows a step by step process for removing a tough background. This tutorial uses MoO 3 which has a split close oxygen first shell and a lot of structure in the XANES region of the EXAFS data. A method for using a theoretical χ(k) spectra to determine the shape of the background function through the XANES region of the absorption edge is demonstrated. This example involves artemis. Since using artemis is outside the scope of this document, the details of discussion below of the fit to the first coordination shell in MoO 3 will be glossed over. The data files can be found on the web with the html version of this document Getting started To start, open the moo3-tutorial.prj file in Athena. The first data set contains the MoO 3 data, with all parameters set to their default values for background removal, including an e0 value of about ev. µ(e), χ(k), and χ(r) for these data are shown in Figure on the facing page using these values. If the background through the XANES region is good there should be little change in the Fourier transform by including or excluding the low k-region of the χ(k) data. Make a copy of the original data set by selecting Copy group from the Group menu of typing Ctrl - y with the first group selected in the group list. Change its label to moo3-kmin by selecting Change group label from the Group menu or typing Ctrl - l. To test the low k-region χ(k) data move kmin in the Fourier transform range from the default 2 Å 1 to 4 Å 1. Look at the µ(e) and χ(k) data in Figure on the next page to see where 4 Å 1 is in these data. 4 Å 1 is beyond the most difficult region for determining the background function. See the change in the Fourier transform of the data through the first peak region, so only use the data from 4 Å 1. Import this data set into artemis Examine the theory Open the artemis project file Moo3-kmin.apj. This project file contains the data with kmin = 4 Å 1 and a simple theoretical calculation using published crystallographic data for MoO 3. With kmin = 4 Å 1 for the Fourier transform in artemis. The theory consists of three paths: 2 oxygen atoms at 1.70 Å 2 oxygen atoms at 1.94 Å 2 oxygen atoms at 2.30 Å Set E 0 =0, σ 2 =0.003, R=0 for all paths and use artemis plot the data and with this simple calculation. The data are shown in Figure on page 138. The purpose of comparing the data to the raw theory is to verify that the theory provides a reasonable starting place to begin fitting the data. This theory looks like it will work for this data set. The q-space data shows that the data and the theory are not aligned very well. The k-space data and theory shows that the theory has the same overall shape. The Fourier transform of the data shows that the background needs to be fixed by the misfit at low R. The other fitting parameters should accommodate that misfit. 136 This work is licensed under the Creative Commons Attribution-ShareAlike License.

137 CHAPTER 11. WORKED EXAMPLES Figure 11.10: MoO 3 data using athena s default background removal parameter values and a k-weighting of 2. (Upper left) µ(e). (Upper right) χ(k). (Bottom) Magnitude of χ(r) data. The indicators show the positions of 2 and 4 Å 1 in the µ(e) and χ(k) data. Figure 11.11: The magnitude (Left) and real part (Right) of the χ(r) data using kmin values of 2 and 4 Å 1 for the Fourier transform. This work is licensed under the Creative Commons Attribution-ShareAlike License. 137

138 Examine the theory Figure 11.12: A comparison of the MoO 3 data and the sum of paths before performing a fit. (Upper left) χ(k). (Upper right) the magnitude of χ(r). (Lower left) χ(q). (Lower right) the real part of χ(r). 138 This work is licensed under the Creative Commons Attribution-ShareAlike License.

139 CHAPTER 11. WORKED EXAMPLES A simple fit to the first coordination shell Fit the theory to the data. With E 0 fixed to 0, σ 2 and R are fit for the three paths. E 0 is not floated in this fit because we are attempting to find a theory that will work well as a theoretical background removal standard for the selected value of e0. Figure 11.13: A comparison of the MoO 3 data and the sum of paths after performing a simple fit. (Upper left) χ(k). (Upper right) the magnitude of χ(r). (Lower left) χ(q). (Lower right) the real part of χ(r). Note that the fit is quite good between about 1.3 and 2 Åin Figure Since the data is well described in that region by the simple first-shell fitting model, we can conclude that the peak at lower R represents a shortcoming of the background removal. Save the χ(k) for the fit to a file so it can be reimported into athena. In the athena project file for this section, the group moo3 kmin fit contains this theoretical χ(k) Using the fit as a background removal standard After importing the theoretical χ(k) into athena, we use it as the background removal standard for a copy of the original data. A background removal standard is set using a control among the additional background parameters (Sec. 6 on page 63). Just select the group containing the theoretical χ(k) from the drop-down menu shown in Figure on the next page. This work is licensed under the Creative Commons Attribution-ShareAlike License. 139

140 Using the fit as a background removal standard Figure 11.14: Using another group as the background removal standard. Figure 11.15: Comparing the χ(r) function for background removals with and without the theoretical background removal standard. The magnitude (Left) and real part (Right) of the χ(r) spectra using kmin values 4 Å 1 for the Fourier transform. 140 This work is licensed under the Creative Commons Attribution-ShareAlike License.

141 CHAPTER 11. WORKED EXAMPLES The new χ(r) data shown Figure on the facing page have a much less pronounced peak in the low R region. Examining the data, you will find that background has a nice shape through the edge region with e0 at a reasonable location on the edge. Note that the value of the lower spline clamp (Sec. 4.4 on page 49). Examining the χ(k) and χ(q) spectra will show that these data are nicely aligned with the theory. You can now read these data into artemis and begin your data analysis in earnest Understanding The background removal algorithm (Sec. 4.3 on page 45) finds the background function which optimizes the Fourier components of the spectrum below rbkg. In the absence of a background removal standard, optimizing those Fourier components means to minimize them. That is, the spline is found which results in the smallest possible values for the components below rbkg. That is not necessarily correct. Although there certainly are no atoms at very short distances, that does not mean that there should be no finitevalued Fourier components at low R. The peak corresponding to the first coordination shell is broadened for a variety of physical and mathematical reasons, including σ 2 and the finite range of the Fourier transform. When a standard is used for the background removal, the optimization works to make the low R components of the data as much like the low R components of the theory. In short, using a background removal standard acknowledges that the first shell peak leaks into the low R region and may not go to zero even at R=0. The standard, then, puts an additional constraint on the background function. It is possible to find a substantively similar background function just by tweaking the various background removal parameters in the absence of a standard. An example is shown in Figure The problem with the tweaking approach is that it is fairly ad hoc. By performing the fit as part of an iterative approach to the background removal, you are making better use of the information content of the data and a more complete use of the meaning of rbkg, i.e. the value above which the Fourier components correspond to data and below which those components correspond to data. Figure 11.16: Comparing the χ(r) function for a background removal using the theoretical background removal standard and another with various parameters tweaked to obtain a similar result. The magnitude (Left) and real part (Right) of the χ(r) spectra using kmin values 4 Å 1 for the Fourier transform Linear combination analysis This section outlines the linear combination fitting analysis of an experiment to study the kinetics of the reduction of aqueous Au 3+ chloride to metallic gold. The experiment is described and these data are This work is licensed under the Creative Commons Attribution-ShareAlike License. 141

142 Examining the data presented in Mechanisms of Gold Bioaccumulation by Filamentous Cyanobacteria from Gold(III)-Chloride Complex, M.F. Lengke, B. Ravel, M.E. Fleet, G. Wanger, R.A. Gordon, G. Southam, Environ. Sci. Technol., 40:20, (2006) p The experiment probed the mechanism of bioaccumulation of gold by the interaction of a model cyanobacterium (Plectonema boryanum UTEX 485) with aqueous Au 3+ chloride. This resembles a common subsurface environment associated with gold deposits in various locations around the world. In those environments, Au 3+ chloride bearing fluids rise from the deep subsurface and wash over bacterial mats. The bacteria die but their remains interact chemically, reducing metallic gold from the fluid. In our experiment, a culture of P. boryanum was sampled and placed in a Teflon fluid cell appropriate for an XAS measurement. An aliquot of Au 3+ chloride solution was titrated into the fluid cell and we exited the hutch as quickly as possible. Overnight, we measured XAS scans continuously. In the morning we set the sample aside, remeasuring it every few hours until the end of the experiment. Finally we measured a similar sample that had been prepared a week earlier. in this way, we had a time sequence tracking the nearly complete reduction of Au 3+ chloride to some form of colloidal gold. (The gold is known to be colloidal from TEM measurements, we could not distinguish colloidal and bulk gold in our XAS measurements.) The data files can be found on the web with the html version of this document Examining the data Import the athena project file containing the gold standards and gold/cyanobacteria data. You will see that it contains a subset of the reduction sequence, including data data from 0.12 hours through 1 week. Below the cyanobacteria data are several gold standards. Note that these data have all been carefully calibrated, aligned, and merged. Each measurement was made using a gold foil as an alignment reference (Sec. 3.4 on page 27). Figure shows the sequence of data measured on the cyanobacteria on the left and a variety of gold standards on the right. The plot on the left also shows the starting material, aqueous Au 3+ chloride, and the end product, metallic gold. The data clearly show the transformation over time between these two end members. In particular, note the reduction of the white line intensity at about ev and the growth of the peak at about ev which is characteristic of the metallic gold spectrum. Figure 11.17: (Left) The sequence of measurements from 0.12 through 720 hours. The top-most trace shows the starting material,aqueous Au 3+ chloride. The bottom trace shows the end product, metallic gold. (Right) All of the standards contained in the project file. The purpose of this experiment is two-fold. One goal is to determine the reaction kinetics of the reduction. To that end, we will assume that the data are a linear combination of aqueous Au 3+ chloride 142 This work is licensed under the Creative Commons Attribution-ShareAlike License.

143 CHAPTER 11. WORKED EXAMPLES and metallic gold and measure their relative fractions as a function of time. The second goal is to determine whether the reduction involves an intermediate state and, if so, to identify that species. Our strategy to answer that question will involve adding other standard compound to our mixture of aqueous Au 3+ chloride and metallic gold to see if the data are better described by a ternary rather than binary mixture of standard materials. To begin, select one of the time points in the group list. Most figures in this section show the data measured at 7.03 hours. Next, select Linear combination fit from the Analysis menu. This replaces the main window with the linear combination fitting dialog and plots the data along with vertical lines indicating the extent of the fitting range. From the first two drop-down menus, select Au foil and Au3 Cl aq, as shown in Figure Figure 11.18: athena s linear combination fitting dialog with the end member standard compounds selected for the initial fit. In the operations list, click on Fit this group to perform the initial fit to these data. After the fit finishes, the result of the fit, shown in Figure on the next page is plotted. The tab labeled Fit results becomes active. Clicking on it, we see that the fit tells us that the data are 51±1 percent metallic gold. Given the quality of the fit, it seems that we are well justified in our assumption that these data can be modeled by a simple linear combination of the end members Improving the fit As nice as this quick and easy result is, it s not perfect. A close examination of the plot in Figure on the following page shows quite a bit of misfit throughout the entire fitting range. (Note that you can examine the misfit by clicking the Plot difference button and replotting the data by clicking Plot data + sum in the operations list.) This misfit suggests that our hypothesis of an intermediate state between Au 3+ chloride and metallic gold may be valid. As a first guess for what that intermediate state might be, I think should be something without a strong white line. The fit in the region of the white line is pretty good. Looking at the various standards on the This work is licensed under the Creative Commons Attribution-ShareAlike License. 143

144 Understanding the fit Figure 11.19: The result of the initial fit to the 7.03 hour data using the end members as the fitting standards. right side of Figure on page 142 I suspect that the sulfur ligated species, Au sulfide, Au thiosulfate, or Au thiomalate, are likely candidates. To test one, we need to add it to the list of fitting standards on the Standards spectra tab and rerun the fit. In the third row, select Au sulfide from the drop-down menu, then click Fit this group from the operations list. Figure 11.20: The result of the fit to the 7.03 hour data using the end members along with gold sulfide. This is a noticeably better fit. The amount of misfit throughout the fitting range and especially in the peak at about ev is smaller. Examining the results tab, we see that the amount of Au 3+ chloride is about the same as before but that the metallic gold content is only 34±2 percent, with the sulfide taking up the remaining 18±2 percent Understanding the fit The fit including the sulfide certainly looks better, but is it? The results tab also reports some simple statistics from the fit. The R-factor a measure of mean square sum of the misfit at each data point was for the two-standard fit and shrank by a factor of 2 to for the three-standard fit. That 144 This work is licensed under the Creative Commons Attribution-ShareAlike License.

145 CHAPTER 11. WORKED EXAMPLES confirms the observation that the degree of misfit seems smaller in the plot of the three-standard fit. The reduced χ 2 of the fit also reduced by about a factor of two, from to , suggesting a substantive improvement in the fit quality. Those are strange numbers, though. Any textbook on scientific statistics will tell us that a good fit using a non-linear, least-squares minimization (such as that used by ifeffit and athena) should give 1 for a fit in which the model is a good representation of the data. That is certainly true, but supposes that you have a good determination of the measurement uncertainty. We don t. In principle, the standard deviation spectrum from the merge of measured data (Sec on page 112) could be used as an approximation of the measurement uncertainty, but that is not possible in this case. The data at 7.03 hours are a single measurement from a time sequence. There is nothing to merge because each measurement is a solitary measurement. Consequently, athena has to use 1 as the value of the measurement uncertainty. That is grossly in excess of the true measurement uncertainty, resulting in very small values for χ 2. We cannot, therefore, assert that any particular fit is a good fit simply by invoking what we know about Gaussian statistics. We can, however, compare successive fits, such as the two we have made thus far. An improvement of a factor of 2 in the value of reduced χ 2 is certainly significant. We can, with confidence, state that there is an intermediate component on the basis of the analysis presented thus far. But what is that intermediate. We have not yet proven its identity (although gold sulfide is a strong contender!) because we have not yet considered other options. There are two algorithmically distinct but conceptually identical ways to attempt to solve this problem. One involves the use of principle component analysis (a feature not yet available in athena) of the data followed by target transform analysis to attempt to identify the third species from among the standards. The approach discussed here involves using combinatorial techniques to directly test a library of standards against our data. The mathematics of these two approaches is quite different. Since they share one major limitation, they are practically equivalent ways of identifying the intermediate state. The limitation is that both approaches require that the intermediate species be represented by the library of standards. If that unknown species is absent from the library, neither technique is able to identify it Combinatorial analysis Testing each standard against the data sounds like an unbearably boring process particularly since we may, in principle, want to consider all possible binary, ternary, or higher combinations of standards. The project file contains 9 standards. All possible combinations of 2 or 3 standards from a pool of 9 results in 120 possibilities. Performing and recording the results from that many fits sounds horrible. Fortunately, athena knows how to automate that chore. First mark all of the standards and none of the cyanobacteria data. Then click the Use marked groups button. This will insert all of the standards into the table. By default, the table is only four rows long. You will need to exit the linear combination fitting dialog and open the preference dialog (Sec. 6.8 on page 76). Set the Linearcombo maxspectra preference to at least 9. Return to the linear combination dialog and load the 9 standards into the table. Click the Use at most control down to three. At this point you could click Fit all combinations to begin fitting all 120 combinations of 2 and 3 standards. This is, however, a bit of a waste of time. We know that there is metallic gold in these data. The fifth column in the table of standards is labeled req., which is short for required. Click the radiobutton in the Au foil row. This will cause the combinatorial sequence to only consider combinations which include the metallic gold standard. This reduces the number of binary and ternary combinations to 36. Now click Fit all combinations in the operations list. This will take a while. It s a good time to get a cup of coffee. Once the sequence of fits finishes, athena displays tables containing the results of all of the fits in order of increasing R-factor. The first column of the top table shows which standards were included in the fits using the numbering scheme of the bottom table. The other two columns show the R-factor and reduced χ 2 of each fit. This work is licensed under the Creative Commons Attribution-ShareAlike License. 145

146 Analyzing the data series Figure 11.21: The results of the combinatorial fitting sequence, as displayed on the in the combinatorics tab. When you click on a row in the top table, the results of that fit are inserted into the bottom table and the fit is plotted. When the combinatorial sequence finishes, the best fit of the bunch is displayed. It turns out the the combination of gold metal, aqueous Au 3+ chloride, and gold sulfide that we examined above is, in fact, the best fit. However, it is juts barely the best fit. The fit with gold thiomalate in place of gold sulfide is just barely worse. From a statistical perspective, the two fits are equivalent and the amounts of metal and chloride in the fits are very similar. The gold thiosulfate and gold thiocyanide fits are just a bit worse yet. A couple of other fits show similar statistics but an investigation shows that the peak around ev is not fit very well. After that, the other fits in the table fall off quickly in quality. The conclusion that one can comfortably draw from this is that the intermediate species is some sort of gold-sulfur complex. The aqueous gold sulfide standard gave the best result by a hair, but the other three species with a gold-sulfur ligand were statistically similar. To model the kinetics in this system, I will use the sulfide species, but it is probably not correct to say that the intermediate species is aqueous gold sulfide. Rather it is some gold-sulfur complex formed when the cyanobacteria bacteria cells lyse upon exposure to the Au 3+ chloride solution Analyzing the data series To investigate the kinetics of this system, we will now apply the model consisting of three species metal, chloride, and sulfide to the cyanobacteria measured at each time step. Click on the top line of the upper table. This will plot the result for our best fit. It will also insert those three standards into the table on the Standards spectra tab. Click on that tab, then mark all the cyanobacteria data groups and unmark all of the standards in the group list. Now click on Fit marked groups in the operations list. This will step through the marked groups, applying the three-standard fitting model to each one. Again, you may want to relax as you wait. Once the sequence of fits finishes, you may want to click through the data groups and examine the fits 146 This work is licensed under the Creative Commons Attribution-ShareAlike License.

147 CHAPTER 11. WORKED EXAMPLES at the various time steps. Note that the Marked fits report option in the operations list becomes active. Clicking on this prompts you for a name for an output file. This output file is a comma separated value text file which can be easily imported into a spreadsheet, much like one of athena s report files (Sec. 8.3 on page 89). In Figure we see that the metal content increases monotonically while the chloride content decreases monotonically. The column with the sulfide content is not seen in the image, but it remains roughly constant throughout the experiment. Figure 11.22: A report on the results of fitting the marked groups. The report is written to a file that can be imported into a spreadsheet, like OpenOffice Calc shown here. In this example, I have outlined the analysis performed in the paper cited at the beginning of the chapter. We have, as we set out to do, examined the reaction kinetics and tentatively identified an intermediate species. Using automation built right into athena it was relatively easy to manage a large quantity of data. This work is licensed under the Creative Commons Attribution-ShareAlike License. 147

148 Analyzing the data series 148 This work is licensed under the Creative Commons Attribution-ShareAlike License.

149 Chapter 12 Hephaestus hephaestus is a collection of several simple graphical interfaces to the Xray::Absorption package and other tables of atomic data. In his workshop he has handmaidens he has forged out of gold who can move and who help him in his work.... With Athena, [Hephaestus is] important in the life of the city. The two [are] the patrons of handicrafts, the arts which along with agriculture are the support of civilization. Mythology, Edith Hamilton 12.1 Description hephaestus is a container for several utilities based on the periodic table of elements and on tables of absorption coefficients. These utilities are generally of interest to the X-ray absorption spectroscopist and are of particular value at the synchrotron. The hephaestus window consists of two parts. On the left is a button box containing the buttons used to access the different utilities that hephaestus offers. On the right is the container displaying whichever utility is selected. To change utilities, simply click on one of the buttons in the button box. The Units, Resource, and Xsection menus contains selection buttons. The Units menu sets the units used in the various utilities. The choices are energy in electron volts (ev) or wavelength in Å. This sets how units are displayed in the absorption data, formula, and ion chamber utilities. The anomalous scattering and chemical data utilities do not use this setting. The unit setting is also a handy calculator for ev to wavelength and back. Simply type a number into one of the appropriate entry boxes and switch units to do the calculation. The Resource buttons determine which tables of absorption data will be used for calculations in the absorption data, formula, and ion chamber utilities. hephaestus is a front end to the Xray::Absorption perl module, which provides a uniform interface to absorption data from a wide variety of sources. Calculations using the various resources should only differ by a few percent, but it may be useful to know what those differences are. The Xsection buttons tell hephaestus to make computations in the Absorption and Formula pages using the total, photoelectric, coherent, or incoherent cross-sections. This is fully supported when using the Elam, McMaster, and Shaltout resources. The Chantler resource combines the coherent and incoherent cross-sections into a single scattering cross-section, thus the scattering cross-section is used if either the coherent or incoherent buttons are selected in the Xsection menu. The other two do not include data about the coherent and incoherent cross-sections. The total cross-section is the sum of the photoelectric, coherent, and incoherent cross-sections. The ion chamber utility uses the full cross-section. 149

150 12.2. PERIODIC TABLE OF ABSORPTION DATA 12.2 Periodic Table of Absorption Data This utility displays edge and fluorescence line energies for the elements. Simply click on an element in the periodic table and the edge and line energies will be displayed. Some of the data resources have incomplete compilations of edge and/or line energies. For example, the Cromer-Liberman and Shaltout resources do not come with line energies. In those two cases, a minimal set of line energies are imported from the McMaster resource so that various certain can reasonably be made. The Elam resource (which is the default) contains a thorough list of edge and line energies. The filter plot helps you to determine an appropriate material as a fluorescence filter. It assumes that you are measuring the K edge of any element below La and the L3 edge for all other elements. When you click on an element, hephaestus makes a good guess as to the best filter material. You can change the filter material by entering another element or by right-clicking on an element. If you enter a string that is not an element symbol, the box with the filter element will turn red when you attempt to make the filter plot. The fluorescence lines are plotted as Gaussians. The line widths are ad hoc and without physical meaning, although the positions of the Gaussian centroids and the heights of the peaks (one relative to the other) are taken from the Elam tables the sole point of this plot is to show the position of the line relative to the edges of the absorber and filter. The rules for selecting the filter element are 1. For element below Z=38, assume the K edge is being measured and use the Z-1 element. 2. For element between Z=39 and 57, assume the K edge is being measured and use the Z-2 element. 3. Use Br for a Rb absorber because Kr is a silly filter material. 4. Use Rh for a Ru absorber because nobody wants a Tc filter! 5. Use I for a Ba absorber because Xe is also a silly filter material. 6. For elements above Z=57, assume the L III edge is being measured. Use the first element whose K edge is more than 90 ev above the Lα 1 line of the absorber. 7. Use Rb for a U or Np absorber because Kr is still a silly filter material. For elements below Z=24 (chromium), no filter choice is given. Filters for lower-z elements are not used because no element exists with a K-edge between the line and absorption energies of the absorber. The absorption length calculation on this utility a feature of earlier versions has been retired. All the functionality of that calculation is available on the formulas utility. Clicking an element on this page or on the Data utility inserts that element and its density onto the Formulas utility. If you click on an absorption edge in the table of edge energies, the lines associated with that edge will be highlighted Absorption Lengths of Compounds This utility computes absorption lengths of compounds using the supplied photon energy along with the chemical formula and density. There is a list of common materials, their formulas, and their densities. Clicking on that list inserts those known data into the appropriate entry boxes. Clicking the Compute button will display some information about the materials in the Results box, including the absorption length. If you know the formula and density of your material, you can enter those then click the Compute button. Hitting the return key while focus is on any of the formula, density, or energy entry boxes is the same as clicking the Compute button. The formulas can be written with quite a bit of flexibility. Parens and square brackets, as commonly used in chemistry notation, will be interpreted correctly. Subscripted numbers are simply entered in line next to the element symbol or parenthesized group that they modify. 150 This work is licensed under the Creative Commons Attribution-ShareAlike License.

151 CHAPTER 12. HEPHAESTUS Figure 12.1: (Left) The periodic table of absorption data. (Right) Plot of the absorption edge of the filter element compared to the dominant lines of the absorbing element. Element symbols must be in capitalized form. That is, Na is acceptable, but na, NA, and na are not. The formula parser uses proper capitalization to determine stoichiometry. Chemical formulas can also be written using the notation of TeX or INSPEC. This is particularly handy for cutting and pasting from other programs. PbTiO3, PbTiO$ 3$, and PbTiO/sub 3/ will be interpreted identically. Figure 12.2: Absorption lengths of compounds. To compute the attenuation A of the beam from the absorption length, use this formula: A = exp( 1 x/t) (12.1) where x is the sample thickness and t is the absorption length. For dense materials, the mass required to make a sample that is 1 absorption length thick and 1 square centimeter wide is also reported. This mass is computed for incident photons of the specified energy. To determine the appropriate mass for your sample, multiply by the actual area of your sample and by the desired thickness in absorption lengths. This calculation is merely the product of the density and the absorption length. This work is licensed under the Creative Commons Attribution-ShareAlike License. 151

152 12.4. PERIODIC TABLE OF CHEMICAL DATA User-supplied data You can maintain a personal database of materials, their formulas, and densities. If you wish to define a new material or update the data for one of the built-in materials, just click the Add button. This will prompt you for the name of the material then insert that material into the list on the left as well as save it in a file for future use. Any material, including one of the built-ins, can be removed by clicking the Remove button. Density and molarity An alternate calculation is made by selecting Molarity from the density option menu. When molarity is chosen, the calculation will be made on the solute of a solution of the specified molarity. In that case, the mass of the formula unit of the sample will be computed and the specified molarity will be used to determine the density of the solute in the solution. When considering a solvated sample, don t forget that the solvent also absorbs photons. Computing sample length for unit edge step If any of the elements in the material has a K or L edge energy within 100 ev of the value supplied in the energy box, the sample length for unit edge step will be calculated. This is done by calculating the total absorption 50 volts above and 50 volts below the edge and subtracting the difference. This difference is converted into the sample length required to make a transmission edge step of 1. This calculation will be suspect in the odd case where the material has two absorption edges within 50 volts. When preparing a sample for a transmission measurement, both the absorption length and the unit edge step length should be considered. Information depth The information depth is a rough measure of the depth into a sample that the x-rays penetrate and from which the XAS signal can be extracted. The calculation in hephaestus follows L. Troger, et al., Phys. Rev., B46:6, (1992) p In that depth, 68 percent of the incident photons are absorbed and 68 percent of the fluorescence photons are generated. hephaestus assumes that the sample and detector are placed at 45 degrees to the sample. For other measurement geometries, this calculation will over-estimate the information depth. The information depth tends to be shorter than One way that this calculation might be useful is in estimating the contribution to the XAS signal from an amorphous surface layer of known thickness on top of a crystalline bulk Periodic Table of Chemical Data it. This utility is quite simple. Click on an element and several interesting factoids will be reported. That s 12.5 Absorption of Ion Chambers This utility tells you how much of the beam you ion chambers will absorb at a chosen energy and when filled with a combination of two gases. The selection buttons allow you to choose from several standard detector lengths or a length that you provide. The sliders are used to adjust the fractions of two gasses in the chamber. Only the common gasses (He, N2, Ne, Ar, Kr, and Xe) are available. As you slide the sliders back and forth to change the mixing fractions, the percentage absorption is reported in the space below the sliders. 152 This work is licensed under the Creative Commons Attribution-ShareAlike License.

153 CHAPTER 12. HEPHAESTUS Figure 12.3: Periodic table of chemical data The third slider allows you to change the pressure in the ion chamber for the calculation. The pressure slider is measured in Torr. One atmosphere is 760 Torr. Figure 12.4: Absorption of ion chambers One shortcoming of this utility is that the percentage is not updated as you type the photon energy or the user supplied chamber length. After changing one of those values, hit the return key or tweak any slider to update the calculation. The photon flux calculation will tell you the flux incident upon the detector using the formula for voltage measured at a given photon energy using a current-to-voltage amplifier (such as a Keithley 527 or 528) e * energy * flux * gain V = IonizationEnergy The ionization energy is about 32 volts for most gasses and the electron charge e is about 1.6E-19 Coulombs. The flux calculation uses the result for percent absorption, thus this result is the net flux upon the chamber and not the measured flux. A rule of thumb that sometimes works for the I0 chamber is to choose gases such that about 10is enough for a good measurement while still leaving most of the photons to interact with the sample. For the This work is licensed under the Creative Commons Attribution-ShareAlike License. 153

154 12.6. EMISSION LINE TRANSITIONS transmission chamber, a good rule of thumb is to choose gases that absorb about 2/3 to 3/4 of the photons. This spreads the measurement out more or less evenly over the length of the capacitor plate and still allows some photons to reach the reference chamber. The 2/3 to 3/4 rule works well for the gases in the fluorescence chamber as well Emission Line Transitions This displays a chart of the electronic transitions corresponding to the various fluorescence emission lines. There is no interactive component to this page. The chart follows Figure 1.1 in the Center for X-Ray Optics X-Ray Data Booklet. Figure 12.5: Chart of emission line transitions 12.7 Edge and Line Finders These utility displays a list of absorption edges or fluorescence lines in order of increasing energy. Clicking the button centers the view of the list box around the edge just below the specified energy. This tool is useful in any situation where you need to know what edge or line is in the vicinity of the specified energy. It may be useful to know what edge energy is at an integer multiple of the specified energy. For instance, you may be suspicious that a harmonic of the monochromator is exciting an edge in your sample. Suppose you are seeing a feature at about 6000 ev in your spectrum while using a Si(111) monochromator. You might then suspect that the third harmonic at ev (the Zr K edge is at ev) is the culprit. To check, enter 6000 in the entry box and click the third harmonic button on the edge finder page. The information in the edge finder list is the element symbol, the edge symbol, and edge energy. The information in the line finder list is the element symbol, the full Siegbahn line symbol, the IUPAC line designation, a measure of the line intensity, and the line energy. The intensity values are such that all lines of a type (e.g. all K-α lines) have intensities which sum to 1. Thus these numbers are for several reasons a very crude measure of how different lines which are nearby in energy might relate in a real measurement. Hitting the return key while the focus is on the energy entry box in either page is the same as clicking the Find it button. These utilities use line and edge energies from the Elam data resource regardless of which resource you have chosen to use in other utilities. 154 This work is licensed under the Creative Commons Attribution-ShareAlike License.

155 CHAPTER 12. HEPHAESTUS Figure 12.6: (Left) The edge finder (Right) The line finder 12.8 Complex Scattering Factors for the Elements This utility plots the complex corrections to the scattering factors for the elements. i.e. the energy dependent f (E) and f (E) terms. These functions are tabulated from the Cromer-Liberman calculations for the isolated, neutral atom. Solid state effects are ignored. To make a plot, click and element. There are selection buttons for plotting one or both parts of the complex scattering function. There are also selection buttons for setting whether the next plot will be a new plot of if it will add to the previous plot. You can set the energy range of the plot along with the spacing of the grid in energy that is used to interpolate from the tabulated values. Finally, you have the option of convoluting the scattering functions by a Lorentzian of a specified width or, by clicking the checkbutton, using the natural line width of the element. Any negative value for the line width will be set to the natural line width. The most recently displayed complex scattering function can be saved to a file by clicking the button at the bottom of the screen. Only the most recent element and only those parts that were displayed in the most recent plot is saved. The energy range and grid size of the most recent display is used in the output file. To change the element, energy axis, or the parts of the function for a saved file, it is necessary to redisplay the function using the desired parameters Initialization file The initialization file is C:Program Files\Ifeffit\horae\hephaestus\hephaestus.ini on Windows and /.horae/hephaestus.ini on unix or Mac. You can edit this file to change the startup values of several of the parameters used in hephaestus, including the utility shown at startup and the initial values of the data resource, units, and cross section. The most important use of the initialization file is to enable or disable the use of ifeffit in hephaestus. Set the General ifeffit parameter to 1 or 0 enable or disable the use of ifeffit. Disabling ifeffit removes the f (E)/f (E) utility from the button bar, disables the Cromer-Liberman entry in the Resources menu, and disables the filter plotting feature on the absorption page. So why would you want to do that? Well, importing ifeffit into hephaestus increases its memory use dramatically. This may be undesirable on a beamline s data collection computer. The ifeffit-less hephaestus is quite a bit more slender. This work is licensed under the Creative Commons Attribution-ShareAlike License. 155

ATHENA User s Guide. Bruce Ravel bravel@bnl.gov http://bruceravel.github.io/demeter/

ATHENA User s Guide. Bruce Ravel bravel@bnl.gov http://bruceravel.github.io/demeter/ ATHENA User s Guide Bruce Ravel bravel@bnl.gov http://bruceravel.github.io/demeter/ Document version 2.0 for athena version 0.9.19 January 9, 2014 Just as Phaeacian men excel the world at sailing, driving

More information

Introduction to the EXAFS data analysis

Introduction to the EXAFS data analysis Introduction to the EXAFS data analysis Giuliana Aquilanti Elettra Sincrotrone Trieste Material almost integrally taken from Carlo Meneghini: EXAFS tutorial at Synchrotron Radiation school of Duino 2011

More information

Intro to Excel spreadsheets

Intro to Excel spreadsheets Intro to Excel spreadsheets What are the objectives of this document? The objectives of document are: 1. Familiarize you with what a spreadsheet is, how it works, and what its capabilities are; 2. Using

More information

Getting Started Guide. Chapter 14 Customizing LibreOffice

Getting Started Guide. Chapter 14 Customizing LibreOffice Getting Started Guide Chapter 14 Customizing LibreOffice Copyright This document is Copyright 2010 2012 by its contributors as listed below. You may distribute it and/or modify it under the terms of either

More information

Creating Custom Crystal Reports Tutorial

Creating Custom Crystal Reports Tutorial Creating Custom Crystal Reports Tutorial 020812 2012 Blackbaud, Inc. This publication, or any part thereof, may not be reproduced or transmitted in any form or by any means, electronic, or mechanical,

More information

Advanced Excel 10/20/2011 1

Advanced Excel 10/20/2011 1 Advanced Excel Data Validation Excel has a feature called Data Validation, which will allow you to control what kind of information is typed into cells. 1. Select the cell(s) you wish to control. 2. Click

More information

Web Ambassador Training on the CMS

Web Ambassador Training on the CMS Web Ambassador Training on the CMS Learning Objectives Upon completion of this training, participants will be able to: Describe what is a CMS and how to login Upload files and images Organize content Create

More information

Adobe Dreamweaver CC 14 Tutorial

Adobe Dreamweaver CC 14 Tutorial Adobe Dreamweaver CC 14 Tutorial GETTING STARTED This tutorial focuses on the basic steps involved in creating an attractive, functional website. In using this tutorial you will learn to design a site

More information

Calc Guide Chapter 9 Data Analysis

Calc Guide Chapter 9 Data Analysis Calc Guide Chapter 9 Data Analysis Using Scenarios, Goal Seek, Solver, others Copyright This document is Copyright 2007 2011 by its contributors as listed below. You may distribute it and/or modify it

More information

Plots, Curve-Fitting, and Data Modeling in Microsoft Excel

Plots, Curve-Fitting, and Data Modeling in Microsoft Excel Plots, Curve-Fitting, and Data Modeling in Microsoft Excel This handout offers some tips on making nice plots of data collected in your lab experiments, as well as instruction on how to use the built-in

More information

Maple Quick Start. Introduction. Talking to Maple. Using [ENTER] 3 (2.1)

Maple Quick Start. Introduction. Talking to Maple. Using [ENTER] 3 (2.1) Introduction Maple Quick Start In this introductory course, you will become familiar with and comfortable in the Maple environment. You will learn how to use context menus, task assistants, and palettes

More information

Ansur Test Executive. Users Manual

Ansur Test Executive. Users Manual Ansur Test Executive Users Manual April 2008 2008 Fluke Corporation, All rights reserved. All product names are trademarks of their respective companies Table of Contents 1 Introducing Ansur... 4 1.1 About

More information

USER GUIDE. Unit 2: Synergy. Chapter 2: Using Schoolwires Synergy

USER GUIDE. Unit 2: Synergy. Chapter 2: Using Schoolwires Synergy USER GUIDE Unit 2: Synergy Chapter 2: Using Schoolwires Synergy Schoolwires Synergy & Assist Version 2.0 TABLE OF CONTENTS Introductions... 1 Audience... 1 Objectives... 1 Before You Begin... 1 Getting

More information

Hypercosm. Studio. www.hypercosm.com

Hypercosm. Studio. www.hypercosm.com Hypercosm Studio www.hypercosm.com Hypercosm Studio Guide 3 Revision: November 2005 Copyright 2005 Hypercosm LLC All rights reserved. Hypercosm, OMAR, Hypercosm 3D Player, and Hypercosm Studio are trademarks

More information

EXCEL PIVOT TABLE David Geffen School of Medicine, UCLA Dean s Office Oct 2002

EXCEL PIVOT TABLE David Geffen School of Medicine, UCLA Dean s Office Oct 2002 EXCEL PIVOT TABLE David Geffen School of Medicine, UCLA Dean s Office Oct 2002 Table of Contents Part I Creating a Pivot Table Excel Database......3 What is a Pivot Table...... 3 Creating Pivot Tables

More information

DECS DER APPLE WIRELESS HELPER DOCUMENT

DECS DER APPLE WIRELESS HELPER DOCUMENT DECS DER APPLE WIRELESS HELPER DOCUMENT A GUIDE TO THE DEPLOYMENT OF APPLE MAC NOTEBOOK COMPUTERS IN DECS WIRELESS NETWORKS apple Chris Downing, Senior Systems Engineer apple Viano Jaksa, Area Manager

More information

Advanced Presentation Features and Animation

Advanced Presentation Features and Animation There are three features that you should remember as you work within PowerPoint 2007: the Microsoft Office Button, the Quick Access Toolbar, and the Ribbon. The function of these features will be more

More information

Word 2007: Basics Learning Guide

Word 2007: Basics Learning Guide Word 2007: Basics Learning Guide Exploring Word At first glance, the new Word 2007 interface may seem a bit unsettling, with fat bands called Ribbons replacing cascading text menus and task bars. This

More information

GelAnalyzer 2010 User s manual. Contents

GelAnalyzer 2010 User s manual. Contents GelAnalyzer 2010 User s manual Contents 1. Starting GelAnalyzer... 2 2. The main window... 2 3. Create a new analysis... 2 4. The image window... 3 5. Lanes... 3 5.1 Detect lanes automatically... 3 5.2

More information

Using Adobe Dreamweaver CS4 (10.0)

Using Adobe Dreamweaver CS4 (10.0) Getting Started Before you begin create a folder on your desktop called DreamweaverTraining This is where you will save your pages. Inside of the DreamweaverTraining folder, create another folder called

More information

Event Record Monitoring and Analysis Software. Software Rev. 3.0 and Up. User s Guide

Event Record Monitoring and Analysis Software. Software Rev. 3.0 and Up. User s Guide Event Record Monitoring and Analysis Software Software Rev. 3.0 and Up User s Guide 2 Contents Contents Chapter 1: About ERMAWin 4 Chapter 2: Overview 5 About this Manual 5 System Requirements 5 Installing

More information

Introduction To Microsoft Office PowerPoint 2007. Bob Booth July 2008 AP-PPT5

Introduction To Microsoft Office PowerPoint 2007. Bob Booth July 2008 AP-PPT5 Introduction To Microsoft Office PowerPoint 2007. Bob Booth July 2008 AP-PPT5 University of Sheffield Contents 1. INTRODUCTION... 3 2. GETTING STARTED... 4 2.1 STARTING POWERPOINT... 4 3. THE USER INTERFACE...

More information

Chapter 4: Website Basics

Chapter 4: Website Basics 1 Chapter 4: In its most basic form, a website is a group of files stored in folders on a hard drive that is connected directly to the internet. These files include all of the items that you see on your

More information

Working with the Ektron Content Management System

Working with the Ektron Content Management System Working with the Ektron Content Management System Table of Contents Creating Folders Creating Content 3 Entering Text 3 Adding Headings 4 Creating Bullets and numbered lists 4 External Hyperlinks and e

More information

Intellect Platform - The Workflow Engine Basic HelpDesk Troubleticket System - A102

Intellect Platform - The Workflow Engine Basic HelpDesk Troubleticket System - A102 Intellect Platform - The Workflow Engine Basic HelpDesk Troubleticket System - A102 Interneer, Inc. Updated on 2/22/2012 Created by Erika Keresztyen Fahey 2 Workflow - A102 - Basic HelpDesk Ticketing System

More information

Appointment Scheduler

Appointment Scheduler EZClaim Appointment Scheduler User Guide Last Update: 11/19/2008 Copyright 2008 EZClaim This page intentionally left blank Contents Contents... iii Getting Started... 5 System Requirements... 5 Installing

More information

Introduction to Microsoft Publisher : Tools You May Need

Introduction to Microsoft Publisher : Tools You May Need Introduction to Microsoft Publisher : Tools You May Need 1. Why use Publisher instead of Word for creating fact sheets, brochures, posters, newsletters, etc.? While both Word and Publisher can create documents

More information

Getting Started with Excel 2008. Table of Contents

Getting Started with Excel 2008. Table of Contents Table of Contents Elements of An Excel Document... 2 Resizing and Hiding Columns and Rows... 3 Using Panes to Create Spreadsheet Headers... 3 Using the AutoFill Command... 4 Using AutoFill for Sequences...

More information

Module One: Getting Started... 6. Opening Outlook... 6. Setting Up Outlook for the First Time... 7. Understanding the Interface...

Module One: Getting Started... 6. Opening Outlook... 6. Setting Up Outlook for the First Time... 7. Understanding the Interface... 2 CONTENTS Module One: Getting Started... 6 Opening Outlook... 6 Setting Up Outlook for the First Time... 7 Understanding the Interface...12 Using Backstage View...14 Viewing Your Inbox...15 Closing Outlook...17

More information

Task Force on Technology / EXCEL

Task Force on Technology / EXCEL Task Force on Technology EXCEL Basic terminology Spreadsheet A spreadsheet is an electronic document that stores various types of data. There are vertical columns and horizontal rows. A cell is where the

More information

-SoftChalk LessonBuilder-

-SoftChalk LessonBuilder- -SoftChalk LessonBuilder- SoftChalk is a powerful web lesson editor that lets you easily create engaging, interactive web lessons for your e-learning classroom. It allows you to create and edit content

More information

Microsoft Migrating to Word 2010 from Word 2003

Microsoft Migrating to Word 2010 from Word 2003 In This Guide Microsoft Word 2010 looks very different, so we created this guide to help you minimize the learning curve. Read on to learn key parts of the new interface, discover free Word 2010 training,

More information

Microsoft Expression Web Quickstart Guide

Microsoft Expression Web Quickstart Guide Microsoft Expression Web Quickstart Guide Expression Web Quickstart Guide (20-Minute Training) Welcome to Expression Web. When you first launch the program, you ll find a number of task panes, toolbars,

More information

DataPA OpenAnalytics End User Training

DataPA OpenAnalytics End User Training DataPA OpenAnalytics End User Training DataPA End User Training Lesson 1 Course Overview DataPA Chapter 1 Course Overview Introduction This course covers the skills required to use DataPA OpenAnalytics

More information

13 Managing Devices. Your computer is an assembly of many components from different manufacturers. LESSON OBJECTIVES

13 Managing Devices. Your computer is an assembly of many components from different manufacturers. LESSON OBJECTIVES LESSON 13 Managing Devices OBJECTIVES After completing this lesson, you will be able to: 1. Open System Properties. 2. Use Device Manager. 3. Understand hardware profiles. 4. Set performance options. Estimated

More information

Using the Thesis and Dissertation Templates

Using the Thesis and Dissertation Templates Using the Thesis and Dissertation Templates For use with Microsoft Word on Windows and Macintosh computers January 2011 Graduate School e-mail: bpenman@austin.utexas.edu 2011 Graduate School Revised January

More information

Chapter 14: Links. Types of Links. 1 Chapter 14: Links

Chapter 14: Links. Types of Links. 1 Chapter 14: Links 1 Unlike a word processor, the pages that you create for a website do not really have any order. You can create as many pages as you like, in any order that you like. The way your website is arranged and

More information

Basic Web Development @ Fullerton College

Basic Web Development @ Fullerton College Basic Web Development @ Fullerton College Introduction FC Net Accounts Obtaining Web Space Accessing your web space using MS FrontPage Accessing your web space using Macromedia Dreamweaver Accessing your

More information

ATHENA, ARTEMIS, HEPHAESTUS: data analysis for X-ray absorption spectroscopy using IFEFFIT

ATHENA, ARTEMIS, HEPHAESTUS: data analysis for X-ray absorption spectroscopy using IFEFFIT Journal of Synchrotron Radiation ISSN 0909-0495 Editors: Å. Kvick, D. M. Mills and T. Ohta ATHENA, ARTEMIS, HEPHAESTUS: data analysis for X-ray absorption spectroscopy using IFEFFIT B. Ravel and M. Newville

More information

TUTORIAL 4 Building a Navigation Bar with Fireworks

TUTORIAL 4 Building a Navigation Bar with Fireworks TUTORIAL 4 Building a Navigation Bar with Fireworks This tutorial shows you how to build a Macromedia Fireworks MX 2004 navigation bar that you can use on multiple pages of your website. A navigation bar

More information

FileMaker Pro and Microsoft Office Integration

FileMaker Pro and Microsoft Office Integration FileMaker Pro and Microsoft Office Integration page Table of Contents Executive Summary...3 Introduction...3 Top Reasons to Read This Guide...3 Before You Get Started...4 Downloading the FileMaker Trial

More information

Microsoft Word 2010 Prepared by Computing Services at the Eastman School of Music July 2010

Microsoft Word 2010 Prepared by Computing Services at the Eastman School of Music July 2010 Microsoft Word 2010 Prepared by Computing Services at the Eastman School of Music July 2010 Contents Microsoft Office Interface... 4 File Ribbon Tab... 5 Microsoft Office Quick Access Toolbar... 6 Appearance

More information

Introduction to Microsoft Word 2008

Introduction to Microsoft Word 2008 1. Launch Microsoft Word icon in Applications > Microsoft Office 2008 (or on the Dock). 2. When the Project Gallery opens, view some of the available Word templates by clicking to expand the Groups, and

More information

Enterprise Interface User Guide

Enterprise Interface User Guide Enterprise Interface User Guide http://www.scientia.com Email: support@scientia.com Ref: 3094 ISO 9001:2000 / TickIT certified Copyright Scientia Ltd 2010 This document is the exclusive property of Scientia

More information

MICROSOFT OUTLOOK 2010 WORK WITH CONTACTS

MICROSOFT OUTLOOK 2010 WORK WITH CONTACTS MICROSOFT OUTLOOK 2010 WORK WITH CONTACTS Last Edited: 2012-07-09 1 Access to Outlook contacts area... 4 Manage Outlook contacts view... 5 Change the view of Contacts area... 5 Business Cards view... 6

More information

Topography of an Origin Project and Workspace

Topography of an Origin Project and Workspace Origin Basics Topography of an Origin Project and Workspace When you start Origin, a new project opens displaying a worksheet window in the workspace. The worksheet is one type of window available in Origin.

More information

EndNote Cite While You Write FAQs

EndNote Cite While You Write FAQs IOE Library Guide EndNote Cite While You Write FAQs We have compiled a list of the more frequently asked questions and answers about citing your references in Word and working with EndNote libraries (desktop

More information

Rochester Institute of Technology. Oracle Training: Advanced Financial Application Training

Rochester Institute of Technology. Oracle Training: Advanced Financial Application Training Rochester Institute of Technology Oracle Training: Advanced Financial Application Training Table of Contents Introduction Lesson 1: Lesson 2: Lesson 3: Lesson 4: Creating Journal Entries using Excel Account

More information

Creating Interactive PDF Forms

Creating Interactive PDF Forms Creating Interactive PDF Forms Using Adobe Acrobat X Pro Information Technology Services Outreach and Distance Learning Technologies Copyright 2012 KSU Department of Information Technology Services This

More information

How to Develop Accessible Linux Applications

How to Develop Accessible Linux Applications Sharon Snider Copyright 2002 by IBM Corporation v1.1, 2002 05 03 Revision History Revision v1.1 2002 05 03 Revised by: sds Converted to DocBook XML and updated broken links. Revision v1.0 2002 01 28 Revised

More information

EMC Documentum Webtop

EMC Documentum Webtop EMC Documentum Webtop Version 6.5 User Guide P/N 300 007 239 A01 EMC Corporation Corporate Headquarters: Hopkinton, MA 01748 9103 1 508 435 1000 www.emc.com Copyright 1994 2008 EMC Corporation. All rights

More information

Your Guide to the All New, Drag & Drop, Mobile-Responsive Email Builder

Your Guide to the All New, Drag & Drop, Mobile-Responsive Email Builder Your Guide to the All New, Drag & Drop, Mobile-Responsive Email Builder The All New Drag & Drop Email Builder from Net-Results Contents I. Introduction II. Overview - The Canvas & Builder Tools III. The

More information

MICROSOFT OFFICE ACCESS 2007 - NEW FEATURES

MICROSOFT OFFICE ACCESS 2007 - NEW FEATURES MICROSOFT OFFICE 2007 MICROSOFT OFFICE ACCESS 2007 - NEW FEATURES Exploring Access Creating and Working with Tables Finding and Filtering Data Working with Queries and Recordsets Working with Forms Working

More information

Dreamweaver and Fireworks MX Integration Brian Hogan

Dreamweaver and Fireworks MX Integration Brian Hogan Dreamweaver and Fireworks MX Integration Brian Hogan This tutorial will take you through the necessary steps to create a template-based web site using Macromedia Dreamweaver and Macromedia Fireworks. The

More information

TimeValue Software Due Date Tracking and Task Management Software

TimeValue Software Due Date Tracking and Task Management Software User s Guide TM TimeValue Software Due Date Tracking and Task Management Software File In Time Software User s Guide Copyright TimeValue Software, Inc. (a California Corporation) 1992-2010. All rights

More information

SimpleFTP. User s Guide. On-Core Software, LLC. 893 Sycamore Ave. Tinton Falls, NJ 07724 United States of America

SimpleFTP. User s Guide. On-Core Software, LLC. 893 Sycamore Ave. Tinton Falls, NJ 07724 United States of America SimpleFTP User s Guide On-Core Software, LLC. 893 Sycamore Ave. Tinton Falls, NJ 07724 United States of America Website: http://www.on-core.com Technical Support: support@on-core.com Information: info@on-core.com

More information

Advanced Event Viewer Manual

Advanced Event Viewer Manual Advanced Event Viewer Manual Document version: 2.2944.01 Download Advanced Event Viewer at: http://www.advancedeventviewer.com Page 1 Introduction Advanced Event Viewer is an award winning application

More information

LETTERS, LABELS & EMAIL

LETTERS, LABELS & EMAIL 22 LETTERS, LABELS & EMAIL Now that we have explored the Contacts and Contact Lists sections of the program, you have seen how to enter your contacts and group contacts on lists. You are ready to generate

More information

Web Portal User Guide. Version 6.0

Web Portal User Guide. Version 6.0 Web Portal User Guide Version 6.0 2013 Pitney Bowes Software Inc. All rights reserved. This document may contain confidential and proprietary information belonging to Pitney Bowes Inc. and/or its subsidiaries

More information

Introduction to OpenOffice Writer 2.0 Jessica Kubik Information Technology Lab School of Information University of Texas at Austin Fall 2005

Introduction to OpenOffice Writer 2.0 Jessica Kubik Information Technology Lab School of Information University of Texas at Austin Fall 2005 Introduction to OpenOffice Writer 2.0 Jessica Kubik Information Technology Lab School of Information University of Texas at Austin Fall 2005 Introduction: OpenOffice Writer is a word processing application

More information

Agenda2. User Manual. Agenda2 User Manual Copyright 2010-2013 Bobsoft 1 of 34

Agenda2. User Manual. Agenda2 User Manual Copyright 2010-2013 Bobsoft 1 of 34 Agenda2 User Manual Agenda2 User Manual Copyright 2010-2013 Bobsoft 1 of 34 Agenda2 User Manual Copyright 2010-2013 Bobsoft 2 of 34 Contents 1. User Interface! 5 2. Quick Start! 6 3. Creating an agenda!

More information

KaleidaGraph Quick Start Guide

KaleidaGraph Quick Start Guide KaleidaGraph Quick Start Guide This document is a hands-on guide that walks you through the use of KaleidaGraph. You will probably want to print this guide and then start your exploration of the product.

More information

IT Quick Reference Guides Using Windows 7

IT Quick Reference Guides Using Windows 7 IT Quick Reference Guides Using Windows 7 Windows Guides This sheet covers many of the basic commands for using the Windows 7 operating system. WELCOME TO WINDOWS 7 After you log into your machine, the

More information

Excel 2007 Basic knowledge

Excel 2007 Basic knowledge Ribbon menu The Ribbon menu system with tabs for various Excel commands. This Ribbon system replaces the traditional menus used with Excel 2003. Above the Ribbon in the upper-left corner is the Microsoft

More information

webmethods Certificate Toolkit

webmethods Certificate Toolkit Title Page webmethods Certificate Toolkit User s Guide Version 7.1.1 January 2008 webmethods Copyright & Document ID This document applies to webmethods Certificate Toolkit Version 7.1.1 and to all subsequent

More information

WINDOWS LIVE MAIL FEATURES

WINDOWS LIVE MAIL FEATURES WINDOWS LIVE MAIL Windows Live Mail brings a free, full-featured email program to Windows XP, Windows Vista and Windows 7 users. It combines in one package the best that both Outlook Express and Windows

More information

How to Edit Your Website

How to Edit Your Website How to Edit Your Website A guide to using your Content Management System Overview 2 Accessing the CMS 2 Choosing Your Language 2 Resetting Your Password 3 Sites 4 Favorites 4 Pages 5 Creating Pages 5 Managing

More information

CONTENTM WEBSITE MANAGEMENT SYSTEM. Getting Started Guide

CONTENTM WEBSITE MANAGEMENT SYSTEM. Getting Started Guide CONTENTM WEBSITE MANAGEMENT SYSTEM Getting Started Guide Table of Contents CONTENTM WEBSITE MANAGEMENT SYSTEM... 1 GETTING TO KNOW YOUR SITE...5 PAGE STRUCTURE...5 Templates...5 Menus...5 Content Areas...5

More information

OX Spreadsheet Product Guide

OX Spreadsheet Product Guide OX Spreadsheet Product Guide Open-Xchange February 2014 2014 Copyright Open-Xchange Inc. OX Spreadsheet Product Guide This document is the intellectual property of Open-Xchange Inc. The document may be

More information

Using FileMaker Pro with Microsoft Office

Using FileMaker Pro with Microsoft Office Hands-on Guide Using FileMaker Pro with Microsoft Office Making FileMaker Pro Your Office Companion page 1 Table of Contents Introduction... 3 Before You Get Started... 4 Sharing Data between FileMaker

More information

Timm s Tracking Tool (TTT) Installation and Operating Instructions (July 2009)

Timm s Tracking Tool (TTT) Installation and Operating Instructions (July 2009) Timm s Tracking Tool (TTT) Installation and Operating Instructions (July 2009) Michael A. Rieger and Timm Schroeder Institute of Stem Cell Research, Helmholtz Zentrum Muenchen German Research Center for

More information

A QUICK OVERVIEW OF THE OMNeT++ IDE

A QUICK OVERVIEW OF THE OMNeT++ IDE Introduction A QUICK OVERVIEW OF THE OMNeT++ IDE The OMNeT++ 4.x Integrated Development Environment is based on the Eclipse platform, and extends it with new editors, views, wizards, and additional functionality.

More information

If you know exactly how you want your business forms to look and don t mind detail

If you know exactly how you want your business forms to look and don t mind detail Advanced Form Customization APPENDIX E If you know exactly how you want your business forms to look and don t mind detail work, you can customize QuickBooks forms however you want. With QuickBooks Layout

More information

Manual. OIRE Escuela de Profesiones de la Salud. Power Point 2007

Manual. OIRE Escuela de Profesiones de la Salud. Power Point 2007 Power Point 2007 Manual OIRE Escuela de Profesiones de la Salud Power Point 2007 2008 The New Power Point Interface PowerPoint is currently the most common software used for making visual aids for presentations.

More information

Database Studio is the new tool to administrate SAP MaxDB database instances as of version 7.5.

Database Studio is the new tool to administrate SAP MaxDB database instances as of version 7.5. 1 2 3 4 Database Studio is the new tool to administrate SAP MaxDB database instances as of version 7.5. It replaces the previous tools Database Manager GUI and SQL Studio from SAP MaxDB version 7.7 onwards

More information

User s Guide Version 7.5 April 2015. 2015 Ergonis Software. Contents

User s Guide Version 7.5 April 2015. 2015 Ergonis Software. Contents ! KeyCue User s Guide Version 7.5 April 2015 Contents License agreement... 2 Limited warranty... 2 Contact... 2 About KeyCue... 3 System requirements... 4 Installation... 4 Using KeyCue... 4 System-wide

More information

How To Change Your Site On Drupal Cloud On A Pcode On A Microsoft Powerstone On A Macbook Or Ipad (For Free) On A Freebie (For A Free Download) On An Ipad Or Ipa (For

How To Change Your Site On Drupal Cloud On A Pcode On A Microsoft Powerstone On A Macbook Or Ipad (For Free) On A Freebie (For A Free Download) On An Ipad Or Ipa (For How-to Guide: MIT DLC Drupal Cloud Theme This guide will show you how to take your initial Drupal Cloud site... and turn it into something more like this, using the MIT DLC Drupal Cloud theme. See this

More information

EzyScript User Manual

EzyScript User Manual Version 1.4 Z Option 417 Oakbend Suite 200 Lewisville, Texas 75067 www.zoption.com (877) 653-7215 (972) 315-8800 fax: (972) 315-8804 EzyScript User Manual SAP Transaction Scripting & Table Querying Tool

More information

Excel 2010: Create your first spreadsheet

Excel 2010: Create your first spreadsheet Excel 2010: Create your first spreadsheet Goals: After completing this course you will be able to: Create a new spreadsheet. Add, subtract, multiply, and divide in a spreadsheet. Enter and format column

More information

Google Drive Create, Share and Edit Documents Online

Google Drive Create, Share and Edit Documents Online Revision 3 (1-31-2014) Google Drive Create, Share and Edit Documents Online With Google Drive, you can easily create, share, and edit documents online. Here are a few specific things you can do: Convert

More information

Catalog Creator by On-site Custom Software

Catalog Creator by On-site Custom Software Catalog Creator by On-site Custom Software Thank you for purchasing or evaluating this software. If you are only evaluating Catalog Creator, the Free Trial you downloaded is fully-functional and all the

More information

Word 2007 WOWS of Word Office 2007 brings a whole new basket of bells and whistles for our enjoyment. The whistles turn to wows.

Word 2007 WOWS of Word Office 2007 brings a whole new basket of bells and whistles for our enjoyment. The whistles turn to wows. WOWS of Word Office brings a whole new basket of bells and whistles for our enjoyment. The whistles turn to wows. gfruth@wm.edu Templates Click on the Office Button PDF and select New. You can now change

More information

Create A Collage Of Warped Photos

Create A Collage Of Warped Photos Create A Collage Of Warped Photos In this Adobe Photoshop tutorial, we re going to learn how to create a collage of warped photos. Now, don t go letting your imagination run wild here. When I say warped,

More information

Microsoft PowerPoint 2008

Microsoft PowerPoint 2008 Microsoft PowerPoint 2008 Starting PowerPoint... 2 Creating Slides in Your Presentation... 3 Beginning with the Title Slide... 3 Inserting a New Slide... 3 Slide Layouts... 3 Adding an Image to a Slide...

More information

Managing Your Desktop with Exposé, Spaces, and Other Tools

Managing Your Desktop with Exposé, Spaces, and Other Tools CHAPTER Managing Your Desktop with Exposé, Spaces, and Other Tools In this chapter Taking Control of Your Desktop 266 Managing Open Windows with Exposé 266 Creating, Using, and Managing Spaces 269 Mac

More information

Course Exercises for the Content Management System. Grazyna Whalley, Laurence Cornford June 2014 AP-CMS2.0. University of Sheffield

Course Exercises for the Content Management System. Grazyna Whalley, Laurence Cornford June 2014 AP-CMS2.0. University of Sheffield Course Exercises for the Content Management System. Grazyna Whalley, Laurence Cornford June 2014 AP-CMS2.0 University of Sheffield PART 1 1.1 Getting Started 1. Log on to the computer with your usual username

More information

Extension Course -9006 Notes, Attachments, and Document Management Version 9.0

Extension Course -9006 Notes, Attachments, and Document Management Version 9.0 Extension Course -9006 Notes, Attachments, and Document Management Version 9.0 Information in this document is subject to change without notice and does not represent a commitment on the part of Technical

More information

Chapter 6. Formatting Text with Character Tags

Chapter 6. Formatting Text with Character Tags Chapter 6 Formatting Text with Character Tags 143 144 FrameMaker 7: The Complete Reference In many desktop publishing applications, you use a single style sheet for both paragraph and character formatting.

More information

ExpertCAD Release Summary March 2010

ExpertCAD Release Summary March 2010 Overview ExpertCAD Release Summary March 2010 ExpertCAD 2010 is major release that includes significant enhancements as well as customer requested software modifications and corrections. This release summary

More information

MICROSOFT OUTLOOK 2010 READ, ORGANIZE, SEND AND RESPONSE E-MAILS

MICROSOFT OUTLOOK 2010 READ, ORGANIZE, SEND AND RESPONSE E-MAILS MICROSOFT OUTLOOK 2010 READ, ORGANIZE, SEND AND RESPONSE E-MAILS Last Edited: 2012-07-09 1 Read Emails... 4 Find the inbox... 4 Change new incoming e-mail notification options... 5 Read email... 6 Change

More information

Windows 10: A Beginner s Guide

Windows 10: A Beginner s Guide Windows 10: A Beginner s Guide Copyright 2014 Conceptual Kings. All are rights reserved. This book or any portion thereof may not be reproduced or used in any manner whatsoever without the express written

More information

Finance Reporting. Millennium FAST. User Guide Version 4.0. Memorial University of Newfoundland. September 2013

Finance Reporting. Millennium FAST. User Guide Version 4.0. Memorial University of Newfoundland. September 2013 Millennium FAST Finance Reporting Memorial University of Newfoundland September 2013 User Guide Version 4.0 FAST Finance User Guide Page i Contents Introducing FAST Finance Reporting 4.0... 2 What is FAST

More information

Ovation Operator Workstation for Microsoft Windows Operating System Data Sheet

Ovation Operator Workstation for Microsoft Windows Operating System Data Sheet Ovation Operator Workstation for Microsoft Windows Operating System Features Delivers full multi-tasking operation Accesses up to 200,000 dynamic points Secure standard operating desktop environment Intuitive

More information

Basic tutorial for Dreamweaver CS5

Basic tutorial for Dreamweaver CS5 Basic tutorial for Dreamweaver CS5 Creating a New Website: When you first open up Dreamweaver, a welcome screen introduces the user to some basic options to start creating websites. If you re going to

More information

ZebraDesigner Pro. User Guide. 13857L-003 Rev. A

ZebraDesigner Pro. User Guide. 13857L-003 Rev. A ZebraDesigner Pro User Guide 13857L-003 Rev. A 2 2011 ZIH Corp. The copyrights in this manual and the software and/or firmware in the printer described therein are owned by ZIH Corp. and Zebra s licensors.

More information

Ohio University Computer Services Center August, 2002 Crystal Reports Introduction Quick Reference Guide

Ohio University Computer Services Center August, 2002 Crystal Reports Introduction Quick Reference Guide Open Crystal Reports From the Windows Start menu choose Programs and then Crystal Reports. Creating a Blank Report Ohio University Computer Services Center August, 2002 Crystal Reports Introduction Quick

More information

Windows XP Pro: Basics 1

Windows XP Pro: Basics 1 NORTHWEST MISSOURI STATE UNIVERSITY ONLINE USER S GUIDE 2004 Windows XP Pro: Basics 1 Getting on the Northwest Network Getting on the Northwest network is easy with a university-provided PC, which has

More information

How To Use An Apple Macbook With A Dock On Itunes Macbook V.Xo (Mac) And The Powerbar On A Pc Or Macbook (Apple) With A Powerbar (Apple Mac) On A Macbook

How To Use An Apple Macbook With A Dock On Itunes Macbook V.Xo (Mac) And The Powerbar On A Pc Or Macbook (Apple) With A Powerbar (Apple Mac) On A Macbook QNS OSX instructions. CONTENTS 1 The Apple and Finder 2 The Dock 3 Navigating OS X 4 System Preferences 1 OS X tutorial: the apple The apple menu The apple menu is hidden under the apple at the top left

More information

User Guide. November 2010

User Guide. November 2010 User Guide November 2010 Table of Contents Contact information...4 Support from your AppShore account...4 Support from www.appshore.com...4 Support from the AppShore team...4 Logging into AppShore...5

More information

Microsoft PowerPoint 2010

Microsoft PowerPoint 2010 Microsoft PowerPoint 2010 Starting PowerPoint... 2 PowerPoint Window Properties... 2 The Ribbon... 3 Default Tabs... 3 Contextual Tabs... 3 Minimizing and Restoring the Ribbon... 4 The Backstage View...

More information