Assigned Member (担当者)2006-09-13 N. IsobeName and Institute (質問者/機関)穴吹 直久 (大阪大学, PD)Question (質問)rev 1.1 の PIN データをファーストステップガイドにしたがって解析 しようとしたところ、Dead time 補正のところで問題に突き当たりました。 ファーストステップガイドの 7 steps によると、補正のために unfiltered event file を 1 つ指定するように書かれていますが、私の元に配られた データでは*hxd_1_wel_uf.evt.gz, *hxd_2_wel_uf.evt.gz と 2つありました。 「http://heasarc.gsfc.nasa.gov/docs/suzaku/analysis/dtcor.html」に NOTE: In some cases, there are a few event files (also the unfiltered event files) for a single observation. You should merge them as the same way you do for your on-source data extraction (for example, using xselect) before applying this tool. とあったので、xselect を用いて event を 1 つに merge しようとしたのですが、 合計ファイルサイズが大き過ぎたため、時間がかかったあげく、 *** malloc: vm_allocate(size=2427756544) failed (error code=3) *** malloc[1707]: error: Can't allocate region fmemsort on event file failed - possibly due to lack of memory you may want to try using fsort on the output event file or not if you do not require the events to be time-ordered と言われ、merge できませんでした。 pseudo イベントだけを抜き出すように filtering すれば、ファイルサイズ が小さくなるので merge できそうですが、このやり方はそもそも正しいの でしょうか? unfiltered event file が 2つ以上ある場合の、正しい 7 steps を教えてください。 よろしくお願いします。 Answer from(回答の文責)寺田 (HXD team)Answer (答え)hxddtcor の入力 Unscreened FITS を複数対応にする、という改修項目は、 version 1.2.2.3 の時に挙がっていたものの、それ以外のコードのデバックに 必要なマンパワー等から、version 2.0 以降に持ち越しました。ですので、 HEADAS 6.1.1 に含まれる hxddtcor に入力する UFF はひとつまでです。そもそも UFF が複数にわかれているのは、特定のOSに存在する ファイルサイ ズ制限によるものですので、ひとつにまとめようとするとどうしても無理が生 じてしまいます。xselect で merge する際にこけるのは、大量にメモリ領域 を確保しようとして失敗しているためでしょう。 さて dead time correction に対する対処についてです。HXD のデッドタイム 補正の仕組みは、first step manual の§4.3.5 にかいてあるとおり、軌道上 で定期的(0.25 Hz)に発生させた Pseudo event の数を数えて real time とす る、というものです。ですので、目的とする PHA file に対し、 *hxd_1_wel_uf.evt.gz, *hxd_2_wel_uf.evt.gz のそれぞれで hxddtcor をかけて、それぞれの UFF における read time を 計算させ、その結果の Exposure を足して fparkey で PHA に書き戻すとよい でしょう。(あくまで ver 2.0 までの対処です) 具体的には下記です。 unix% cp pin_cl.pha pin_cl_dtcor.pha unix% hxddtcor event_fname="aeYYYYMMDDhxd_1_wel_uf.evt" \ pi_fname="pin_cl_dtcor.pha" save_pseudo=no chatter=2 unix % fdump pin_cl_dtcor.pha ...... HISTORY ------ hxddtcor version 1.2 ------ HISTORY event file = aeYYYYMMDDhxd_1_wel_uf.evt HISTORY save pseudo = no HISTORY EXPOSURE changed from 1000.0 to 850.0 → つまり PHA を作ったGTI のうち、aeYYYYMMDDhxd_1_wel_uf.evt がカバー する範囲の Real time は 850.0 sec であった unix% hxddtcor event_fname="aeYYYYMMDDhxd_2_wel_uf.evt" \ pi_fname="pin_cl_dtcor.pha" save_pseudo=no chatter=2 unix % fdump pin_cl_dtcor.pha ...... HISTORY ------ hxddtcor version 1.2 ------ HISTORY event file = aeYYYYMMDDhxd_1_wel_uf.evt HISTORY save pseudo = no HISTORY EXPOSURE changed from 850.0 to 100.0 → つまり PHA を作ったGTI のうち、aeYYYYMMDDhxd_2_wel_uf.evt がカバー する範囲の Real time は 100.0 sec であった とすると、観測全体では、850.0 + 100.0 = 950.0 sec あったことになるので、 unix % fparkey value=950.0 keyword="EXPOSURE" \ fitsfile="pin_cl_dtcor.pha+0" unix % fparkey value=950.0 keyword="EXPOSURE" \ fitsfile="pin_cl_dtcor.pha+1" unix % fparkey value=950.0 keyword="EXPOSURE" \ fitsfile="pin_cl_dtcor.pha+2" として Exposure を手で変更する。 SWG 向けの hxd_deadtime_cor.pl でも同様です。 Status (詳細なステータス)2006-09-13 Accepted2006-09-13 Done ![]() ![]() ![]() ![]() ![]() |