Research Software and Tools
IDL and DS9 are now installed on Stella, and the rest of the Heasoft tools that I use appear to be running successfully (for now). I can now get on with my research!
What software do I use, why are they so vital to my research?
Observations are taken by a space observatory (in my case, Swift). The Swift team processes the raw data and uploads the processed data onto an archival website. The first tool I use is a web browser to access the archive and download the data.
Next, I use a program called xrtpipeline to process the data. This runs a series of tasks that pinpoint, filter, "clean," and sort the data, and produce certain files (products). For example, xrtpipeline uses the inputted coordinates (right ascension and declination) to create images of the source of interest. It recognizes which detector pixels are "hot" (always on) and "cold" (always off) and adjusts the information to compensate. It corrects the timestamps for events (the time a photon hits a detector), based on the calibration files in the calibration database (CALDB). It judges the quality of the data based on a grade ranking.
I further process the data by using barycorr, which barycenter corrects the data. The motions of Swift orbiting the Earth and the Earth orbiting the Sun affect the recorded time that a photon hits a detector. I use the latest clockfile to adjust my timestamps as closely as I can to the correct value. Even if my observation times are as little as a second off, it could affect my timing analysis.
I use an imaging program called DS9 to look at an image of my source. The image is unlike a common photograph, but similar in principle. It is a collection of dots of various energy levels that were observed in a specified interval of time. Each dot represents a photon, as far as the detector can best tell. I can look at the number of photons collected in only a few seconds of an observation, or I can look at the number of photons collected over hours. I can limit my image to only viewing photons within a few keVs of each other in energy, or I can look at the entire X-ray and gamma-ray range that Swift is capable of observing (as well as visible and ultraviolet light, if I knew what I was doing). Most importantly, I can take note of the size and intensity of my source, compare my source to the background, and observe any unusual traits.
Next, I utilize a program called xselect, which allows me to organize and filter the data in whichever way I like, view light curves and spectra, adjust my viewing of these plots, and save the products.
A light curve is one of the most basic ways of looking at observations; it is a plot of the intensity of the observation (the count rate, or number of photons that hit the detector in a certain time period) as the rate changes over time. For example, I may choose to look at a light curve, binned in one second time intervals, over the range of several minutes (over a specified energy range). This means that I will be shown a plot with each dot representing the number of photons that hit a detector in one second, over the course of hundreds of seconds (taking into account only the photons that have a certain energy that I specify). Unless I localize the source and background-subtract, the plot uses the data from the source as well as from the background.
The source I'm interested in is usually the brightest source in my image field-of-view, but there are many other x-ray sources in the sky nearby. By looking at my image in DS9 and drawing a circle around my source that is roughly the size of my source (or a little bigger), I can cut out the rest of the image that I don't need (I call this localizing, although I don't know if that's the correct term). (Often, I work with a one-dimensional image – a line – and in those cases, I draw a rectangle instead of a circle.) However, even after I make that cut, some background data is still mixed in with my source data. I can attempt to separate out my source by background-subtracting, that is, estimating the average number of background counts in that area and subtracting that number from my region.
The data I use usually show a light curve profile that peaks and quickly decays, often with flaring. I can model the profiles using a simple power law model, multiple power law components, or any other function. I use a tool called fplot to do so.
If I'm interested in spectral analysis, I create spectra, which plot the count rate as a function of energy. By viewing a spectrum, I can see the energy distribution of the observed photons, that is, how many photons are "hard" (higher energy) and how many are "soft" (lower energy). For my analysis, I usually work with the X-ray energy ranges of 0.2 to 10.0 keV.
If I wish to take a closer look at the spectra, I use xrtmkarf to create an ancillary response file (ARF), which adjusts the energy information based on how efficiently the detector works at certain energy levels. I use this file along with the response matrix file (RMF) to create an accurate spectral plot.
Many models have been created to display what the spectrum of a certain phenomenon should look like. If I want to compare these theoretical models to my observed data, I fit the data using a program called xspec. The simplest model is a power-law fuction. Since the sources I'm interested in are usually cosmologically distant, I nearly always fit my spectra with an absorption profile. I also try combinations of other models, such as blackbody emission, bremsstrahlung radiation, and others. It is important to consider how well the models fit the observed data, and if the number of models I use is appropriate and bettering the fit.
In my timing study, I use a number of interface description language (IDL) programs. The most important of these utilizes the power of the fast Fourier transform (FFT) technique to search for periodicity in the data and create power density spectra. If I wish to explore the possibility of a periodicity further, I use powspec, which calculates power density spectra and estimates the period of the variability, and efold, which folds light curves based on an inputted period.
Finally, to compile my results, I create a document using the typesetting program LaTeX.
This isn't everything I do, but it highlights the reasons for my dependence on computer software. I rely on all these programs and tools to work properly, efficiently, and correctly. Each piece of software is important when it's a step in a long list of tasks to complete for each source.




Comments