すばる主焦点カメラSuprime-Cam 解析用ソフトウェアSDFREDマニュアル

ver.1.4.1.2

大内正己

国立天文台/STScI

2004年8月6日作成

2006年12月2日改訂 (八木雅文、古澤久徳、小宮山裕 & SDFRED support team)

2007年9月25日改訂 (古澤久徳、八木雅文、& SDFRED support team)

2008年5月1日改訂 (八木雅文、& SDFRED support team)

2008年9月30日改訂 (八木雅文、& SDFRED support team)


このマニュアルは 2008/07/21 以前のデータに対して有効です。
このマニュアルの内容を更新及び修正した版(ver 1.5e)を英語版で公開していますの で、併せてごらんください。
デー タ解析マニュアルの正本は英文版であり、和文版はあくまでも日本人ユーザーの便宜のために供するものです。

はじめに

すばる主焦点カメラ(Suprime-Cam)は、2048pix×4096pixのCCD 10枚からなる モザイクCCDカメラです。Suprime-Camで得られた画像データを整約する為 のパッケージソフトウェア が Suprime-cam Deep Field REDuction (SDFRED) パッケージです。SDFREDは、Suprime-Cam の膨大な raw データを、できるだ け標準的なパラメータを用いて半自動もしくは自動で処理し、整約済み画像を 作ります。この整約済み画像は、そのままサイエンスに用いることができます。

SDFREDはその名の通り、deep field(つまりblank field)のデータ解析を 目指して作成されています。Suprime-Camの視野全体に渡るような巨大な天体が写って いるデータや、天体がひどく込み合ったデータに対しては、一部の処理におい てうまく動作しない場合があります。また、測光を目的としたソフトウェア ですので、天体の精密な形を要求するweak lensingの解析などに使えるかどうかの テストは行われていません。このような場合のデータ解析には、ご自分で 出力結果を確認してSDFREDを使用するか、SDFRED以外のソフトウェアを 使用するか、検討することをおすすめします。問題が起こる可能性のある処理に関しては 注意書きを載せておきます。

SDFREDの著作権

SDFREDの著作権は、作成した大内正己と解析エンジンを提供し改良を行っ ている八木雅文とにあります。SDFREDは自由に複製、配布して構いませんが、こ れを用いた研究の論文には必ず以下の2論文を引用することで、著作者を明 記してください。

___Yagi et al., 2002, AJ, 123, 66

___Ouchi et al., 2004, ApJ, 611, 660

SDFREDの入手方法

SDFREDのパッケージおよび使用マニュアル(本マニュアル)は

http://www.naoj.org/Observing/Instruments/SCam/sdfred/sdfred1.html.ja

から取得できます。また、今後新しいバージョンのSDFREDが作られた場合など、SDFREDに関する情報は全てこのホームページにアップされま す。

SDFRED以外に必要なソフトウェア

- SExtractor

http://terapix.iap.fr/rubrique.php?id_rubrique=91

______ (Bertin & Arnouts 1996, A&AS, 117, 393)

______ (参考)開発者はversion2.5.0にて動作確認を行っています。

- IRAF (必ずしも必要ではないがあると便利)

______  入手先: http://iraf.nao.ac.jp/  or_ http://iraf.net/

______ (参考)開発者は version 2.12.2 にて動作確認を行っています。

- その他の基本ソフトウェア

______ C コンパイラ、perl、sh(bash)、csh

SDFREDに必要な環境

メモリ256MB程度以上を持ったUNIX系計算機を使います。ハードディスクの容 量は解析するデータの量によりますが、普通は数GB−数百GB必要になりま す。(上記の練習データをつかって解析する場合は、10GBあれば十分です。)

(参考)開発者は Linux で動作確認を行なっています。

SDFREDのインストール方法

1. パッケージの展開

ダウンロードした sdfred20080610.tar.gz を、適当なディレクトリに 展開します。(パッケージは配布ウェブにて最新版を確認して下さい)

例)

$ tar xvzf sdfred20080610.tar.gz

または

$ gunzip -c sdfred20080610.tar.gz | tar xvf -

(以下の説明でコマンド例の行頭の%または$はシェルのプロンプトを表しています。お使いのシェルの設定に応じて適宜読み替えてください。)

current directoryにsdfred20080610/ などという名前がついたディレクトリができます。ここで、20080610という数字はSDFREDのバージョンで、作成された年、月、日に対応します。 (バージョン毎にこの数字は変わります。)

2. コンパイル

展開したSDFREDをコンパイルします。sdfred20080610/ というディレク トリーに移りconfigureとmake allというコマンドを実行します。

例)

$ cd sdfred20080610/

$ ./configure

$ make all

これによって、ディレクトリ sdfred20080610/ の下の binという サブディレクトリの中にプログラムがインストールされます

3. pathを通す

プログラムがインストールされた sdfred20080610/bin/ にpathを通します。

bashをお使いの場合:

例)

$ emacs ~/.bashrc 

などとして ~/.bashrc ファイルおよび ~/.bash_profile を編集します。

PATH=/wa03a/subaru20/sdfred20080610/bin:$PATH

export PATH

などとして、PATH変数にsdfredの実行ファイルディレクトリを加えます。

ここで、 /wa03a/subaru20/sdfred20080610/bin というのは、 sdfred20080610を置いてあるディレクトリ名なので、ユーザごとに変えてください。 なお .bashrc はターミナル起動時、.bash_profile はログイン時に読み込まれるため、 両方に反映が必要です。

ファイルを保存終了した後、以下のコマンドを実行し、現在の環境に path変更を反映します。

$ source ~/.bashrc

csh/tcshをお使いの場合:

例)

% emacs ~/.cshrc

などとして、

set path=( /wa03a/subaru20/sdfred20080610/bin $path )

のようにset pathの中にSDFREDのbinのディレクトリ(実行ファイルディレクトリ) を指定します。 その後、以下の2つのコマンドを実行して、pathの変更を完了してください。

% source ~/.cshrc

% rehash

4. 環境変数を設定する

SDFREDに含まれるシェルスクリプト、Perlスクリプトが正しく動作する ように、環境変数 LANGおよびLC_ALLを以下のように設定します。

bashをお使いの場合:

$ emacs ~/.bashrc (上記3と同様に.bashrc と .bash_profile を編集します。

export LANG=C (この2行を加えます。)

export LC_ALL=C

$ source ~/.bashrc(ファイルを読み込んで環境変数の設定を反映します。)

csh/tcshをお使いの場合:

% emacs ~/.cshrc (上記3と同様に.cshrcを編集します。)

setenv LANG C  (この2行を加えます。)

setenv LC_ALL C

% source ~/.cshrc (ファイルを読み込んで環境変数の設定を反映します。)

5. その他の設定

IRAFを使う場合には、カレントディレクトリで、mkiraf を行っておく 必要があります。
その他、各自の解析環境で必要な設定をあらかじめ完了しておいてください。

一通り設定が完了したら、

$ env

$ which SDFREDのコマンド名

例)
$ which namechange.csh

として解析を行おうとしている環境で環境変数やPATHが正しく設定されているかを確認します。

以上で、準備は終了です。ここまでの作業は、 解析を行なう環境で最初に1度だけ行なえば良い作業です


データの準備と整理

作業を開始する前にデータファイルをディレクトリごとに分けておきます

sdfred を用いる際には、各段階で処理される入力ファイルは、カレントディレクトリ に存在する必要があります。カレントディレクトリ以外の場所にあるファ イルに対して処理を行いたい場合には、それらのファイルにシンボリックリ ンクを張るなどしてカレントディレクトリ上のファイルとしてアクセス出来 るようにしなければなりません。

解析練習のためのSuprime-Camデータ

国立天文台では、解析練習用のSuprime-Camデータを用意しています。 本マニュアルにある手順に従えば、この練習用データから最終画像、 および測光用の標準星画像を作れることが確認されています。 SDFREDを初めて使う方は、実際に自分のデータを解析する前に、 この練習用データを用いる事で使用方法や解析の流れを 理解することができます。

このデータ解析練習用のSuprime-Camデータ(753MB)は

http://optik2.mtk.nao.ac.jp/subaru_red/SPCAM/
(spcam_training_data.tar.gz)

から取得できます。

以下、本マニュアルに示すSDFREDの使用例(具体例)は、 この練習用データを用いた場合のものです。

例)

練習用データを展開する

$ tar xvzf spcam_training_data.tar.gz

この作業を行ったあと、画像の確認を行ってください。 どれがオブジェクトフレームか? どれがフラットに使えるか? 標準星として使えるフレームはどれか?

さらに ds9 などを使って、星像が歪んでいる画像はないかなどを 見てください。この時、観測ログがあればそれも参考にしてください。

練習用データなら、SUPA0020*.fits がオブジェクトフレーム(ターゲットの天体を写した画像)であり、SUPA0019512*.fits が標準星のフレームです。

以下、本マニュアル v1.4 では、それぞれを spcam_training_data ディレクトリのある ディレクトリと並べて object/ standard/ というディレクトリに置き、 作業を進める事にします。

(練習用データでのシンボリックリンク作成の例)

$ mkdir object standard

ls の結果は以下のようになるはずです。

$ ls

object spcam_training_data spcam_training_data.tar.gz standard

天体データを object ディレクトリにリンクします

$ cd object/

$ ln -s ../spcam_training_data/SUPA0020*.fits .

ブランクマップデータをコピーします。

$ cp ../spcam_training_data/blankmap* .

標準星データを standard ディレクトリにリンクします

$ cd ../standard/

$ ln -s ../spcam_training_data/SUPA0019512?.fits .

standard ディレクトリに 10 FITS ファイル、object ディレクトリに50 FITS ファイルと6つの blankmap がある事を確認します。

smoka からの取得

すばるで得られたデータは1年半後に公開アーカイブ smoka で 公開されます。

http://smoka.nao.ac.jp/

ここから取得したデータを使って解析する事も出来ます。 この時、フィルターや種別(object/standard など)が、 混じっていないことを確認します

本マニュアルでは、ここからの処理はターゲット天体と標準星天体で 別々のディレクトリで行ないます。


SDFREDを使った画像処理の方法(具体例を含む)

SDFREDを使ってSuprime-Camのrawデータから整約済み画像を作る手順を 示します。ここでは2種の手順を分けて説明します。 一つはターゲット天体、もう一つは標準星天体です。

ターゲット天体の解析は、以下の12の処理からなります。

■■解析の流れ■■

       処理の内容             (所要時間A,B): 用いるプログラム名

(1)画像ファイル名の変換および画像の確認___________ (1秒,1秒): namechange.csh

(2)bias引きおよびoverscanの切り取り_______________(20秒,1分): overscansub.csh

(3)flat 作り_____________________________________ (6分,20分): mask_mkflat_HA.csh

(4)感度補正 (flat fielding)______________________ (30秒,2分): ffield.csh 

(5)歪補正(distortion correction)および微分大気差補正(1分,6分): distcorr.csh

(6)PSF 測定___________________________________ (*,*): psfmatch_batch.csh

(7)PSF 合わせ___________________________________ (40分,80分): psfmatch_batch.csh

(8)sky の差し引き________________________________ (1分,3分): skysb.csh

(9)AG probeの影を自動でマスク_____________________(15秒,2分): mask_AGX.csh

(10)画像を目で見て、悪い部分をマスク_______________(15秒,1分): blank.cshなど

(11)組み合わせ規則作り(matching)_________________(2分,15分): makemos.csh

(12)組み合わせ(mosaicing)______________________ (3分,12分): imcio2a

*(所要時間)は国立天文台の ana*.adc (Intel Xeon 3.0GHz) のローカル作業領域 /wa を使って、 a) 練習用データ(5shot)を解析した場合にかかった時間、 b) 別のデータ(17shot)を解析した場合にかかった時間、です。 この時間は目安で、データ量や使用するコンピュータに依存します。 また、所要時間はデータ数に対し線形ではないこともわかると思います

■■■■■■■■■
一方、標準星天体の解析は上記ターゲット天体の処理のうち、 一部だけを取り出した以下の4段階と独自の1段階になります。

(S1)画像ファイル名の変換および画像の確認___________ : namechange.csh

(S2)bias引きおよびoverscanの切り取り_______________ : overscansub.csh

(S3)感度補正 (flat fielding)______________________ : ffield.csh 

(S4)歪補正(distortion correction)および微分大気差補正: distcorr.csh

(S5)チップ間相対感度補正(mosaicking correction)______:

■■■■■■■■■

基本的な流れとしては、ユーザーが各処理に用いるデータファイル名を 書いたリストファイルを作り、そのリストファイルをSDFREDのソフトウェアに与え て実行します。これを上記の12種の処理に対して行えば整約済み画像(最 終画像)が得られます。(本マニュアルのAppendixには、最終画像を得た後 の処理に対して使えるソフトウェアを紹介しています。ここで紹介しているソフト ウェアは無保証の試験版ですので、使われる際は注意してください。)

ちなみに、処理を終えた画像ファイルには、1つの処理が終わるごとに 名前が変わります。最初の処理を除いて、ファイルの名前には処理を代表す る頭文字がつけられていきます。

以下、SDFREDで作られる画像ファイル名の一例です。

==============================================================

処理前(rawデータ)_ SUPA00204613.fits

(1)の処理後_____ H030425object025_si001s.fits

(2)の処理後_____ To_RH030425object025_si001s.fits

(3)の処理後_____ (変化なし:flat画像*mflat*.fitsが作られる)

(4)の処理後_____ fTo_RH030425object025_si001s.fits

(5)の処理後_____ gfTo_RH030425object025_si001s.fits

(6)の処理後_____ (変化なし:psf サイズの測定結果ファイルが作られる)

(7)の処理後_____ pgfTo_RH030425object025_si001s.fits

(8)の処理後_____ spgfTo_RH030425object025_si001s.fits

(9)の処理後_____ AspgfTo_RH030425object025_si001s.fits

(10)の処理後_____ bAspgfTo_RH030425object025_si001s.fits

(11)の処理後___(変化なし:組み合わせ規則を示したファイル*.mosが作られる)

(12)の処理後___(変化なし:ばらばらの画像が一枚に合わされた最終画像ができる)

==============================================================

(注意1)普通、ある処理を行うときは、その直前の処理で作られた画 像を入力ファイルとして使います。たとえば、(5)の処理を行うときは、 gfTo_RH*.fitsと名前のついたファイルです。したがって、ディスクスペー スを節約するため、すでに処理に使われなくなった画像ファイルを消しても かまいません。ただし、いつか解析をやりなおす時のために、「(1)の処 理後」、「(4)の処理後」、「(9)の処理後」の画像(つまり、 H*.fits, fTo_RH*.fits, AspgfTo_RH*.fitsの画像)および *.mos は 消さないでおくと便利でしょう。


ターゲット天体の処理

上記の(1)から(12)までの処理について一つ一つ解析方法を解説します。

(1)画像ファイル名の変換および画像の確認

どのファイルがどの日に撮られ、どのCCD によるデータかがすぐわかる ように、ファイル名を SUPA.... からH[年月日][fileの種類と番号]_[チッ プ名].fitsに変えます。namechange.cshというコマンドを使います。

(注意)この年月日はハワイ時間です。FITS ヘッダに書かれた DATE-OBS とは 1日ずれているので要注意

コマンド:

$ namechange.csh [SUP file names]

ここで

・[SUP file names]: 名前を変えたいファイル名のリスト

上の注意で述べたように、コマンドは、処理に使うファイルの置かれて いるディレクトリで実行しなければなりません。これは以下の全段階に共通 のルールです。

例)

$ cd object/

データのあるディレクトリに移動

$ ls -1 SUPA*.fits > namechange.lis    

名前を変えるファイル名のリストを作る(ls -1-1は 「マイナス イチ」です。この後にもあるls -1-1は全て「マイナス イチ」なので注意。

$ namechange.csh namechange.lis

namechange.cshを実行

ちなみに、

$ cat namechange.lis

SUPA00204610.fits

SUPA00204611.fits

SUPA00204612.fits

...

実行後)

SUPA...という名前のファイルは以下のようなファイル名に変わる

H030425object025_si001s.fits

H030425object025_si002s.fits

H030425object025_si005s.fits

...

実行後のチェックポイント)

SUPA...という名前のファイルがちゃんとH…という名前に変わっ ているはずです。lsコマンドで確認できます。

(参考)Suprime-Camの10枚のCCDの並び方は次のようになっています。

________ AG プローブの位置 ______

w67c1__ w6c1_ si006s_ si002s__ w7c3

w93c2__ w9c2_ si005s_ si001s__ w 4c5


(2)bias引きおよびoverscanの切り取り

各画像からbiasを引きます。さらに、いらなくなったoverscanの部分を 切り取ります。

overscansub.cshというコマンドを使います。(overscanの 値をbias値と見なし、overscan のそれぞれの行のメジアンを各行から引く ことで bias 差し引きが行われます。)

以下の操作を行ないます。

コマンド:

$ overscansub.csh [overscansub.lis]

ここで

・[overscansub.lis]:biasを引きとoverscanの部分を切り取りたいファ イル名のリスト

例)

$ ls -1 H*.fits > overscansub.lis

解析に使う画像のリストを作る

$ overscansub.csh overscansub.lis

overscansub.cshを実行

ちなみに、

$ cat overscansub.lis

H030425object025_si001s.fits

H030425object025_si002s.fits

H030425object025_si005s.fits

...

実行後のチェックポイント)

画像上で、天体が写っていない部分(背景)のカウント数が、元の画像 に比べおよそ1万カウント程度減っているはずです。これは、画像からbias を引いた結果です。引かれるカウント数(biasの値)は、CCDごと、pixelご とに異なります。

overscanの部分は切り取られるため、処理後は若干画像が小さくなりま す。IRAFのimheadなどを使って、画像のpixel数が変化しているのを見てと ることができます。(例: cl> imhead H*.fits )

(3)flat作り

画像内での感度補正に使う画像(flat)を作ります。 mask_mkflat_HA.cshというコマンドを使います。

(天体やAG probeの影などは自動でマスクされ、median flatが作られます。)

フラット作りに使える画像は、大きく分けて3種類あります。「blank fieldの画像」、 「twilight画像」、そして「dome画像」です。最も良質のフラットは、「blank fieldの画像」を 使うと作ることができると考えられています。 「blank fieldの画像」は、解析しようとする天域と同じでも、 100-200pixを越えるような大きな天体が無ければほぼ問題ありませんので、 練習用データについては解析する天域のデータで作成する手順を以下で示しています。

練習用データでは flat は object ディレクトリ内で作成し、 それを後ほど standard でも利用します。 一般には同じフィルターで撮られた、複数の天域を一緒に用いて flat を作成します。このような場合は、 object に並列に flat という ディレクトリを作成し、そこに To_R* ファイルのシンボリックリンクを作成し、 以下の作業を実行するのが良いでしょう。

コマンド:

$ mask_mkflat_HA.csh [mkflat.lis] [head name] [lower value] [uppwer value]

ここで

・[mkflat.lis] : フラットを作るのに使うファイルのリスト

・[head name] : 作られるフラットの頭の部分の名前

・[lower value]: 作られるフラットの最低値(それ以外はマスク)[0.5を推奨]

・[uppwer value]: 作られるフラットの最大値(それ以外はマスク)[1.3を推奨]

例)

$ ls -1 To_R*.fits > mkflat.lis

フラットを作るのに使うファイルのリストを作る。

オブジェクトフレームからフラットを作る。

$ mask_mkflat_HA.csh mkflat.lis obj 0.5 1.3  

mask_mkflat_HA.cshを実行

ちなみに、

$ cat mkflat.lis

To_RH030425object025_si001s.fits

To_RH030425object025_si002s.fits

To_RH030425object025_si005s.fits

...

実行後)

以下のような名のファイル(フラット画像)ができる

obj_mflat_si001s.fits

obj_mflat_si002s.fits

obj_mflat_si005s.fits

...

実行後のチェックポイント)

フラット画像(obj_mflat*) は、 1.0カウントを中心にカウントがばらついているはずです。 また、この画像は場所毎に極端なデコボコは少なく、滑らかにカウント が変わっている場合が多いです。(ただしUバンドやzバンドより赤いバン ドの画像はデコボコが多いです。)しかし、デコボコといっても連続的にカ ウント数が減っているはずです。もし、カウントの場所ごとの変化が不連続 になるようでしたら、うまくフラット画像が作れていない可能性があります。

ちなみに、-32768という極端に小さいカウントが入っているpixelがみら れるはずです。これは、sdfred でブランクするpixelに対して埋め込まれる値で、異 常な結果ではありません。

(注意1)

フラットは、原理的に3ショット分の画像(つまり各CCDに3枚の画 像)があれば作れます。しかし、フラット作りに使う画像の枚数が少なけれ ば少ないほど、天体の影響やノイズの影響を受けやすくなります。したがっ て、少なくとも6−7ショットの画像、理想的には20ショット以上の画像 からフラットを作ることをお勧めします。
練習用データでは5ショットで作成していますが、これでは精度が悪いです。

(注意2) 「blank fieldの画像」、「twilight画像」、「dome画像」 のうち2種類もしくは3種類の画像を混ぜてフラットは作らないでください。 3種類の画像はそれぞれ背景光の傾きが異なるため、出来上がるフラット画像が おかしくなる場合があります。(たとえば、カウントが不連続な横筋が入るなど)。 これは本パッケージのアルゴリズムと関係しています。

(注意3)このコマンドでは、bad column, hot pixelなどの位置を、パ ラメターファイルに基づいて自動的にマスクさせています。デフォルトでは、 2002年8月末以降にとられたデータ(messia V + 現CCD)にパラメターファイ ルを最適化してあります。

もし、それ以前のデータを解析する場合は、mask_mkflat_HA.cshを実行 する前に以下の作業をしてください。

sdfred20080610/ のディレクトリへ行き、

・2001年3月以前のデータの場合 (messia III + old CCDの場合)

$ cp sdfredSH/mask_mkflat_HA/blankmap_oldCCD/* sdfredSH/mask_mkflat_HA/blankmap/

・2001年4月以降、2002年8月末以前のデータの場合 (messia III + 現CCDの場合)

$ cp sdfredSH/mask_mkflat_HA/blankmap_messiaIII/* sdfredSH/mask_mkflat_HA/blankmap/

を実行します。

また、元の状態に戻す場合は、

$ cp sdfredSH/mask_mkflat_HA/blankmap_messiaV/* sdfredSH/mask_mkflat_HA/blankmap/

を実行すれば良いです。

(4)感度補正 (flat fielding)

(3)で作成した flat 画像を用いて、 1画像内での相対感度の補正をします。

コマンド:

$ ffield.csh [ffield_mf.lis] [ffield_im.lis]

ここで

 ・[ffield_mf.lis]: 使用するフラット画像のリスト

 ・[ffield_im.lis]: 感度補正を行いたい画像のリスト

例)

$ ls -1 obj_mflat*.fits > ffield_mf.lis

(3)で作ったフラットの名前が載ったリストを作る

$ ls -1 To_RH*.fits > ffield_im.lis

感度補正を行う画像(オブジェクトと標準星フレーム)のリストを作る

$ ffield.csh ffield_mf.lis ffield_im.lis 

ffield.cshを実行

$ cat ffield_mf.lis

obj_mflat_si001s.fits

obj_mflat_si002s.fits

obj_mflat_si005s.fits

...

$ cat ffield_im.lis

To_RH030425object025_si001s.fits

To_RH030425object025_si002s.fits

To_RH030425object025_si005s.fits

...

実行後)

以下のような名前のファイル(感度補正済みの画像)ができます

fTo_RH030425object025_si001s.fits

fTo_RH030425object025_si002s.fits

fTo_RH030425object025_si005s.fits

...

(実行後のチェックポイント)

うまく出来た感度補正済み画像を見ると、背景光のカウント数がほぼ平 らになっているはずです。また、視野の端にあるCCDつまり、w67c1, w93c2, w7c3, w4c5などにあった巨大な背景光のムラ(半月状の形)もほとんど無く なっているはずです。しかし、たまにこの背景光のムラが消えず、カウント が数パーセント高く(または低く)なってしまうことがあります。

(5)歪補正(distortion correction)および微分大気差補正

主焦点光学系および微分大気差による画像中の歪みを同時に補正します。

コマンド:

$ distcorr.csh [distcorr.lis]

ここで

・[distcorr.lis]: 歪み補正する画像のリスト

例)

$ ls -1 fTo_RH*.fits > distcorr.lis

歪補正を行うオブジェクト画像のリストを作る

$ distcorr.csh distcorr.lis

distcorr.cshを実行

ちなみに、

$ cat distcorr.lis

fTo_RH030425object025_si001s.fits

fTo_RH030425object025_si002s.fits

fTo_RH030425object025_si005s.fits

...

実行後)

以下のような名前のファイル(歪み補正済みの画像)ができます。

gfTo_RH030425object025_si001s.fits

gfTo_RH030425object025_si002s.fits

gfTo_RH030425object025_si005s.fits

...

実行後のチェックポイント)

出来上がった画像は、元の画像と比べると数pixから数十pix歪んでいる ように見えます。画像の左右(または上下)の縁の部分に注目すると、その 違いが分かりやすいです。この処理は、ヘッダーの位置情報を読んできて、 計算式に当てはめて補正量を決めています。したがって、この処理で画像作 りに失敗することは(原理的に)ありません。

(参考)なお、本来はこの歪みや大気差の量は波長によって異なるのですが、 SDFRED では R band の量を元に全てのバンドで同じ補正をしています。

(6)PSF測定

最終的に画像を重ね合わせる際には、 重ね合わせる画像の PSF が同じでなければなりません。

シーイングによる画像間のPSFの大きさの違いは次節(7)で 合わせますが、その前に、この節では画像間のPSFの大きさが どのくらい異なるかを予め測っておき、目標とするFWHM(次節の[target FWHM])を 決めておきます。この作業には、fwhmpsf_batch.cshと いうプログラムを使います。

コマンド:

$ fwhmpsf_batch.csh [fwhmpsf_batch.lis] [max number of objects] [min peak flux] [max peak flux] [min FWHM] [max FWHM]

ここで

・[max number of objects]:PSFの測定に使うstellar objectの数

・[min peak flux]:PSF測定に使うstellar objectのflux peakの許容最小値

・[max peak flux]:PSF測定に使うstellar objectのflux peakの許容最大値

・[min FWHM]:PSF測定に使うstellar objectのFWHMの許容最小値

・[max FWHM]:PSF測定に使うstellar objectのFWHMの許容最大値

・[psfmatch_batch.lis]:PSFを測る画像のリスト

例)

$ ls -1 gfTo_RH03042*.fits > fwhmpsf_batch.lis

PSFの大きさを測るオブジェクト画像のリストを作る

$ fwhmpsf_batch.csh fwhmpsf_batch.lis 50 2000 30000 2.0 7.0

fwhmpsf_batch.cshを実行

1フレームの中から星らしい天体を選ぶためには、多少の練習 が必要です。基本的にはバッドピクセルや宇宙線イベントではない通常の天 体の中で、一番小さくかつ真円状に結像しているものを選びます。通常、星 でない銀河などの天体はそのフレームのPSF(星らしい天体が持つべきカウ ントのプロファイル)に比べて優位に広がった形状をしています。観測条件 によってはPSFが十分に円くないこともありますが、imexamなどでいくつか の候補天体のcontourとFWHMを見ていくと、数~10天体ほど見たところで、そ のフレーム内で共通のおおよそのPSFが分かるでしょう。いったんPSFが分か れば、後はそのPSFと同等のサイズ・形状の天体を探していけばそれが星ら しい天体(QSOなどの恒星状天体も含みます)ということになります。

実行後)

以下のような出力が得られます。

### results ###

gfTo_RH030425object025_si001s.fits 3.60 1 6 15 13 0

gfTo_RH030425object025_si002s.fits 3.80 1 1 20 16 0

gfTo_RH030425object025_si005s.fits 3.60 2 13 19 0 0

3.3 |

3.4 |

3.5 |**

3.6 |**

3.7 |*

3.8 |**

3.9 |**

4.0 |

4.1 |*

出力の前半は、個々の画像に対するPSFの大きさを示します。各列、「個々 の画像の名前、PSFの測定値(pixel単位)、および測定の根拠とした天体の個 数(5列)」を示します。後半は、測定値vs.画像の数 のヒストグラムで す。

上の結果の判断は難しいのですが「4.1 に全て揃える」「4.1 は外れ値と見倣し、 3.9 に揃える」などが考えられます。

実際の観測データの解析を行う際には、目標の PSFサイズの決定に加え、データの取捨選択(どのデータを解析に含めるか) の指標にすることが出来ます。

(注意)fwhmpsf_batch.csh や、次の psfmatch_batch.cshなどは、 Suprime-Camの視野の数分の1から全面に広がる 巨大な天体の画像(球状星団や近傍銀河など)に用いると誤作動する可能性 があります。これは、込み合っている天域では、stellar objectを自動で探 すのが難しくなるためです。うまく動作しているかどうかを手動で確かめて ください。うまくいっていない場合は、手動でPSF合わせを行う必要があります。

(参考1) fwhmpsf_batch.cshは多数の画像のPSFを一度に測るプログラムで すが、一つの画像についてだけPSFを測りたい場合はfwhmpsf.cshを使ってく ださい。使い方は、fwhmpsf_batch.cshのリスト名を与える部分を画像名に するだけです。

例)

$ fwhmpsf.csh gfTo_RH030425object025_si001s.fits 50 2000 30000 2.0 7.0

実行後)

以下のような出力が得られます。

gfTo_RH030425object025_si001s.fits 3.60 1 6 15 13 0

この結果、gfTo_RH030425object025_si001s.fitsという画像は、PSFの大 きさ(FWHM)が3.6pixであると分かります。

(参考2)fwhmpsf_batch.cshに使う各種パラメータの決め方

以下の5つのパラメータ

[max number of objects]

[min peak flux]

[max peak flux]

[min FWHM]

[max FWHM]

は、解析する画像によって変える必要があります。これは、画像の質が バンドや積分時間、取得時の天候などによって変わるためです。

これら5つのパラメータは、PSFを測るために使う画像中の星の選ぶ基準 になります。ユーザーが選んだ5つのパラメータが適当かどうかを見るため にはstarselect.cshを使うと便利です。starselect.cshは、ある画像の中か ら星を選び、選んだ星の位置ファイルを作るプログラムです。

コマンド:

$ starselect.csh [image name] [max number of objects] [min peak flux] [max peak flux] [min FWHM] [max FWHM] [output file]

ここで

・[image name]:星の位置を調べたい画像の名前

・[max number of objects]:stellar objectの数 (psfmatch_batch.cshと同じもの)

・[min peak flux]:stellar objectのflux peakの許容最小値(psfmatch_batch.cshと同じ)

・[max peak flux]:stellar objectのflux peakの許容最大値(psfmatch_batch.cshと同じ)

・[min FWHM]:stellar objectのFWHMの許容最小値(psfmatch_batch.cshと同じ)

・[max FWHM]:stellar objectのFWHMの許容最大値(psfmatch_batch.cshと同じ)

・[output file]:stellar objectの位置を示したファイル(出力)

例)

$ starselect.csh gfTo_RH030425object025_si001s.fits 50 2000 30000 2.0 7.0 output.reg

starselect.cshを実行

実行後)

以下のような名前のファイル(stellar objectの位置を示したファイル)ができる

output.reg

stellar objectの位置はds9を使って表示することができます。

$ ds9 gfTo_RH030425object025_si001s.fits

として画像を表示させ、上側にあるボタン Regionをクリック、その後、 loadをクリックして、output.reg と打ち込みリターン。選ばれた天体は、 画像上に緑色の丸で示されます。選ばれた天体の半分以上が本物のstellar objectだったら用いた5つのパラメータは妥当と考えて良いです。これと同 じ値をpsfmatch_batch.cshのパラメータに使えます。

もし、解析する画像の中に質が大きく異なるものが含まれる場合は、こ の作業を異なる質の画像に対しても行ってください。質の異なる画像でも、 決定した5つのパラメータで本当に正しくstellar objectが選べるかどうか チェックしてください。全ての画像でうまく動くパラメータを探してくださ い。万一、そういったパラメータの組み合わせが無いようでしたら、 psfmatch_batch.cshは、画像の種類ごと別々に行ってください。

(7)PSF合わせ

シーイングによる画像間のPSFの大きさの違いを合わせ、 (6)で求めた値に揃えます

コマンド:

$ psfmatch_batch.csh [psfmatch_batch.lis] [max number of objects] [min peak flux] [max peak flux] [min FWHM] [max FWHM] [target FWHM]

ここで

・[psfmatch_batch.lis]:PSF合わせをする画像のリスト

・[max number of objects] :(fwhmpsf_batch.cshと同じもの)

・[min peak flux]:(fwhmpsf_batch.cshと同じもの)

・[max peak flux]:(fwhmpsf_batch.cshと同じもの)

・[min FWHM]:(fwhmpsf_batch.cshと同じもの)

・[max FWHM]:(fwhmpsf_batch.cshと同じもの)

・[target FWHM]:目標にする画像のFWHM(元々この値よりFWHMが大きい画像は実行後、単にコピーされる)

例)

$ ls -1 gfTo_RH*.fits > psfmatch_batch.lis

PSF合わせを行うオブジェクト画像のリストを作る

$ psfmatch_batch.csh psfmatch_batch.lis 50 2000 30000 2.0 7.0 3.7

psfmatch_batch.cshを実行

ちなみに、

$ cat psfmatch.lis

gfTo_RH030425object025_si001s.fits

gfTo_RH030425object025_si002s.fits

gfTo_RH030425object025_si005s.fits

...

実行後)

以下のような名前のファイル(PSF合わせ済みの画像)ができる

pgfTo_RH030425object025_si001s.fits

pgfTo_RH030425object025_si002s.fits

pgfTo_RH030425object025_si005s.fits

...

実行後のチェックポイント)

プログラムの終了時に以下のように処理の結果が示されます。

pgfTo_RH030429object017_si001s.fits 3.70 0 5 38 6 0

これは左から順に1列目が「画像名」、2列目「PSF合わせ後のPSFの FWHMの大きさ(pix単位)」、3−7列目が「PSFのFWHMの大きさを中心に、 FWHMが±0.2pixの範囲にある天体の個数」です。この3−7列目の意味は、 例えば上記の場合なら、PSFの大きさが3.5 pixのものは0天体、3.6pixのも のは5天体、3.7pixのものは38天体、3.8pixのものは6天体、3.9pixのも のは0天体だけ、処理済みの画像上にあることを意味します。

3−7列目の情報は、うまくPSF合わせが出来たかどうか見る指標にな ります。うまく出来た画像は、5列目あたりを中心に3列目または7列目に 行くにつれ、数が減っていく傾向があるはずです。また、うまく処理が出来 た場合、5列目の値(中心の値)はたいてい10を超えています。このよう な傾向が見られないものについては、手動でPSFの大きさを測って確認する ことをお勧めします。

手動でPSFを測るにはIRAFのimexamが便利です(ds9を立ち上げ、 cl> imexam *.fits とし画像上で星らしい天体(以下の参考4を参照) を探し、rまたはaを押してFWHMを測る)。この際、一つ注意すべき点があり ます。天体のFWHMの大きさは、測るのに用いたソフトウェアにより 値が変わります。これは用いるフィッティングの関数の違いなどに よるものです。SDFREDでは、SExtractorが測ったFWHMの値を採用しています。 これは、IRAFで測ったFWHMと値が違います。したがって、IRAFなどを使って 手動でPSFを測って確認する場合は、FWHMの絶対値があっているかどうかを 見るのではなく、いくつかの画像をIRAFで測って同じようなFWHMに 落ち着いているかどうかを確認することになります。

(8)skyの差し引き

背景光(sky)を画像から差し引きます。

コマンド:

$ skysb.csh_ [skysb.lis] [sky-mesh]

ここで

・[skysb.lis]:skyを引く画像のリスト

・[sky-mesh]:skyを決めるmeshの大きさ(pix単位, 少なくともターゲッ ト天体の大きさの2倍以上の値でなくてはいけない。)

例)

$ ls -1 pgfTo_RH03042*.fits > skysb.lis

sky引きを行うオブジェクト画像のリストを作る

$ skysb.csh skysb.lis 64

skysb.cshを実行

ちなみに、

$ cat skysb.lis

pgfTo_RH030425object025_si001s.fits

pgfTo_RH030425object025_si002s.fits

pgfTo_RH030425object025_si005s.fits

...

実行後)

以下のような名前のファイル(sky引き済み画像)ができる

spgfTo_RH030425object025_si001s.fits

spgfTo_RH030425object025_si002s.fits

spgfTo_RH030425object025_si005s.fits

...

実行後のチェックポイント)

処理済みの画像は、背景(天体の無い場所)が、およそ0カウントを中心に

+/−にばらついているはずです。

(注意)(6)と同様に、Suprime-Camの視野の数分の1から全面に広が る巨大な天体の画像に用いると誤作動する可能性があります。これは、込み 合っている天域では、背景光の高さを見積もることが難しくなるためです。 うまく動作しているかどうかを手動で確かめてください。うまくいっていな い場合は、skysb.cshを用いず、手動で背景光の高さを決めて差し引きを行 う必要があります。

(9)AG probeの影を自動でマスク

画像上にAG probeによってできた影(上側のCCDに現れる)をマスクしま す。マスクする範囲は、fitsヘッダーにあるAG probeの位置情報から自動的 に決められます。

コマンド:

$ mask_AGX.csh [mask_AGX.lis]

ここで

・[mask_AGX.lis]:AG probeの影にマスクをかける画像のリスト

例)

$ ls -1 spgfTo_RH03042*.fits > maskAGX.lis

マスクをかけるオブジェクト画像のリストを作る

$ mask_AGX.csh maskAGX.lis

skysb.cshを実行

ちなみに、

$ cat maskAGX.lis

spgfTo_RH030425object025_si001s.fits

spgfTo_RH030425object025_si002s.fits

spgfTo_RH030425object025_si005s.fits

spgfTo_RH030425object025_si006s.fits

...

実行後)

以下のような名前のファイル(AG probeの影をマスクした画像)ができる。

AspgfTo_RH030425object025_si001s.fits

AspgfTo_RH030425object025_si002s.fits

AspgfTo_RH030425object025_si005s.fits

...

実行後のチェックポイント)

AG probeの影が映っている画像は、上側が数百pixかそれ以下の大きさで マスクの値(-32768)が埋め込まれているはずです。AG probeの影は、いつも 現れるものではありません。また、現れるにしてもAG probe側にある5つの CCD (w67c1, w6c1, si006s, si002s, w7c3)しかありません。AG probe の影が画像に映っていない場合は、何も処理されません。

(10)画像を目で見て、悪い部分をマスク

観測状況や装置の不具合などで、画像の一部分がおかしくなっている場 合があります。このような部分は、マスクして最終画像には残らないように します。基本的には画像を一枚一枚目で見て、悪い部分を見つけます。正常 な場所では、背景(sky)の値は0を中心にばらついています。sky の値が系 統的に0からずれている領域は、おかしい部分の候補となります。おかしい 部分は、その形(または用途)などによって以下に述べる3つのプログラム (line_blank, circular_blanks, blank.csh)を用いてマスクします。

(参考)1つのターゲット天体に対して観測データが複数ショットある 場合、仮におかしい部分をマスクするのを忘れてしまっても最終画像がおか しくなるケースはあまりありません。普通、マスクかけは細かいところまで 行う必要はありません。

(I)satellite trailをマスクする方法(一枚ずつ処理): line_blank

露出している間に視野中を人工衛星が通ったためにできた跡をsatellite trailと呼びます。観測する方向によっては、satellite trailが数ショット に一枚程度現れることがあります。

コマンド:

$ line_blank [input image] [x1] [y1] [x2] [y2] [width] [blank value] [output image]

ここで

・[input image]:マスクをかける画像名

・[x1] [y1] [x2] [y2] : satellite trailが(x1,y1)と(x2,y2)を通る

・[width]:satellite trailの太さ

・[blank value]:マスク領域に使う値(通常-32768を使う)

・[output image]:マスクをかけた後の画像名

練習データにはsatellite trailは無いので、練習デー タに対してこの処理を行う必要はありません。しかし、敢えて使い方を示す と以下のようになります。

例)

$ line_blank AspgfTo_RH030425object025_si001s.fits 88 112 1940 837 30 -32768 lAspgfTo_RH030425object025_si001s.fits

中心が(X,Y)=(88,112),(1940,837)を通る太さ30pixの マスクをかける

実行後)

以下のような名前のファイル(マスクした画像)ができます。

lAspgfTo_RH030425object025_si001s.fits

(II) 円形の領域をマスクする場合(一枚ずつ処理): circular_blanks

コマンド:

$ circular_blanks [input image] [blanklist( x y radius)] [blank value] [output image]

ここで

・[input image]:マスクをかける画像名

・[blanklist( x y radius)]:円形マスクの中心位置(x,y)と半径radiusが

書かれたリスト(複数行書けば複数個の円形マスクが一度にできる)

・[blank value]:マスク領域に使う値(通常-32768を使う)

・[output image]:マスクをかけた後の画像名

練習データには円形マスクをかけるほど悪い部分は無いので、練習デー タに対してこの処理を行う必要はありません。しかし、敢えて使い方を示す と以下のようになります。

例)

$ circular_blanks lAspgfTo_RH030425object025_si001s.fits blanklist -32768 clAspgfTo_RH030425object025_si001s.fits

blanklistに書かれた中心位置と半径をもつマスクをかける

ちなみに、

$ cat blanklist

356 1835 80

1202 3582 100

...

それぞれ(x,y,r)=(356,1835,80), (1202,3582,100)…の円に対応

実行後)

以下のような名前のファイル(マスクした画像)ができます。

clAspgfTo_RH030425object025_si001s.fits

(III)四角形の領域をマスクする場合(バッチ処理ができる): blank.csh

コマンド:

$ blank.csh_ [blank.lis]

ここで

・[blank.lis]:マスク(四角形の領域)をかける画像のリスト

これに加え、blank.cshの入力パラメータとして、同じディレクトリに

blankmap_[画像名(.fitsはつかない)] という名前のblank位置を示した

ファイルを同じディレクトリに置いておく必要がある。

以下の処理は、練習データに対して行ってください。

例)

$ ls -1 AspgfTo_RH03042*.fits > blank.lis

マスクをかけるオブジェクト画像のリストを作る

$ blank.csh blank.lis

blank.cshを実行

ちなみに、

$ cat blank.lis

AspgfTo_RH030425object025_si001s.fits

AspgfTo_RH030425object025_si002s.fits

AspgfTo_RH030425object025_si005s.fits

...

マスク位置を示したファイル(練習データのディレクトリに入っています)

$ ls blankmap_AspgfTo_RH03042*

blankmap_AspgfTo_RH030425object025_si002s

blankmap_AspgfTo_RH030429object017_si001s

blankmap_AspgfTo_RH030429object017_si005s

blankmap_AspgfTo_RH030429object021_si002s

blankmap_AspgfTo_RH030429object021_w7c3

blankmap_AspgfTo_RH030429object023_si006s

(注意)これらblankmap_*のパラメータファイルは、SDF projectによっ て作られたものです。このため、必ずしも使用している練習データに対して、 適切にマスクするようにはなっていません。つまり、マスクすべきでない部 分までマスクするようなパラメータになってしまっています。しかしながら、 解析の仕方を学ぶために練習データをいじるレベルではこのままでも問題あ りません。(可能なら、自分で適切なパラメータファイルを作り直してみて ください。)

$ cat blankmap_AspgfTo_RH030425object025_si002s

1974 2034 2356 2634

1528 1804 4024 4070

ここで、各行は1個の四角形のマスクを意味します。各行4つの列から なり、x1 x2 y1 y2 の順で書きます。x=x1-x2, y=y1-y2の四角形の領域がマ スクされます。上記の例だと、x=1974-2034, y=2356-2634の四角形と x=1528-1804, y=4024-4070の四角形といった具合にマスクされます。 Blankmap_* のファイルを作る時にはIRAFのimexamを使うと便利です。 (チェックしたい画像をds9に表示した状態で、cl> imexam とします。 ds9の画像上で bを二回押して四角形の2頂点を決めると位置がx1 x2 y1 y2 の順に出力されます。これをそのままカットアンドペーストしてblankmap_* に書き込むことができます。)

実行後)

以下のような名前のファイル(マスクした画像)ができます。

bAspgfTo_RH030425object025_si001s.fits

bAspgfTo_RH030425object025_si002s.fits

bAspgfTo_RH030425object025_si005s.fits

...

実行後のチェックポイント)

blankmap_* のファイルで指定した位置がマスクされているはずです。 1−2枚取り出して確認してください。対応するblankmap_* のファイルが 無い画像は、何も処理されません。

(11)組み合わせ規則作り(matching)

同じターゲット天体(天域)を複数回撮影した場合、複数の画像を重ね 合わせて画質(S/N)を上げることができます。複数の画像を重ねる為には、 画像間の位置の違いを知らなくてはいけません。また、異なる画像では天体 からのfluxが積分時間や空の透過率の違いによって違ってきてしまいます。 このような画像間の位置やfluxの違いを測定しておく作業がmatchingです。 matchingの作業では、各画像に写っている星(またはstellar objects)を 検出し、それらを元に各画像間の位置関係とflux比を求めます。

コマンド:

$ makemos.csh [makemos.lis] [starsel nskysigma] [starsel npix] [starsel peakmin] [starsel peakmax] [aperture phot radius in pix] [output mos-file name]

ここで

・[makemos.lis]:matchingを行う画像のリスト

・[starsel nskysigma]:何倍のskysigmaが有意か(matchingに使う星を選ぶ基準)

・[starsel npix]:有意なskysigmaが何pix連なったとき天体と見なすか (matchingに使う星を選ぶ基準)

・[starsel peakmin]:stellar objectのflux peakの許容最小値(matchingに使う星を選ぶ基準)

・[starsel peakmax]:stellar objectのflux peakの許容最大値(matchingに使う星を選ぶ基準)

・[aperture phot radius in pix]:測光に使う円形apertureの半径の大きさ

・[output mos-file name]:chip間の相対位置、感度が書かれた出力ファイルの名前

例)

$ ls -1 bAspgfTo_RH03042*.fits > makemos.lis

matchingをするオブジェクト画像のリストを作る

$ makemos.csh makemos.lis 5 20 500 10000 10 all.mos

makemos.cshを実行

ちなみに、

$ cat makemos.lis

bAspgfTo_RH030425object025_si001s.fits

bAspgfTo_RH030425object025_si002s.fits

bAspgfTo_RH030425object025_si005s.fits

...

実行後)

以下のような名前のファイルができる

all.mos

中身は、

$ cat all.mos

bAspgfTo_RH030425object025_si001s.fits 0.000000 0.000000 0.000000 1.000000

bAspgfTo_RH030425object025_si002s.fits 1.601005 4088.551744 -0.000275 0.989406

bAspgfTo_RH030425object025_si005s.fits -2118.787371 1.104977 -0.000282 0.983195

のように5列からなるリストです。

このファイルの意味は次のようになっています。まず、

makemos.lisの一番最初に書かれていた画像、 bAspgfTo_RH030425object025_si001s.fits(今回の場合)が基準になります (基準画像)。all.mosの2行目の情報は、この基準画像に対して、 bAspgfTo_RH030425object025_si002s.fitはX方向(右が正)に1.6pix、Y方 向(上が正)に4088.6pix、回転角が-0.000275radian(反時計回り)、flux 比が、0.989倍であるという意味です。

実行後のチェックポイント)

上記のようにall.mosが5列からなるリストになっていれば大抵の場合は 成功していることを意味します。成功しなかった場合は、all.mos自体が作 られなかったり、作られてもエラーメッセージが含まれていたりおかしなリ ストになっていたりします。

出来上がったall.mosの中身は良く見てください。X,Yの位置やflux比が リーズナブルになっているかどうか確認してください。これらの項目におか しな値が入っている場合は、matchingが失敗しています。

all.mosの中身の大まかな確認方法には以下のような例が考えられます。 各自で工夫されてよい方法を確立されたらぜひ開発チームにもお知らせくだ さい。

1.all.mos内の2列目と3列目の値をそれぞれ縦軸・横軸としてプロット してみます。この図は各ショットの基準画像からの位置ずれを表しているの で、観測時のディザーパターンと一致するかどうかを見れば、all.mosのX、 Yの出力がリーズナブルかどうかを判断できます。大きな外れ値がある場合 は、そのチップのmatchingに失敗している可能性があります。

2.各チップ間の距離はショットごとにそれほど変わらずほぼ一定のは ずなので、all.mos内の2列目と3列目を使ってチップ間の距離を計算すれば、 matchingの失敗を判定出来ます。 たとえば、si001sチップとw67c1チップと の間の距離が、とあるショットだけで他のショットでの値と大きく異なって いれば、そのショットのデータのマッチングに失敗している可能性がありま す。

3.all.mos内の5列目の値(flux比)を各ショット間で比較してみます。 安定した天候条件下で取られたショット間のflux比は、積分時間に比例して いると考えられます。

4.all.mosを用いてモザイキングされた画像を直接目で確認することは matchingが成功したかどうかの重要なチェック事項です。次節も参照してく ださい。

makemos.cshを実行中に、各画像に対して、

selected stars = 721

のように、検出されたstellar objectの個数が表示されます。この数が 極端に少ない(30個以下)または多い場合はall.mos作りが失敗すること があります。次の4つのパラメター値を変えて調節してください。[starsel nskysigma]、[starsel npix]、[starsel peakmin]、および[starsel peakmax]です。matchingが失敗する原因は、この4つのパラメータの取り方 が悪いために適切なstellar objectを画像から選び出せないことにあること が多いです。


(注意)1つの天体(天域)に対して画像が1ショット分しかない場合 や、複数ショットの画像の組み合わせが必要ない場合はこの処理、および (12)の処理を行う必要はありません。

(参考)次節のモザイキング(組み合わせ)過程では、 all.mosファイル内の値を用いて以下の公式に従い 各入力ファイルの位置変換が行われます。

 
x_mos = cos(theta) x -sin(theta) y + x_local
y_mos = sin(theta) x +cos(theta) y + y_local

ここで、右辺のx、yが入力ファイルの変換される各ピクセルの座標で、 左辺のx_mosとy_mos は、変換後のx, y座標です。右辺のx_local とy_local はmosファイルの2列目、3列目(x, yオフセット)、thetaは4列目 ((x,y)=(0,0) を回転軸としてx軸から左回りに測った回転角度 (rad))に対 応しています。

(12)組み合わせ(mosaicing)

手順(10)のmatchingで求めた組合せ規則を元に、バラバラの画像を1枚 に組合せ、足し合わせます。

コマンド:

$ imcio2a [引数] [mos file] [result image]

ここで

・[引数]:imcio2aで使う引数(-dist_clip -nline=20 -dtype=FITSFLOAT -ignor=-32768)

・[mos file]:matchingで作った組合せ規則のファイル

・[result image]:最終画像の名前

例)

$ imcio2a -dist_clip -nline=20 -dtype=FITSFLOAT -pixignr=-32768 all.mos all.fits

imcio2aを実行

ちなみに、

$ cat all.mos

bAspgfTo_RH030425object025_si001s.fits 0.000000 0.000000 0.000000 1.000000

bAspgfTo_RH030425object025_si002s.fits 1.601005 4088.551744 -0.000275 0.989406

bAspgfTo_RH030425object025_si005s.fits -2118.787371 1.104977 -0.000282 0.983195

...

実行後)

以下のような名前のファイル(最終画像)ができる

all.fits

これが最終画像になります。この画像を元に、天体のカタログを作った りするなど、サイエンティフィックな解析を行うことができます。

実行後のチェックポイント)

出来上がった最終画像を ds9 などで注意深く見てください。(11) のmatching がうまくいかなかった場合などは、星像が歪んでいたりするこ とがあります。

(注意)makemos.lis の一番最初に書かれた画像が基準画像になることは 説明しましたが、この基準画像の FITS header に記述されている World Coordinate System (WCS) が TAN 以外の場合でも、最終画像の WCS は強制的に TAN になります。この場合、最終画像の WCS は不正確なもの になると思われます。WCS の情報が必要な際は、きちんと位置較正を 行うようにしてください。例えば、SMOKA (http://smoka.nao.ac.jp) から 配布されているアーカイブデータの中には、WCS が TNX になっているもの が含まれていますので、特にご注意ください。

(参考1) [引数]の一つ -dist_clip はclipped meanによる画像合成を 意味します。-dist_clip の代わりに、-dist_med とすれば medianによる画 像合成が、-dist_add とすれば meanによる画像合成を作ることができます。 また、-nlineはモザイク画像作成においてy軸方向に一度に何ピクセル分処 理するかを指定しています。ショット数が大きい場合、メモリ容量の比較的 小さいコンピュータ環境では全画像をうまく扱えずコマンドが失敗すること がありますが、-nlineを小さく設定すれば、画像を細かく分割して処理する ことになりますので、コマンドが無事完了する可能性が高くなります。例で はy軸方向に20ピクセルずつ分割して画像を処理するよう指示しています。

(参考2)[引数]として、-dist_clip, -dist_med, -dist_add の代わ りに -dist_peakを与えることで、最終画像のチェックを行うことが出来ま す。このオプションは移動天体を検出するためのもので、各ピクセルの (max)-(median)が出力されます。通常は出力画像の全視野内に数個の天体が 見つかりますが、もしも特定の領域に多数の天体(明るいピクセル群)が見 つかった場合には、その近辺でマッチングが失敗している可能性があります。

これで、ターゲット画像の一次処理は終了です。

標準星天体の処理

標準星データの処理は以下のようになります。 以下の4段階の処理は全てターゲット画像の処理と同様です。 重要な点は「フラットを作成する代わりに、ターゲット画像で 用いたフラットをコピーしてくる」という点です。

(S1)画像ファイル名の変換および画像の確認

コマンド:

$ namechange.csh [SUP file names]

ここで

・[SUP file names]: 名前を変えたいファイル名のリスト

再度注意を喚起しますが、 コマンドは、処理に使うファイルの置かれて いるディレクトリで実行しなければなりません。

例)

$ cd standard/     

データのあるディレクトリにいく

$ ls -1 SUPA*.fits > namechange.lis    

名前を変えるファイル名のリストを作る(ls -1-1は 「マイナス イチ」です。この後にもあるls -1-1は全て「マイナス イチ」なので注意。

$ namechange.csh namechange.lis

namechange.cshを実行

ちなみに、

$ cat namechange.lis

SUPA00195120.fits

SUPA00195121.fits

SUPA00195122.fits

...

実行後)

SUPA...という名前のファイルは以下のようなファイル名に変わる

H030330object044_si001s.fits

H030330object044_si002s.fits

H030330object044_si005s.fits

...

実行後のチェックポイント)

SUPA...という名前のファイルがちゃんとH…という名前に変わっ ているはずです。lsコマンドで確認できます。

(S2)bias引きおよびoverscanの切り取り

standard ディレクトリ中で以下の操作を行ないます。

例)

$ ls -1 H*.fits > overscansub.lis

解析に使う画像のリストを作る

$ overscansub.csh overscansub.lis

overscansub.cshを実行

ちなみに、

$ cat overscansub.lis

H030330object044_si001s.fits

H030330object044_si002s.fits

H030330object044_si005s.fits

...

実行後)

以下のようなファイル(overscan bias引きと切り取り済み画像)ができる

To_RH030330object044_si001s.fits

To_RH030330object044_si002s.fits

To_RH030330object044_si005s.fits

...

(S3)感度補正 (flat fielding)

(3)で作成した flat 画像を用いて、 1画像内での相対感度の補正をします。
なお、標準星画像と目標天体画像で使う flat 画像は、 必ず同じものである必要があります。 そこで、object/obj_mflat* を標準星画像を置いたディレクトリにコピーし、 コマンドを実行します。

例)

$ cp ../object/obj_mflat*.fits .

$ ls -1 obj_mflat*.fits > ffield_mf.lis

$ ls -1 To_RH*.fits > ffield_im.lis

$ ffield.csh ffield_mf.lis ffield_im.lis 

ffield.cshを実行

$ cat ffield_mf.lis

obj_mflat_si001s.fits

obj_mflat_si002s.fits

obj_mflat_si005s.fits

...

$ cat ffield_im.lis

To_RH030330object044_si001s.fits

To_RH030330object044_si002s.fits

To_RH030330object044_si005s.fits

...

実行後)

以下のような名前のファイル(感度補正済みの画像)ができます

fTo_RH030330object044_si001s.fits

fTo_RH030330object044_si002s.fits

fTo_RH030330object044_si005s.fits

...

(S4)歪補正(distortion correction)および微分大気差補正

例)

$ ls -1 fTo_RH*.fits > distcorr.lis

歪補正を行うオブジェクト画像のリストを作る

$ distcorr.csh distcorr.lis

distcorr.cshを実行

ちなみに、

$ cat distcorr.lis

fTo_RH030330object044_si001s.fits

fTo_RH030330object044_si002s.fits

fTo_RH030330object044_si005s.fits

...

実行後)

以下のような名前のファイル(歪み補正済みの画像)ができます。

gfTo_RH030330object044_si001s.fits

gfTo_RH030330object044_si002s.fits

gfTo_RH030330object044_si005s.fits

...

(S5)チップ間相対感度補正

(S4)が終った段階では標準星画像はチップ間での感度補正がされていません。 例えば 2002-2008/06 のデータでは、w67c1 の感度は他に比べ半分程度なので、 ここで 10000 ADU であった星は、本来は他のチップで 10000 ADU になる星の 倍の明るさであるべきです。 このようなチップ間の相対感度比を、(11)で作成した [output mos-file name] を元に補正する必要があります。

この処理は、標準星が si001s にだけ写っているような場合は 必要ありませんが、練習用データのようにいくつものチップに 散っている場合に必要となります。

具体的には *.mos 中の該当するチップの感度で、 標準星画像を割る操作が必要となりますが、 これを補正する実行ファイルは sdfred ver1.* では提供されません。 現在検討中の sdfrev ver2.* をお待ち下さい。

その他の重要な情報

原則として、SDFREDはファーストライトから2001年3月末までに取得され たデータの解析には対応していません。これらのデータにはそれ以降のデータで は解消された以下のような問題が知られています。

1. 2000年11月から2000年12月の間に取得されたデータ

以下の5CCDについてリニアリティに問題があることが知られています。

DET_ID=0, 1, 7, 8, 9.

2. 2000年11月から2001年1月の間に取得されたデータ

fitsヘッダのWCS情報が以下のように誤って記録されています。

・CDELT1の符号が+-逆、および対応するCD行列の係数が逆転している

SDFREDのソフトウェアは、(10) matchingの段階でfitsファイルのWCS情 報を用いているため、この期間のデータに対してmatchingを行うと makemos.cshスクリプトが正しい結果を出力しません。

3. 2000年10月から2001年3月の間に取得されたデータ

1枚のCCD(DET_ID=6 (w93c2))が死んでおり、このCCDのデータが存在しません。

ただし、解析は9枚のCCDのデータに対してSDFREDを用いて通常通り行えるはずです。


更に、以下の点に御注意下さい

4. 2008年7月21日以降に取得されたデータ

2008年7月に Suprime-Cam はチップの入れ換えなど大幅な更新を行ないました。 これに伴い FITS ファイルのデータ構造も変更されたため、 これ以降に取得されたデータに対しては SDFRED v1.* は未対応です。


SMOKAのページにもデータに関する有用な情報が記載されています。http://smoka.nao.ac.jp/about/subaru.jsp

謝辞:

SDFREDに対する貴重なコメントやバグレポートを頂いた以下の方々に感 謝の意を表します。

Takehiko Wada (JAXA), Chiaki Ihara (JAXA), Hitoshi Hanami (Iwate Univ), Myungkook James Jee (JHU), Kazuaki Ota (NAOJ), Yasunori Sato (NAOJ), Ryosuke Yamauchi (Tohoku Univ), Elinor Medezinski (Tel-Aviv Univ), Dovi Poznanski (Tel-Aviv Univ), Ben Cain (MIT), Tomoki Saito (Ehime Univ), Sakurako Okamoto (Univ of Tokyo), Alice Shapley(UCLA), Naoki Yasuda (Univ of Tokyo) and Nobuhiko Kusakabe (NAOJ).

おわり

Appendix