The HXD significantly extends the spectral range of Suzaku (to 600 keV) and has the lowest background rate of any instrument ever operated in the 10-600 keV energy range. Because the HXD is a non-imaging instrument, the analysis of HXD data follows a different path from that used in XIS data analysis. It is much closer to the analysis flow of other collimated instruments, such as Ginga LAC and RXTE PCA. Users familiar with the analysis techniques for either will find much in common in what we describe below.
Users should refer to the outstanding issues in HXD data analysis (Chapter5).
A peculiarity of the HXD that needs to be taken into account is that
there are two independent detector systems. These are the GSO/BGO
phoswich counters and the PIN silicon diodes. The PIN diodes
are sensitive below
keV, while the GSO/BGO phoswich
counters detect photons above
keV. The energy resolution
of the PIN diodes is
keV, while the phoswich counters have
a resolution of
7.6 sqrt(E) % (FWHM) where
is the photon energy in MeV.
There are a couple of things that users should know about the detectors,
in order to understand better the HXD data and their organization.
The HXD sensor (HXD-S) is a composed of 16 main detectors (well units)
arranged as a 4
4 array (see top view in Figure 7.1) and
20 surrounding crystal scintillators for active shielding.
|
Each unit actually consists of two types of detectors: Four GSO/BGO phoswich counters, and four 2 mm-thick PIN silicon diodes located inside the well, but in front of the GSO scintillator. One can see the configuration of the sensor units in Figure 7.2.
This means that the data (``well'' data) do not initially differentiate
between PIN and GSO. The distinction is made later on in the pipeline.
For more information about the HXD detector, please see the Suzaku
Technical Description at
http://suzaku.gsfc.nasa.gov/docs/suzaku/prop_tools/suzaku_td.
HXD data begin as part of the RPT telemetry downloaded from Suzaku, and is immediately converted into a collection of FITS files by the mk1stfits routine at ISAS. mk1stfits does not reject any events or apply any calibration to the data (see Tabletab:hxdproc below), but merely converts it to FITS files. These files are included in the standard data download in the directory hxd/event_uf.
Unless there is an update specific to the data in question, users should assume that these steps need not be repeated.
In addition to the above calibration steps, the event files in the event_cl have been screened using the following (Table7.2) criteria.
Since PIN is a collimated instrument, it is not possible to obtain background data from the observation data themselves. Instead, the HXD team has developed and run a model of the time-variable particle background, and made the results available.
Before starting on the usage of these files, we should note the following.
HXD/PIN non X-ray background (NXB) files for data processed using
version 2.x are available from the following location:
ftp://legacy.gsfc.nasa.gov/suzaku/data/background/pinnxb_ver2.0/.
This directory is divided into subdirectories by month. For example,
background files for observations carried out in 2006 August can be
found in the subdirectory 2006_08. Within these monthly directories,
individual background files are listed alphabetically. Note these files
are named using the sequence number, e.g.,
ae100005010hxd_pinnxb_cl.evt.gz.
These files should only be used with version 2 processed data, and vice versa. One important change from version 1.x background files is that the new background files contain events from all units of PIN, regardless of whether the bias voltage is 500V or 400V.
Currently, however, the V2 PIN background files for the (i) initial
operation phase of HXD (launch through 2005 Sep 1) and (ii) the period
2006 March 23 - 2006 May 13, during which some GSO parameters were changed
show systematic offset. The workaround is to use V1 background files
available at:
http://www.astro.isas.jaxa.jp/suzaku/analysis/hxd/v1/pinnxb/pinnxb_ver1.2_d/.
> mgtime "ae100005010hxd_0_pinno_cl.evt+2 ae100005010hxd_pinnxb_cl.evt+2" \ common.gti AND
xsel> filter time file common.gti
A pseudo event file filtered with the same GTI as the cleaned event file can be found in the cleaned event file directory in data processed with version 2.x (event_cl/aeNNNNNNNNNhxd_0_pse_cl.evt.gz). This is the most convenient input to hxddtcor, if you are analyzing the cleaned event files. Otherwise, supply the unscreened event file(s) to hxddtcor. The syntax is:
> hxddtcor ae100005010xd_0_pse_cl.evt ae100005010pin.phaNote that the EXPOSURE keyword value will be rewritten.
On the other hand, dead time correction is not necessary for the PIN background files.
Now that spectral files have been extracted and exposure times corrected for the data and the background model, users now need to obtain the appropriate response files. Due to the changes in instrumental settings (bias voltages used on-board and low energy threshold used in processing on the ground), users must now choose PIN response matrices that are appropriate for the epoch of observation, as listed in Table7.3.
In addition, the effective area of the PIN varies within the XIS FOV,
because of the passive fine collimator that restricts the HXD FOV (see
Figure 8.3
http://suzaku.gsfc.nasa.gov/docs/suzaku/prop_tools/suzaku_td/node11.html
of Technical Description). Therefore, users need to select a response
appropriate for the source location. For sources that are extended over
5 arcmin or more, differential vignetting within the source region
must be considered. As a special case, the cosmic background can be
considered flat over many degrees (ignoring the cosmic variance
for the moment), which has to be accounted for using a special response
that averages the fine collimator transmission over a wide area of the sky.
The original PI selected either the XIS nominal pointing (the target at the center of the XIS field of view) or the HXD nominal pointing (the target about 5 arcmin off-axis relative to the XIS, but at a point of maximum throughput of the HXD/PIN). The actual pointing can be determined by inspecting the NOM_PNT keyword in the FITS files. Responses are provided for point sources observed at these positions. In addition, we provide a ``flat'' response appropriate for large, extended source such as the Cosmic X-ray background (CXB).
These files are available from the Suzaku CALDB
http://heasarc.gsfc.nasa.gov/docs/heasarc/caldb/suzaku/
(2007 Sep 15 version or later).
Now users can begin spectral fitting of the HXD/PIN data. In addition to the usual tasks of selecting the appropriate model etc., there are two steps that are needed here.
The background event file does not include the cosmic X-ray
background (CXB). Since the CXB flux is about 5% of the background
for PIN, users need to take it into account after subtracting the
non X-ray background, as follows. One method is to estimate the CXB level by
using the PIN response for the flat emission distribution (see
Table 7.3). They assume that the uniform emission
is from the region of 2 deg
2 deg.
A ``typical'' CXB spectrum is reported as follows, based on the HEAO-1
results (Boldt 1987
http://adsabs.harvard.edu/cgi-bin/nph-bib_query?bibcode=1987IAUS..124..611B
Since the flat PIN response files are for 4 square degree field of view,
we need to multiply this result by the appropriate ratio (4 deg
/1
sr). Since 1 sr = 3283 deg
, this becomes
Converting this into values appropriate for xspec, which assumes the power-law is normalized at 1 keV and is in photons, not ergs, we obtain:
Then we can simulate the CXB contribution to the PIN background with xspec, using
In our case, we take E
at the lower limit of the model (E=0.0001 keV) and fix it there. E
is 40 keV.
The input to XSPEC looks like:
XSPEC12>model po*highecut
Input parameter value, delta, min, bot, top, and max values for ...
1 0.01 -3 -2 9 10
1:powerlaw:PhoIndex>1.29
1 0.01 0 0 1e+24 1e+24
2:powerlaw:norm>9.412e-03
10 0.01 0.0001 0.01 1e+06 1e+06
3:highecut:cutoffE>0.0001
15 0.01 0.0001 0.01 1e+06 1e+06
4:highecut:foldE>40
========================================================================
Model powerlaw<1>*highecut<2> Source No.: 1 Active/Off
Model Model Component Parameter Unit Value
par comp
1 1 powerlaw PhoIndex 1.29000 +/- 0.0
2 1 powerlaw norm 9.41200E-03 +/- 0.0
3 2 highecut cutoffE keV 1.00000E-04 +/- 0.0
4 2 highecut foldE keV 40.0000 +/- 0.0
________________________________________________________________________
XSPEC12>
Once this has been set up, users can use the fakeit command using the pinflat response matrix.
NOTE 1
This is the model of the CXB to be convolved with the ``flat'' response.
To fit the observed (
NXB) spectrum with a model for the source
and the model for the CXB, a re-scaled version (using the ratio of
XIS nominal or HXD nominal response vs. the flat response) of the
model must be used. Although the effects of the CXB should be
investigated independently for each observation, one can reproduce
the observed counts from the diffuse CXB when using the HXD nominal
position response matrix
ae_hxd_pinhxnom_20060814.rsp by using 8
10
as a normalization factor (instead of 9.412
10
) in the previous model.
NOTE 2
For the XIS nominal position, the amplitude of the power law component
should be increased by 10%
to 8.8
10
, since the CXB is to first order position-independent while the HXD response to a point source at the XIS nominal position is reduced by 10%.
NOTE 3
Alternatively, the NXB background file and the simulated CXB PHA file
can be added using mathpha, making sure that the EXPOSURE keyword
should be the common value (and not the sum of both exposure times).
Please note that the level of CXB and its point-to-point scatter are an active research topic. Other estimates of CXB spectrum can be converted to xspec models following the same steps as above.
The accuracy of the background model is expected to reach as good as 5-10 % of the average background. The background modeling, however, is still under development, and the evaluation of the systematic errors has not been completed yet.
Users are strongly recommended to verify the reliability of the background model:
As of early January, 2008, the V2 GSO NXB files have just been released by the HXD team. Instructions will be posted on the GOF web site and included in the next version of the ABC guide.
The users can also generate background-subtracted PIN light curves using these background files. In this process, users need to take the dead time into account, using the pseudo event files. Since pseudo events are generated by the HXD analog electronics every 4 seconds for each of 16 units, we expect 16/4 = 4.0 ct/s in the absence of dead time. Therefore, the live time is given by the measured pseudo event rate during the time bin divided by 4.
The following method for correcting for bin-by-bin dead time is recommended only for bins longer than 128 s, to ensure that the dead time estimate is statistically accurate enough.
> fselect infile=ae123456789hxd_0_pse_cl.evt+1 outfile=pseudo_pure.evt \
expr ="GRADE_HITPAT<=1&&GRADE_QUALTY==0" histkw=yes
Extract lightcurve from this ``pure'' pseudo event file, while applying the merged GTI file, and save it as pin_pseudo.lc, for example.
> fcalc pin_pseudo.lc+1 pin_pseudo_div4.lc DTCOR "RATE/4" > faddcol pin_event.lc+1 pin_pseudo_div4.lc+1 DTCOR > fcalc pin_event.lc+1 pin_event_dtcor.lc RATE "RATE/DTCOR" > fcalc pin_event_dtcor.lc+1 pin_event_dtcor.lc ERROR "ERROR/DTCOR" clobber=yes
The above steps were: calculate the live time in the DTCOR column of a temporary file, pin_pseudo_div4.lc; copy that column into the light curve file, pin_event.lc; create a new light curve file pin_event_dtcor.lc in which the RATE column is dead time corrected; dead time-correct the ERROR column in that file.
> fcalc pin_bgd.lc+1 pin_bgd_div10.lc RATE "RATE/10" > fcalc pin_bgd_div10.lc+1 pin_bgd_div10.lc ERROR "ERROR/10" clobber=yes
Note that, in addition to this light curve, the observed light curve contains the cosmic X-ray background component, which can be treated as a constant.
The remainder of this chapter describes the details of the initial processing for the HXD. These steps, already performed in the processing pipeline, can be repeated by users if necessary.
For the HXD, the standard pipeline processing starts with an unfiltered file which contains events from both the GSO and PIN detector. This file contains ``wel" in its filename and the DETNAM keyword has the value ``WELL". We have described the processing steps (in the recommended order) below. We will describe first the processing for the PIN and GSO, and address later the processing for the WAM. Please note that users who only want a quick look at their data should not have to run these routines again but could use the files provided in the products directory
Users are also advised to create a second directory in which the newly processed files will be saved as some of the routines would otherwise just overwrite the existing files. To do so please type:
unix% mkdir event_cl2/; cd event_cl2/ unix% ln -s ../event_uf/aeNNNhxd_M_wel_uf.evt.gz . unix% ln -s ../hk/aeNNNhxd_0.hk.gz . unix% ln -s ../../auxil/aeNNN.tim.gz .
Also please make sure that your CALDB directory is set-up properly. CALDB files are needed for the processing.
hxdtime input_name=aeNNNhxd_M_wel_uf.evt create_name=aeNNNhxd_M_wel_uf2.evt \ leapsec_name=leapsec.fits hklist_name=aeNNNhxd_0.hk tim_filename=aeNNN.timwhere
Users may wish to confirm the following hidden parameters
read_iomode=create (a separate output file will be created)
time_change=yes (TIME column will be updated in principle)
grade_change=n (change GRADE_XX or not, no update in principle)
pi_pmt_change=n (change PI_SLOW, PI_FAST or not, no update in principle)
pi_pin_change=n (change PI_PIN or not, no update in principle)
gtimode=y (read and apply GTI extension or not)
gti_time=S_TIME (meaning of TIME in GTI, row level information)
time_convert_mode=4 (aste_ti2time function is used in calculation)
use_pwh_mode=n (use HXD_WEL_PWH extension in HXD HK FITS or not; always no)
num_event=-1 (control value for ANL routine; read all event if -1)
event_freq=10000 (control value for ANL routine; frequency of messages)
anl_verbose=-1 (control value for ANL routine; verbose level)
anl_profile=yes (control value for ANL routine; dump profile or not)
After filling in the corrected event time, the next step is to adjust the detector gain for both HXD detectors. In Version 2 processing, the gain history files are generated by the HXD team and provided to the CALDB. We have therefore discontinued the documentation regarding the generation of the HXD gain history.
Once the gain drift has been measured, the (time) invariant event pulse-heights (PI) values can be determined. For the HXD, hxdpi calculates the HXD PI columns (PIN[0-3]_PI, SLOW_PI, FAST_PI) based on the relevant _PHA data, the gain history and other calibration data, such as non-linearity in the analog-to-digital conversion. The Gd edge effect is not included in SLOW/FAST_PI. The effect is included in the response matrix table for the GSO.
NOTE: This is the task that takes in the Gain History Files and use them to correct the PI values. Users should obtain the most up-to-date gain history table (for GSO) and the gain history file (for PIN) which are frequently updated by the team in CALDB.
The correct syntax to run the hxdpi task is:
unix% cat > hk_file.list << EOF ../hk/aeNNNNNNNNNhxd_0.hk.gz ../../auxil/aeNNNNNNNNN.ehk.gz EOF unix% hxdpi input_name=aeNNNhxd_M_wel_uf2.evt\ create_name=hxd_picorr_evt.fits hklist_name=@hk_list.dat\ hxd_gsoght_fname=CALDB hxd_gsolin_fname=CALDB \ hxd_pinghf_fname=CALDB hxd_pinlin_fname=CALDB
where
input_name is the HXD FITS file input name
create_name is the output name (see below)
hklist_name should be used to pass the HXD HK file name and
the extended hk file name using the @list syntax
hxd_gsoght_fname is the GSO gain history table from CALDB
hxd_gsolin_fname is the name of CALDB file containing the GSO integrated non-linearity of ADC
hxd_pinghf_fname is the PIN gain history file from CALDB
hxd_pinlin_fname is the name of CALDB file containing the PIN integrated non-linearity of ADC
Warnings 1) For hxdpi, the hidden parameter read_iomode is set to overwrite by default, so the relevant columns of the input file will be modified. Optionally, select read_iomode=create and specify an output file name using the hidden parameter create_name. The others hidden parameters for this routine are similar to that of hxdtime.
2) In the above, please note that if the CALDB Gain History File does not include the observation date of the event fits file, the tool will run silently without updating the file content. Users are urged to check that their observation date is covered by the CALDB file.
3) The hidden parameter event_freq is by default set to 10000. This is the event print-out frequency. Users may want to increase the value of this parameters to avoid too long screen outputs. Look at the number of events in your initial event file to estimate a reasonable value for that parameter.
The command line would look like:
hxdpi input_name=ae401100010hxd_1_wel_uf2.evt read_iomode=create create_name=ae401100010hxd_1_wel_uf2-hxdpi.evt hklist_name=@hk_file.list hxd_gsoght_fname=CALDB hxd_gsolin_fname=CALDB hxd_pinghf_fhame=CALDB hxd_pinlin_fname=CALDB event_freq=500000
HXD event files have 5 grade columns filled by the hxdgrade routine. The first column is simply GRADE_QUALTY which stores the data quality. All events with a GRADE_QUALTY flag not equal to 0 should be ignored. The two next columns indicate the origin of the event. The column GRADE_PMTTRG is set to 1 for any PMT triggered event while the column GRADE_PINTRG is set for 1 for any PIN triggered event. Column GRADE_PSDSEL gives the GSO likelihood in the Slow Fast diagram while the fifth column GRADE_HITPAT gives the hit pattern grade.
hxdgrade input_name=aeNNNhxd_M_wel_uf2.evt \ hxdgrade_psdsel_fname=CALDB \ hxdgrade_pinthres_fname=CALDBwhere
Warning Just as for hxdpi, hxdgrade has an hidden parameter read_iomode set to overwrite by default, so the relevant columns of the input file are modified. User may want to put the read_iomode=create and specify an output file name using the flag create_name.
Up until this step the file contain both GSO and PIN data (WELL data) and have not been separated yet. One can first do a series of cleaning procedures before separating the PIN and the GSO data.
SAA_HXD==0 && T_SAA_HXD>500 && ELV>5 && ANG_DIST<1.5 && HXD_DTRATE<3 && \ AOCU_HK_CNT3_NML_P==1 && COR>8 && \ HXD_HV_W0_CAL>700 && HXD_HV_W1_CAL>700 && HXD_HV_W2_CAL>700 &&\ HXD_HV_W3_CAL>700 && HXD_HV_T0_CAL>700 && HXD_HV_T1_CAL>700 &&\ HXD_HV_T2_CAL>700 && HXD_HV_T3_CAL>700where
In particular, it is possible to create your own Night Earth HXD data by changing ELV
5 with appropriate expressions involving ELV, DYE_ELV (elevation above the Sunlit limb of the Earth), and
NTE_ELV (elevation above the night Earth).
within xselect the input would look like:
hakatan-91-event_cl2: xselect
** XSELECT V2.4 **
> Enter session name >[xsel] abc-guide
Setting plot device to /NULL
abc-guide:SUZAKU > read events
> Enter the Event file dir >[./]
> Enter Event file list >[] ae401100010hxd_1_wel_uf2-hxdgrade.evt
Notes: XSELECT set up for SUZAKU
Time keyword is TIME in units of s
Default timing binsize = 16.000
Setting...
Image keywords = UNITID UNITID with binning = 1
WMAP keywords = UNITID PIN_ID with binning = 1
Energy keyword = PI_PIN with binning = 1
Getting Min and Max for Energy Column...
Got min and max for PI_PIN: 0 255
could not get minimum time resolution of the data read
MJDREF = 5.1544000742870E+04 with TIMESYS = TT
Number of files read in: 1
******************** Observation Catalogue ********************
Data Directory is:
/Volumes/Maison/Directories/Suzaku/MySuz/1E1841-045/v1.2.2.3/401100010/hxd/event_cl2/
HK Directory is:
/Volumes/Maison/Directories/Suzaku/MySuz/1E1841-045/v1.2.2.3/401100010/hxd/event_cl2/
OBJECT DETNAM DATE-OBS DATE-END
1 1E 1841-045 WELL 2006-04-19T 2006-04-22T
abc-guide:SUZAKU-HXD-WELL_PIN >
abc-guide:SUZAKU-HXD-WELL_PIN > filter mkf
> Boolean expression for filter file selection >[ ] SAA_HXD==0 && T_SAA_HXD>500 && ELV>5 &&
ANG_DIST<1.5 && HXD_DTRATE<3 && AOCU_HK_CNT3_NML_P==1 && COR>8
&&HXD_HV_W0_CAL>700 && HXD_HV_W1_CAL>700 && HXD_HV_W2_CAL>700 &&
HXD_HV_W3_CAL>700 && HXD_HV_T0_CAL>700 && HXD_HV_T1_CAL>700 &&
HXD_HV_T2_CAL>700 && HXD_HV_T3_CAL>700
> Enter the filter file directory >[./] ../../auxil
PREFR keyword found in header, using prefr = 0.0
POSTFR keyword found in header, using postfr = 1.0
abc-guide:SUZAKU-HXD-WELL_PIN >
NOTE For data taken between March 14th 2006 to May 13th 2006, the GTI used in all the processing versions before v1.3 do not accurately represent the contamination of the data. The HXD team recommends users to use the GTI intervals they have generated using the processing v1.3 and made available for affected users. For more information, please access http://www.astro.isas.jaxa.jp/suzaku/analysis/hxd/hxdgti/.
At this point, both GSO and PIN are still in the file (even if xselect is reading is as WELL_PIN and this is the time to separate the two detectors. To do this, we will select on the column called DET_TYPE. DET_TYPE==1 selects PIN events while DET_TYPE==0 selects only GSO events.
To select the events to be used further down in the analysis, xselect input should read:
abc-guide:SUZAKU-HXD-WELL_PIN > filter column > Enter filter on column(s) in the event file >[] DET_TYPE==1 abc-guide:SUZAKU-HXD-WELL_PIN > extract events
for spectral analysis, the HXD team may provide standard GSO responses which are valid only for some limited GRADE values; only events which have such GRADE values should be selected. On the other hand, for light curve analysis, the GRADE selection criterion may be loosened.
NOTE 1 As in the case of the PIN, a couple of keywords need to be modified in the final GSO event file created. The DETNAM keyword should be changed to WELL_GSO and the TIMEDEL keyword should be created - again users should check the value in the event_cl directory version).
The HXD Wideband All-Sky Monitor (WAM) utilizes the BGO anti-coincidence detectors to create an all-sky monitor. Although from the same detector, these data are processed independently. There should be no need for the user to reprocess the data from the WAM (the HXD team will analyze the WAM data and make the results public) but we have included the description of the processing pipeline for completeness.
hxdwamtime input_name=aeNNN_hxd_wam.fff create_name=aeNNN_hxd_wam.uff \ hklist_name=@hk_list.dat leapsec_name=leapsec.fits tim_filename=aeNNN.timwhere
This routine produces a gain history file for the WAM FITS, where gain-correction factor is given as a function of time. It is determined by fitting the data of the 511 keV line, much as the gain histogram is calculated for the HXD GSO from the Gd line. The fitting results are recorded in a log file. The gain history file will be used as input for hxdwampi.
hxdmkwamgainhist input_name=aeNNN_hxd_wam.uff trn_fitlog_name=aeNNN_hxd_wam_fit.log \ trn_gainhist_name=aeNNN_hxd_wamghf.fits leapsec_name=leapsec.fitswhere
The hxdwampi routine calculates the time-invariant pulse-height value for each HXD WAM event, which is stored in the TRN_PI column. By default, the input file is used as the output, although this can be modified by setting the create_name parameter. The gain drift is not corrected in the current hxdwampi, but instead is considered in the response matrix. The task expands the reduced PH table via HXD-DE on-board process. The setting is identified by the column ``TRN_TBL_ID", which is defined in the caldb FITS file named ``ae_hxd_wampht_YYYYMMDD.fits" (currently ``ae_hxd_wampht_20050916.fits").
hxdwampi input_name = aeNNN_hxd_wam.uff hklist_name = @hk_list.dat\ trn_bintbl_name = CALDB/ae_hxd_wampht_20050916.fits \ trn_gainhist_name = aeNNN_hxd_wamghf.fitswhere
This routine calculates the event grade for a WAM event, much as the hxdgrade tool does for a standard HXD event. As with the hxdwampi tool, by default the input event file is also used as the output file, simply modifying the QUALITY column.
hxdwamgrade input_name=aeNNN_hxd_wam.uff hklist_name=aeNNNhxd_0.hkwhere
hxdbsttime input_name=aeNNN_hxd_bst_0.fff create_name=aeNNN_hxd_bst_0.uff\ hklist_name=@hk_list.dat leapsec_name=leapsec.fits tim_filename=aeNNN.timwhere