この文書は,XRISM Core-to-Core Science Workshop 2022 (2022.10.19-21 @埼玉大学)の中で行うheasimの実習に使う目的で作成されたものである。 質問などがある場合は水本岬希 (mizumoto.misaki.n68あっとkyoto-u.jp) まで 参考文書 1. XRISM simulations using heasim quick guide for the XRISM Science Team https://heasarc.gsfc.nasa.gov/FTP/xrism/prelaunch/simulation/sim3/xrism_sim_quickguide_20220607.pdf 2. SIMULATION SUPPORTING SOFTWARE FOR HITOMI/XARM USER GUIDE https://heasarc.gsfc.nasa.gov/FTP/xrism/prelaunch/simulation/sim3/heasim_20170825.pdf 3. HEASOFT help file for HEASIM https://heasarc.gsfc.nasa.gov/lheasoft/ftools/headas/heasim.html (0) 準備 Build5をインストールしてPATHを通す。 このときに, -------------- export HEADAS="/Users/misaki/local/xray/heasoft/XRISM_15Aug2022_Build5/x86_64-apple-darwin21.6.0" . ${HEADAS}/headas-init.sh -------------- などとしておくと,後で変数が使えるので楽。実際のPATHは各自の環境によって変わることに注意。 上の例は Bash系列 (bash, sh, zsh) を使っている人の場合である。 C-shell (csh, tcsh) 系列の人はexportの代わりにsetenvを使う。 -------------- setenv HEADAS /Users/misaki/local/xray/heasoft/XRISM_15Aug2022_Build5/x86_64-apple-darwin21.6.0 -------------- なお,自分のシェル環境は -------------- echo $SHELL -------------- とすれば分かる。 (1) 必要なファイルのインストール https://heasarc.gsfc.nasa.gov/FTP/xrism/prelaunch/simulation/sim3/ から heasimfiles_20201012.tar.gz をダウンロードし,適当なディレクトリで解凍する。41MBあるので注意。 たとえば私の場合は -------------- mkdir -p /Users/misaki/local/xray/XRISM_simulation/ wget https://heasarc.gsfc.nasa.gov/FTP/xrism/prelaunch/simulation/sim3/heasimfiles_20201012.tar.gz tar -zxvf heasimfiles_20201012.tar.gz -------------- としている。解凍後は156MBあるので注意。 -------------- export HEASIM_SUPPORT=/Users/misaki/local/xray/XRISM_simulation/heasimfiles -------------- として,ファイルの場所を指定しておく。 (2) モデルスペクトルの作成 今回はPerseus clusterの観測を模擬してみる。 http://www.kusastro.kyoto-u.ac.jp/~mizumoto/xrismc2c/perseus_brtptsrc_mod.xcm http://www.kusastro.kyoto-u.ac.jp/~mizumoto/xrismc2c/perseus_icm_abs_mod.xcm にXSPECで読むことができるスペクトルモデルを置いているので,各自ダウンロードするかコピーペーストして手元に置く。 xspecに入り, -------------- @perseus_icm_abs_mod.xcm data none energ 0.1 27.1 27001 cpd /xs setplot comm wdata perseus_icm_abs_mod.qdp plot model -------------- と実行する。終わったら -------------- exit -------------- で終了 こちらはPerseus ClusterのICM成分のモデル。 (注意:あくまでもシミュレーション用の簡易モデルであることに注意。) 続いて -------------- @perseus_brtptsrc_mod.xcm data none energ 0.1 27.1 27001 cpd /xs setplot comm wdata perseus_brtptsrc_mod.qdp plot model -------------- と実行する。終わったら -------------- exit -------------- で終了。 こちらはAGN成分のモデル。 ここまでで,スペクトルモデルを書き下したqdpファイルができている。 (3) heasimの下準備 perseus_betaicm.dat というASCIIファイルに -------------- 49.95,41.51,0.0,user,0.,0.,0.-0.,perseus_icm_abs_mod.qdp,2,2,extmod(beta,0.53,1.26,1.0,0.0,0.0,5.7) 49.95,41.51,0.0,user,0.,0.,0.-0.,perseus_brtptsrc_mod.qdp,2,2 -------------- という2行を書く。説明はこの文章の最上部のPDFファイルを参照。 ICM成分は空間的に広がっており,AGN成分は点源として存在していると仮定。 heasimを走らせる前に -------------- echo $HEADAS echo $HEASIM_SUPPORT -------------- を実行し,それぞれの変数に適切なPATHが設定されていることを確認する。 (4) heasimの実行 -------------- heasim mission=hitomi instrume=sxs rapoint=49.95 decpoint=41.51 roll=0.00 exposure=200000. \ insrcdeffile=perseus_betaicm.dat outfile=perseus_betaicm.fits \ psffile=$HEASIM_SUPPORT/xrism/resolve/psf/eef_from_sxs_psfimage_20140618.fits \ vigfile=$HEASIM_SUPPORT/xrism/resolve/vignette/SXT_VIG_140618.txt \ rmffile=$HEASIM_SUPPORT/xrism/resolve/response/resolve_h5ev_2019a.rmf \ arffile=$HEASIM_SUPPORT/xrism/resolve/response/resolve_pnt_heasim_noGV_20190701.arf \ intbackfile=$HEASIM_SUPPORT/xrism/resolve/background/resolve_h5ev_2019a_rslnxb.pha \ flagsubex=no seed=1234567890 clobber=yes dtpileup=0.002 mdbfile=$HEADAS/refdata/heasim.mdb -------------- これを実行すると,perseus_betaicm.fitsが作られる。中身を確認してよう。 -------------- fv perseus_betaicm.fits -------------- をして,1 EVENTS という列のAllをクリック (あるいは慣れている人はastropyとかで見ても良い) fitsファイルが5列から構成されていて,順にTIME, X, Y, PI, PILEUPとなっている。 PIがエネルギー(eV単位)に相当する。 -------------- ds9 perseus_betaicm.fits -------------- とするとイメージを見ることができる。 (5) sxsbranchの実行 (4)の時点では,branching ratioは何も考慮されていない。branching ratioを計算する。 -------------- sxsbranch infile=perseus_betaicm.fits filetype=sim outfile=perseus_betaicm_sxsbranch.out pixfrac=$HEASIM_SUPPORT/xrism/resolve/sxsbranch/pixfrac.txt pixmask=$HEASIM_SUPPORT/xrism/resolve/sxsbranch/pixmask.txt ctelpixfile=$HEASIM_SUPPORT/xrism/resolve/sxsbranch/pixmap.fits enrgthr=130.5 debin=1.0 clobber=yes -------------- これにより, perseus_betaicm.fits.out perseus_betaicm_sxsbranch.out という二つのfitsファイルが作られる。 (6) スペクトルの作成 perseus_betaicm.fits.outは,perseus_betaicm.fitsにPIXELとITYPEが加わったもの。 ITYPEは0:Hp, 1:Mp, 2:Ms, 3:Lp, 4:Lsを意味する。 -------------- xselect -------------- を実行したのち,以下を順次実行する。 -------------- xsel read events perseus_betaicm.fits.out ./ yes -------------- とすると,XSELECTに今回作ったイベントファイルが読み込まれる。 たとえば -------------- filter column "PIXEL=27:35" filter GRADE "0:0" -------------- とすると,PIXEL番号27から35だけを使って,かつHpだけを使うことができる。 もしMpも使いたければ GRADE "0:1" とすればよい。 続いてスペクトルの抽出と保存を行う -------------- extract spectrum save spectrum perseus_betaicm_HPsub.pi -------------- (7) XSPECでスペクトルフィット Working directoryにレスポンスファイルを持ってきておく。 -------------- ln -sf $HEASIM_SUPPORT/xrism/resolve/response/resolve_h5ev_2019a.rmf . ln -sf $HEASIM_SUPPORT/xrism/resolve/response/resolve_bet_spec_noGV_20190611.arf . -------------- XSPECに慣れている人は,xspecに入って -------------- data 1:1 perseus_betaicm_HPsub.pi response 1:1 resolve_h5ev_2019a.rmf arf 1:1 resolve_bet_spec_noGV_20190611.arf ignore 1:**-0.3,15.0-** -------------- とした上で,モデルフィットをやってみてください。 慣れていない人は http://www.kusastro.kyoto-u.ac.jp/~mizumoto/xrismc2c/readdata.xcm http://www.kusastro.kyoto-u.ac.jp/~mizumoto/xrismc2c/fittingmodel.xcm をダウンロードしてきて -------------- xspec -------------- とした上で,そこに -------------- @readdata @fittingmodel renorm query yes fit cpd /xs plot data ratio -------------- をコピーして貼り付けてください。 -------------- ipl win all log x off r 6.5 6.6 0 0.8 -------------- とすると,鉄のtripletのところを拡大して見ることができます。 (発展課題) X-ray binary GX 13+1 のシミュレーションをしてみよう スペクトルモデルは http://www.kusastro.kyoto-u.ac.jp/~mizumoto/xrismc2c/GX13p1model.xcm にある。 heasimの際に,arffileを $HEASIM_SUPPORT/xrism/resolve/response/resolve_pnt_heasim_ND_20190701.arf とすると,1/4 ND filterを使うという設定をすることができる。 この天体の場合はbranching ratioの影響が大きく効くはずである。