2013年1月にMagellan/MEGACAMデータの処理を行った際のメモ。
処理を行うために必要なツールが多岐に渡り中々面倒くさかったので、準備だ
けのメモを最初に。使用pcは、MacPro(mountain lion OS X 10.8.2)@CfA/OIR
!!なお中途半端にCfAの内部コンピュータの環境を利用しているため、今の所自分用の
メモ。!!
☆参考:
Matt AshbyによるMEGACAM data reduction
cookbook
CfA MEGACAM Pipeline Wiki
大昔のMegared ver 2(1998)の詳細手引き
1,Local Setting(自分のパソコンで作業するためのセッティン
グ)
☆十分な容量の確保
Megacamは2binモードでも1024×2304のCCD36枚からなる(1pix=0.16'')。そのた
めデータ容量は一枚で約300MBもあり、データ処理を始める際に200~300GBくら
いの容量の余裕があった方が良い。
装置仕様 => :Las Campanas Observatory/Magellan/MEGACAM
Observer Manual
☆FPACK/FUNPACK (実質CFITSIO)
fitsの圧縮・解凍によくfpack/funpackが用いられているのでそれらをインス
トール。個別に入手する事もできるがCFITSIOの中に含まれているので、
CFITSIOをインストールしてしまう事にする。
◎CFITSIOパッケージの入手及び展開
http://heasarc.gsfc.nasa.gov/fitsio/fitsio.html
から最新版のLinuxソースコード(Unix.tar file)をダウンロードし、適当な場
所(/usr/local/src/など)で展開する。
・ダウンロード
上記サイトから適当な場所(自分は~/Download/)にソースコードをダウンロー
ドする
・展開場所に移動(なければ作る)
% cd /usr/local/src/
・展開
% sudo tar xvfz cfitsio3310.tar.gz
◎インストール
cfitsio/というディレクトリができてるはずなので、そこに移動する。その中
にREADMEもあり
% cd cfitsio/
・configure & make
% sudo ./configure
% sudo make
% sudo make install (<=やらなくてもOKぽい)
◎fpack / funpack 実行ファイルの移動
上記まででcfitsioのインストールは済んでいるが、実行ファイルを/bin/のような.zshrcでパスを通してある適切な場所においた方がいい。(http://heasarc.gsfc.nasa.gov/fitsio/fpack/)
% sudo cp fpack /bin/
% sudo cp funpack /bin/
☆MSCREDパッケージ(in IRAF)
Multi Extension fitsを処理するために外部パッケージであるMSCREDを入れる。
最新のirafでは非常に簡単
参考:Macへのirafインストー
ルメモの一番下
・extern/ディレクトリに行く
自分の場合は、/usr/local/iraf/iraf/extern/
% cd /usr/local/iraf/iraf/extern/
・初めて外部パッケージをインストールする場合は、configure
% sudo ./configure
・mscredをインストール
% sudo make mscred
☆MEGAREDパッケージ(in IRAF/端末)
MEGACAMに特化したリダクション用パッケージを入手。
※ただしMac環境だと動いたり動かなかったり・・・
◎パッケージをダウンロード
Brian Mcleodサイトへのリンクから
一応Mac用と思しきmegared.2006-05-01.Darwin-ppc.tar.gzというのもあるが、
古いためか足りないタスクがあった(zptmatch)ので、最新のLinux版の
megared.2008-10-28.Linux-x86_64.tar.gzをダウンロード。
◎外部パッケージとしてインストール
・externディレクトリで展開
% cd /usr/local/iraf/iraf/extern/
% sudo mv ~/Downloads/megared.2008-10-28.Linux-x86_64.tar.gz .
% sudo tar xvfz megared.2008-10-28.Linux-x86_64.tar.gz
・.zshrcやlogin.clにpathを通す
(以下、Megared/内のREADMEに従う)
% emacs ~/.zshrc
以下のような記述を追加
# Megared
setenv MEGARED /usr/local/iraf/iraf/extern/Megared/
export PATH=/usr/local/iraf/iraf/extern/Megared:$PATH
export PATH=/usr/local/iraf/iraf/extern/Megared/bin:$PATH
% emacs ~/login.cl
login.clにも以下のような記述を追加(ただし必ずkeepの前に書く事)
# Megared setting
reset megacam = /usr/local/iraf/iraf/extern/Megared/
task $megacam.pkg = megacam$megacam.cl
keep
◎確認
・新しく開いた端末上でzptmatchというコマンドがあるか確認
% which zptmatch
/usr/local/iraf/iraf/extern/Megared/zptmatch
「そんなタスク無い」と言われたら何かが間違えてる。
・irafでmegacamパッケージを読み込めるか確認
% cl
vocl> mscred
mscred> megacam
◎フィルターセットのコピー
作業ディレクトリにフィルター情報ファイルをコピー
% cp /usr/local/iraf/iraf/extern/Megared/subsets ./
☆Starbase(?)
参考のMatt Ashbyのページ/Introductionに
4. Access to various starbase programs and utilities
とあるので、あった方が良いのだろうし事実、自分のMacの中では一部のタス
クが動かないのだが、とりあえず現在は保留・・・・
☆SWarp
Multi Extension fitsをSingle fitsに変換してくれるソフトウェア:Swarpを
インストール
(※ホントはもっと色々出来るのだと思うが・・・)
・ダウンロード
SWarpサイトから最新版(v2.19.1)のソー
スファイル:swarp-2.19.1.tar.gzをダウンロード
・ホームディレクトリで展開
% cd
% mv ~/Downloads/swarp-2.19.1.tar.gz ./
% tar xvfz swarp-2.19.1.tar.gz
・インストール
% cd swarp-2.19.1/
インストールマニュアル(INSTALL)に従って以下、インストー
ルしていく
% sudo ./configure
% sudo make
% sudo make install
☆satbgon.cl
飛行機や衛星の通過跡のような任意の直線状のfeatureに対してマスクがけす
るMatt Ashbyオリジナルのスクリプト
◎作成=>適当な場所に保管
Mattのページにスクリプトが全文載って
いるが、タイポで一カ所間違えてる。
本文5行目で
int x2 {prompt="Y-pixel number for end of trail",
mode="q"}
これだとx2が2回定義されてしまう。正しくはy2
修正版を以下に置く。
↓
satbgon.cl
これをsatbgon.clという名前で保存。
自分はこれを外部パッケージのディレクトリに置いた。
% sudo mv satbgon.cl /usr/local/iraf/iraf/extern/
◎パスを通す
login.clに以下の記述を追加。
# Megared setting
・・・・・
・・・・・
task satbgon = /usr/local/iraf/iraf/extern/satbgon.cl
keep
◎使い方
vocl> mscred
mscred> megacam
megacam> satbgon インプットファイル x1 y1 x2 y2 width value
注意!
このタスクによりインプットファイルは上書きされてしまうので慎重に
またvalueを指定する形式になっているが、何をいれようと-10000.0に置き換
えられてしまう
◎改造版(Mac用? Iraf ver 2.1.6用?)
オリジナルプログラムにアルゴリズム上の問題は無いのだが、何故か自身の
localマシン内では、マスクしたいtrailがx方向に長い(|x1-x2|>|y1-y2|)場合
に機能しない。
そこで少しだけ改造した。より原始的にしてしまったので時間はオリジナル版
よりもかかる。。。
↓
satbgon_km.cl
オリジナル版が上手くいかない場合はこれを、satbgon.clという名前で保存し
使うこと。
2,CF machine Setting(CfAマシン内で作業するためのセッティン
グ)
Mac環境が悪いのか、Starbaseなど足りないツールがあるからなのかは分から
ないが、とにかく上記のセッティングを行っても、Megaredは完璧には動作し
ない。例えばzptmatchはタスクは存在するが上手く走らない。
そこで一部の作業はCFマシンで行った。
CFマシン内にはどこかに必要なツールが大体はあるので、そこにパスを通すだ
けで良い。ただしMatt Ashbyがページを作った時からパスが若干変わっている
ので、メモしとく。
◎CFマシンに入る
(学内有線端末からの場合、X connection不可)
% ssh ユーザー名@login.cfa.harvard.edu
$ ssh ユーザー名@mars.cfa.harvard.edu
(無線でVPN接続してる場合、X connection有効)
% ssh -X ユーザー名@mars.cfa.harvard.edu
◎.cshrcファイルの書き換え
以下の文を付け加える
# For running MEGACAM/STARBASE software, 2013 Feb 22.
setenv MEGARED /data/oirperm2/bmcleod/Megared/
if ($OS == "solaris") then
set path=( $path /home/bmcleod/linux/starbase/bin )
set path=( $path /data/oirperm2/bmcleod/Megared/ )
set path=( $path /home/bmcleod/bin.linux )
set path=( $path /opt/bin )
set path=( $path /data/mmti/bin )
else if ($OS == "linux") then
set path=( /home/bmcleod/linux/starbase/bin $path )
set path=( /data/oirperm2/bmcleod/Megared/ $path )
set path=( /data/oirperm2/bmcleod/Megared/bin/ $path )
set path=( /home/bmcleod/bin.linux $path )
set path=( /opt/bin $path )
set path=( /data/mmti/bin $path )
else
echo "ERROR --OS version incorrectly set"
endif