アットウィキロゴ

CASAにNOSTAR経由のFITSを読ませる方法

CASA(v4.6まで確認)ではNOSTARで生成されたFITSファイルを読むことができない.
精確には、読み込むためには速度軸+静止周波数のセットが必要らしいが静止周波数のデータが無いことが原因。
[追記2016/05/23]
それ以外にも複数のFITSキーワードがNOSTAR出力FITSヘッダーにはないので、ついでに入れておくとよい。
具体的には、ビーム情報(BMAJ, BMIN, BPA)、周波数軸単位CUNIT3。
あと、BLANKは整数が最近のFITSの標準なので、どうせならBLANKの値を-1とか-99999のような値に書き換えておくのがベターっぽい。

回りくどいが一応できるようになったのでメモ。
まずmiriadをインストールしてあること。
例えば、天文台のデータセンターアカウントがあればそこで利用可能。
データセンターではいくつかの望遠鏡に合わせたmiriadが用意されている.
今回はATCAのバージョンで試して成功した。
もちろんヘッダー情報を書き換えられるなら、
他のツール(python+astropyなど)使いやすいものを使えばよい。
最近はもっぱらpython派なのでastropy.io.fitsで読み込んでheaderをそのままいじくることが増えてます。

ここでは、
infile.fits:NOSTARから出力したFITS
nostar:上記FITSをmiriadに読み込んだ時の保存名(ディレクトリ)
out.fits:miriad経由で再出力したFITS
と書くと...

1.FITSファイルをmiriadに読み込む
fits in=infile.fits op=xyin out=nostar

2.静止周波数を新たに設定
puthd in=nostar/restfreq value=115.2710 type=double
restfreq valueは単位がGHz

(additional)
周波数軸をfreqで出力した場合、
puthd in=nostar/cunit3 value=Hz type=ascii

周波数軸をvelで出力した場合、
puthd in=nostar/cunit3 value=m s-1 type=ascii

ビーム情報
bmaj:ビーム長軸(arcsec),bmin:ビーム短軸(arcsec),
bpa:ビームのポジションアングル(degree)
例えば、ビームサイズが15秒のときは、15arcsec=4.1666e-3(=15/3600)degreeなので
puthd in=nostar/bmaj value=4.1666e-3 type=double
puthd in=nostar/bmin value=4.1666e-3 type=double
puthd in=nostar/bpa value=0.0 type=double
となる。
ここでvalue=15.0/3600.0のような指定はできない。

3.設定できたのを確認したのち再度FITSファイルを出力
fits in=nostar op=xyout out=out.fits

のステップで出来るはず.
これをCASAに読み込む.

casa
CASA <2> importfits(fitsimage='out.fits',imagename='hoge.im')
とかすればCASA形式(イメージ形式)で読み込まれる.

タグ:

+ タグ編集
  • タグ:
最終更新:2018年01月05日 21:19