Subsections


Get X-ray PDF

Objective

Our goal for this step is to obtain the structure function S(Q), then the PDF, G(r). Though only the elastic scattering intensities are what we are interested in, the collected raw scattering intensities inevitably are subject to various instrument and sample effects. The background should be subtracted. Standard corrections due to partial X-ray polarization, sample absorption, and double scattering need to be performed. The unwanted Compton intensities should also be removed. This section will show you how these are done in this program.

Setup working directory

Following the menu Switch-> to Get X-ray PDF as Fig. 2.10, you will activate the get X-ray PDF GUI as in Fig. 2.11.

Figure 2.10: Click the Get X-ray PDF button to switch to the GUI in Fig. 2.11
\includegraphics[width=4.2in]{goto_specred.ps}
Figure 2.11: The main Get X-ray PDF GUI
\includegraphics[width=5in]{getxpdf_init.ps}

Changing working directory is done by clicking on the button Working Directory in the top portion of Fig. 2.11. This would bring up a directory selection window. We should select the local directory containing all the copied tutorial data files (see section 2.2).

The Working Directory displayed on the GUI (Fig. 2.11) can be very useful. First, when selecting data files, the directory to start the search will always be the Working Directory. More importantly, the program by default saves the S(Q) and G(r) files automatically under the Working Directory. A log file (.pdfgetx2.log) and temporary history file (.pdfgetx2.xhst) are also saved under the Working Directory when exiting the program. A recommended file organization is to have all the data files under one directory, then set this directory to be the Working Directory. This will also make data file selection easier, and all the autosaved files will also be in the same directory. The default working directory is where you start up the program PDFgetX2. In Linux/UNIX, it's where you run the pdfgetx2 command; in Windows, double click on a *.xhst will set its directory as the Working Directory.

Input data files

In this tutorial, we will use the provided file ingaas_tutorial.int as the sample data, ingaas_tutorial.bkg as the sample background data. Certainly you can also use the merged data obtained in section 2.3 as the sample data. Container and container background data are not used in the tutorial. Input of each data file is done by clicking on the corresponding button (as in Fig. 2.12), which will invoke a GUI to select files. Data files are not immediately read in after being selected. For your reference, the corresponding GUI section should look similar to Fig. 2.12.

Figure 2.12: Read in the sample and sample background files.
\includegraphics[width=6.2in]{getxpdf_sambkg.ps}

What are those data types?

Four kinds of data are used. Sample data refers to the scattering intensity when sample is measured, which means to contain contributions from sample, container (if used), and background scattering. Sample background data refers to the background scattering when sample (and container if used) is removed from the beam. Container data refers to the scattering when only container is positioned in the beam. The container background refers to the background when container is removed from the beam (this is usually the same as the sample background). Only sample data is mandatory to proceed the analysis, though background data is always preferred to have. The classification of data types shouldn't be restricted to their names. The essential differences between them are the types of corrections applied (see Egami and Billinge [5].

Experiment setup

GUI section of experimental configurations is accessed by clicking the Expt. Configuration button (among the button group in the middle of the GUI). Similarly, you can switch to other GUI sections by clicking on the corresponding buttons. In our case, we only need to input the X-ray wavelength and polarization factor. No filter was used during the experiment. The absorption coefficient of the container is only necessary in case of strongly absorbing containers.

For our example data, the X-ray energy of 60.0 keV was used, giving the wavelength of 0.2067 Å (type is Customize ...). The data were collected at a synchrotron source (CHESS) where beam is highly linearly polarized. The polarization factor is around 0.94 (type is Customize ...) in this case. You would have something like in Fig. 2.13.

Figure 2.13: The experiment configuration
\includegraphics[width=6.3in]{getxpdf_expsetup.ps}

Sample information

Access of the sample information GUI is via clicking the Sample Information button. Then, clicking the Add/Remove Atoms button, will present you an interface mimicking the periodic table to specify the chemical species in your material. After the selection of atoms, it may take some time for the GUI to create text boxes to enter the fraction, valence, etc. of each atom. Only the atom fractions are required. The tabulated X-ray scattering data base used includes some common ions, so entering the valence information may help. Other fields such as f1 and f2 are the dispersion corrections to the scattering factor that become important in resonant scattering experiments. Sample measurement geometry is required, as well as the measured sample attenuation coefficient $ \mu$t.

Fig. 2.14 shows the series of GUIs you should get and the values you need to enter. Atoms In, Ga, and As are first chosen, then the fractions are set to be 1, 2, and 3 respectively. Sample geometry is selected to be Flat Plate Transmission, and the value of sample attenuation coefficient $ \mu$t, 1.11.

Figure 2.14: The GUI to input sample chemical information
\includegraphics[width=4.2in]{getxpdf_pickatom.ps} \includegraphics[width=5.2in]{getxpdf_sample.ps}

At the bottom are some optional parameters about the sample, from which the theoretical $ \mu$t value can be automatically calculated. This can serve as a consistency check against the measured $ \mu$t value. Also the number density here is used to compute the baseline for the G(r), which also serves as an preliminary check of the PDF scale. Thus it's advised to fill out these information properly, though these numbers are not used in the corrections explicitly.

Set up I(Q) corrections

The only thing we need to specify here is the X Column Format, which is Q(Å-1) in our case. The filter correction doesn't apply to our data. The effective scattering volume correction is not significant due to the rather low background level. All other default values are fine. The setup GUI on the right are still under development.

Set up S(Q) corrections

Too many available corrections here are somewhat misleading because only a few are necessary in most cases. We should always set the method to be Generic, as the I(Q) Simu is not functioning yet. For this tutorial data, corrections to be applied are Sample Self-Absorption, Multiple Scattering, and Compton Scattering.

In addition, we need to apply the Laue Diffuse Scattering and Weighting correction. The weighting function type should be <asf>2. Other corrections are mostly cosmetic, only needed in special situations. At this point in time, the setup is done! For the technical details, please refer to the book by Egami and Billinge [5]. At last, check whether what you have is the same as in Fig. 2.4.7.

Figure 2.15: The GUI to set up S(Q) corrections
\includegraphics[width=6.4in]{getxpdf_sqcorr.ps}

What corrections should be applied to Compton scattering?

Theoretical Compton intensities sometimes require additional corrections depending on the experimental setup and the detector characteristics. The Ruland window function [11] should be multiplied when the measured total intensities come from the integration within a finite energy window. When the energy window is properly set, as Q increases, the Compton scattering gradually falls out of the energy window, giving cleaner signals in high Q region. The Ruland window function is an empirical analytical formula to take account of this energy window effect, with only one parameter. When the data extend to high Q values (say, $ \geq$ 25.0 Å-1), the Breit-Dirac recoil factor becomes significant. The exponent should two if the number of photons is measured; three when X-ray intensity is measured [12]. The energy dependence correction applies when the detector counts depend on the X-ray energy, for example, the image plate area detectors. Two empirical forms are available: linear or quadratic with the X-ray energy.

Coming to our experiment, a single-channel pulse-height analyzer (SCA) was used to set the energy discrimination window. Therefore, the Ruland window function needs to be applied. It was found the window width value of 0.003 works fine. The number of photons was counted by a solid state detector, giving the exponent of the Breit-Dirac factor of two. There shall be no energy dependence correction to the solid state detector.

G(r) set up and data processing

Only a direct sine Fourier transform is performed when going from S(Q) to G(r). Thus, the only setup for G(r) is the Fourier transform range of S(Q), and the calculated r range of G(r). Simply go to the GUI section by clicking on the G(r) Optimization, fill up the numbers as in Fig. 2.4.8. You may be distracted by other widgets in the same section. They are mostly for batch processing testings when you have a large number of data set. The batch processing is not user friendly yet, and still under testing. They may also be taken out of the GUI.

Figure 2.16: the GUI for G(r) Fourier transform settings.
\includegraphics[width=6.4in]{getxpdf_grcorr.ps}

Once you've filled in the required information, it's time for data processing, which is controlled by the button group above the User Message display (refer to Fig. 2.17). There are totally seven buttons. Reset Data will invalidate the read-in data, thus forces the program to (re-)read the data files when Get I(Q) button is clicked next time. When Get I(Q) button is pressed, jobs to do are, 1) read the data files if they haven't been read in yet or Reset Data has been pressed since the last Get I(Q) action; 2) apply the additive and/or multiplicative corrections to all data; 3) subtract the background, container, scattering from the sample if applicable; 4) 2$ \theta$ to Q conversion if applicable, and finally obtain I(Q) with the specified Xmin and Xmax. While Calc Corrections would do several early stage calculations, including 1) absorption correction calculation; 2) multiple scattering calculation, 3) polarization correction calculation, 4) calculation of theoretical elastic scattering and Compton scattering intensities. Get S(Q) button will take the I(Q) data, apply the specified corrections to get S(Q) and F(Q) = Q(S(Q) - 1). The sine Fourier transform is performed to compute G(r) when the Get G(r) button is clicked. After all those buttons have been pressed, we are ready to look at the results.

The program will do a consistency check on some most apparent parameters, and report the exceptions. You have to correct those parameters to be able to proceed. However, the parameter check is no where near complete. For any other situation, an error message will be shown. Please report this error message to the authors with detailed description how to reproduce this error message, for example, attaching the history file and related data files. Also please check the User Message and the program output on the terminal for any hint about the possible error sources.

Figure 2.17: From bottom, the User Message display, the action buttons, the data visualization selections
\includegraphics[width=6in]{getxpdf_plotaction.ps}


Data visualization

The data flow diagram in the program goes from the four data files (sample, sample background, container, container background), to the sample only scattering intensity I(Q), then to the structure function S(Q), finally to the PDF, G(r). Within each step, there are maybe also several corrections applied. In consideration of this, Data Type is first selected for the Data Visualization. Then, depending on the Data Type, some choices may be available to select the more specific corrections. Almost all internal data used in the program can be directly plotted, which can be very useful for problem diagnosis. To give you some examples, the Raw Data, I(Q), and G(r) represent directly the data as the name suggests. Others refer to correction or calculation steps involving more intermediate data sets. We hope the meaning of each selection is self explanatory enough. One thing to note, all correction terms are calculated regardless of whether they will be applied or not. Thus, you can visualize all correction terms, keeping in mind that it doesn't necessary mean that they have been applied.

Clicking the Plot Data button will plot the selected data. The same plot window will be reused for subsequent visualizations, thus there is no need to close the window. If your F(Q) and G(r) data look like Fig. 2.18, chances are you have successfully finished this tutorial; congratulations. The data have been published in [13] and [14].

Figure 2.18: The F(Q) (a) and the G(r) (b) for your reference
\includegraphics[width=6in]{ingaas_fqgr.ps}

History files and data saving

The full GUI session can be saved into a history file, and reloading the history file will restore the saved GUI session. History saving and loading is via the menu button History, located at the upper right of the GUI. The Load History... and Save History... from the main menu File will do this too. This built redundancy was to make the Get X-ray PDF somehow independent. When exiting the program, a temporary history file (.pdfgetx2.xhst ) is also saved under the Working Directory. An example history file ingaas_getxpdf.xhst is included under the tutorial directory. You can load it up to check whether you have the same setup.

During data processing, the S(Q), F(Q), and G(r) data are automatically saved by default. You can reset this behavior by toggling the File AutoSave droplist. The default file names have the same base as the sample data file, with suffixes of .sq and .gr, respectively. The history information is also saved into the three autosaved data files explicitly in the header. However, it's still advised to save history files because those autosaved files are simply overwritten during data processing. If you want to save other data types, the authors have to ask you to use the Export ASCII function of the plotting window. This means you first select the data type to save, then plot it, and export it to a file of your choice.

Xiangyun Qiu 2004-04-23