| RXTE GOF |
Fourier Analysis of PCA Data and Searches for
High-Frequency QPO Recipes from the RXTE Cook Book |
RXTE FAQ |
|---|
- Introduction
- Preparing your data for Fourier analysis
- Running powspec
- Plotting your powspec output to find QPOs
The analysis of X-ray time series is a large and involved topic with many subtleties. If you are unfamiliar with it, we recommend the following references:
To exploit the full resolution of the PCA and to avoid the round-off errors associated with extraction it is better to work with the unbinned data, i.e. with data files that have not been put through saextrct or seextrct to produce a light curve. The xronos ftool powspec can handle these "raw" datafiles, but it can't clean or select the data beforehand. Consequently, this recipe is in two main parts. The first explains how to prepare your data for powspec; the second explains how to run powspec. A final section explains how to look for your QPOs in your power spectrum.
Note that this recipe is "tuned" for the study of QPOs in the range
10-2000 Hz, but can be quickly adapted for other frequency ranges of interest. It assumes that you have data in a Single-Bit mode (e.g. SB_125us_0_249_1s) or Event mode (e.g. E_125us_64M_0_1s, Good Xenon). It will also work for Binned mode, but only those with one channel (e.g. B_500us_1M_0_249_H).
For the sake of clarity, the recipe below is for the specific example of four data files in the Event configuration E_125us_64M_0_1s. If you have Single-Bit data or if you have an Event configuration that doesn't have channel information, e.g. E_1us_1M_0_1s, then simply skip the third step and proceed to the powspec section.
After creating cleaned and selected data files, we're now ready to put them into powspec, the xronos task that generates a power density spectrum. At this point, it's worth repeating that this sort of temporal analysis should not be thought of as a simple recipe. Rather, it's an analysis technique that requires the user to make several choices based on the scientific priorities of the investigation and on the properties of the source.
This example gives the most convenient and common usage of powspec, but note that the tool has a long and comprehensive help file ("fhelp powspec") which the advanced user will wish to study. First type "powspec", then:
[If you get a message saying that the defaults_win.wi file is not found, this means you don't have the xronos XRDEFAULTS environment variable set correctly. You'll need to set it by issuing a command
like:
Make a note of the number you enter here, known to the code as NINTFM. It is the number of 'processing intervals' the program will later work through before giving a result.
After this you'll go through a series of prompts for: output filenames (powspec will add .fps to whatever you specify); whether you want to plot; and the name of the plotting device. (If you say "no" to the "Want to Plot" question, the data will still be saved in the file for your later use.
If you answered "yes" to the plot question, the power spectrum will appear on your screen when the number crunching completes, and will leave you with a PLT> prompt. It only writes the data to a file once you exit the plot by typing "q" - in other words, don't control-Z out of the plot interface, or you'll lose everything.
If you're analyzing LMXB data and searching for high-frequency QPO, you'll look with interest at the region of the power spectrum between (say) 300 and 1200 Hz. You may also see a sloping low frequency red noise component, or QPO in the 1-60 Hz range.
Once the file is made and you've exited powspec, you can plot the data in the output.fps file by typing "fplot output.fps" and giving the following columns for the axis names:
If you discover one or more QPO peaks, you'll want to do some fitting to determine some scientifically interesting parameters. The simplest way to do this is to plot the data using FPLOT and the do your fits within the PLT interface. There is extensive help on how to do this in the plotting recipe and also within the PLT interface itself (just type "help" at the PLT> prompt) but, stated briefly, the steps you'll do are as follows:
Fit a model to the 'background' or continuum power
spectrum: 'model pow' or 'model cons linr' might be good first
choices.
Add a Lorentzian to this model, e.g. 'model pow lore'. The
three parameters of the Lorentzian are LC, the line center (centroid
frequency of the QPO); LW, the line width; and LN, the line
normalization.
When you're happy with the fit you can determine the
formal error on the fit using the UNCER command.
The centroid frequency and line width can be used in your
IAU Circular 'as is'. To get the rms amplitude of the QPO, work out
the integral of the Lorenzian:
Introduction
Preparing your Data for Fourier Analysis
Important warning: the filtered versions of datafiles produced following this recipe cannot be properly processed by saextrct and seextrct (or any other software that uses the GTIs or channel information contained in the header) unless the user inputs the same GTI information used in grosstimefilt into the timeint parameter and the channel filtering information be given using either the chmin and chmax or chint parameters.
kaah[4]% timetrans
Running TIMETRANS v3.5.2
#######################################
Input file name or @file-of-filenames:[]standard2.lc
Output filename:[outfile_11847]good.tint
Input relative time range:[0-250.0, 350.0-500.0, 750.0-1000.0]
0-3020,4400-6210,7900-8300
XSPEC> ignore 0.0-5.0 20.0-**
XSPEC> show
The output of the "show" command will tell you which binned energy channels correspond to the range 5-20 keV. In this case it's:
Noticed channels 10 to 28
rufus [74] [day] herx1: sebitmask
Running SEBITMASK version 3.6
==============================================
Filename containing SE data to be processed:[] good_01.se
Enter filtering expression (or @filename):[] C[] >= 10 && C[] <= 28
Enter the column NAME to be processed (Event):[Event]
Output filename to contain boolean expression
(acts as input for FSELECT):[bitfile] e_5_20_keV.bit
The key input here is C[] >= 10 && C[] <= 28 which tells sebitmask to create a bitmask corresponding to values of the C-token between 10 and 28 inclusive. [By the way, you should ignore the rather fearsome warnings!] To view the contents of the newly created bitmask:
rufus [74] [day] herx1: more e_5_20_keV.bit
Event >= bxxxx001010xxxxxx &&
Event <= bxxxx011100xxxxxx &&
Event == b1xxxxxxxxxxxxxxx
The last line removes the non-event markers.
rufus [82] [day] herx1: fselect
Name of FITS file and [ext#][] good_01.se
Name of output FITS file[] good_01_5_20_keV.se
Selection Expression[] @e_5_20_keV.bit
Here, we've used e_5_20_keV.bit to create good_01_5_20_keV.se from good_01.se.
Running Powspec
Powspec will now trundle along, performing NINTFM fast Fourier transforms, writing to the screen the number and start time of the data segment transformed, plus the data maximum, minimum, variance etc.
good_singlebit.sa VY2
In the case of Event files, VY2 isn't needed.
setenv XRDEFAULTS '/ftools/SUN/develop/xronos/defaults/'
With the path correctly set for your ftools installation, run powspec again. Be careful: the last / is important.]
Bin Time (s) ...... 0.6104E-04
Plotting your Powspec Output to Find QPOs
X Axis Parameter[error]: FREQUENCY[XAX_E]
Y Axis Parameter[error]: POWER[ERROR]
You'll probably want to look at the plot in log-log space:
PLT> log x
PLT> log y
PLT> p
See the plotting recipe for further details.
Limit your plot to the frequency range of interest,
using 'r x {lowfreq} {highfreq}
Need more info? Need help? In the first instance, feel free to send any questions you have about using powspec or other xronos ftools for RXTE analysis to
xtehelp@athena.gsfc.nasa.gov, but note that these tools are provided by (and maintained by) the HEASARC under the guidance of Lorella Angelini, and if it's something we can't answer, we'll refer you to them/her.
I = pi*LN*LW/2
Finally, divide this by the mean count rate of the source, take the
square root, and multiply by 100 to get this as a percentage, i.e.
rms amplitude = 100*sqrt( I/mean )
If you have a question about RXTE, please send email to one of our
help desks.

