BaasicUsage01
ここでは jasmine-imagesim の基本的な使い方について述べますが、 基本的にパラメータを設定してコードを流すだけで難しくはありません。
これから作業するための領域 ([WORKDIR]) を作りましょう。
mkdir [WORKDIR]
この領域にパラメータファイル、計算結果を置いていきます。
パラメータファイルのひな形 jasmine-imagesim のホームディレクトリ ([JIS_HOME]) の下の params/templates にあります。これをディレクトリごと作業領域にコピーして [WORKDIR]/[PARDIR] としましょう。
cp [JIS_HOME]/params/templates [WORKDIR]/[PARDIR] -rf
中には以下のようなファイルがあります。
-
ace*.json
: 指向エラー (ACE) 設定ファイル -
ctl.json
: 計算諸設定ファイル -
det.json
: 検出器関連設定ファイル -
drift.json
: 指向ドリフト設定ファイル -
spc.json
: -
src.json
: -
star_plate.csv
: 天体情報ファイル -
tel.json
: 望遠鏡設定ファイル -
variability.json
: 変光設定ファイル -
wfe.json
: 波面誤差設定ファイル
今回は ctl.json
, det.json
, star_plate.csv
, tel.json
を確認、適宜設定を変更してシミュレーションを行うことにします。各ファイルの設定は下記に記載します。これらのファイルを直接編集していただいても構いませんし、適当な名前のファイルにコピーしてそちらを編集していただくのでも構いません。
ctl.json には計算に関する総合的なパラメータが記載されます。 以下、その設定の仕方について記述します。
effect
の項にはどういった効果を考慮する/しないという設定を記述します。
-
wfe
wfe
は波面誤差 (wavefront error; wfe) をどのように考慮するかを指定するパラメータです。wfe
のvalue
にdummy
,random
,fringe37
のいずれかを記載して設定を行います。dummy
を書くと波面誤差はないものとされます。random
を書くとランダムな波面誤差を生成します。fringe37
は光学計算で生成した波面誤差パラメータファイルを入力として波面誤差を考慮するものです。
ここでは波面誤差を考慮しないものとして、effect.wfe.val
は"dummy"
としておきましょう (引用符を付けて下さい)。 -
psf
psf
は点像分布関数 (point spread function; psf) の計算方法を指定するパラメータです。psf
のvalue
にはgauss
,real
のいずれかを記載して設定します。gauss
は PSF をガウシアンとするもので、real
は開口パターンや波面誤差を考慮して PSF を計算するものです。
ここでは開口パターンを考慮するためにeffect.psf.val
を"real"
に設定しましょう (引用符を付けて下さい)。 -
ace
ace
は姿勢制御誤差 (attitude control error; ace) の計算方法を指定するパラメータです。ace
のvalue
にはnone
,gauss
,real
のいずれかを記載します。none
は姿勢制御誤差を考慮しないもの、gauss
は姿勢制御誤差による PSF の変化を理想的な PSF とガウス関数の畳み込みで計算するもの、real
は ACE の特性をパワースペクトルで規定て計算するものです。
ここでは簡単のためにガウス関数を使って計算するeffect.ace.val
を"gauss"
にしておきましょう (引用符を付けて下さい)。 -
flat_interpix
flat_interpix
はピクセル間フラットのばらつきを考慮するかどうか指定するパラメータです。考慮する場合はそのvalue
をtrue
に、考慮しない場合はfalse
とします。
ここでは考慮することにしてeffect.flat_interpix.val
をtrue
としておきましょう (引用符は不要です)。 -
flat_intrapix
flat_intrapix
はピクセル内フラットの分布を考慮するかどうか指定するパラメータです。考慮する場合はそのvalue
をtrue
に、考慮しない場合はfalse
とします。
ここでは考慮しないことにしてeffect.flat_intrapix.val
をfalse
としておきましょう (引用符は不要です)。
次の M
, DellPix
, fN
, PixNum
, dx
, dy
は星像計算を制御するパラメータですが、今回はデフォルト値のままにしておきます。
GaussPSFfwhm
は先述の effect.psf.value
で "gauss"
を設定した場合に、ガウス関数型の星像の半値全幅 (fwhm) を設定するものです。今回は effect.psf.value
は real
を用いますのでこれもそのままにしておいて問題ありません。
WFEcontrol
には波面誤差計算のためのパラメータが格納されます。今回は先述の通り effect.wfe.val
を "dummy"
として波面誤差を考慮しませんので、何も変更する必要はありません。
ACEcontrol
にはリアルな ace の計算を行うための制御パラメータが格納されます。多くは effect.ace.val
を "real"
とした時に用いるパラメータですが、effect.ace.val
を "gauss"
にした場合も acex_std
, acey_std
はその設定値を利用します。acex_std
, acey_std
はそれぞれ ace の x, y 方向の標準偏差を規定します (単位: arcsec)。今回値を変更する必要はありませんが、必要に応じて変更しても構いません。
今回はこれらも変更する必要はありませんが、いかに説明を記述しますので参考になさってください (必要に応じて変えても構いません)。
- Nplate
小フレームを構成する plate の数です (同領域露光回数)。 - tplate
1プレートの露光時間です。 - Rv
星間減光の減光則を規定する Rv パラメータです (Rv=Av/E(B-V))。 - J-H
シミュレーションを行う星の見かけの色 (J-H の色指数) を規定するパラメータです。 - alpha (obsolete)
J, H, Hw 等級を関連付けるのに使われていたパラメータです。通常使われなくなりました。
検出器に関連するパラメータを格納しています。今回は特に変更する必要はありませんが、各項目の詳細については下記に記載しますので参考にしてください (必要に応じてご変更いただいても構いません)。
-
pixsize
ピクセルの物理サイズです (単位: ミクロン)。 -
Npix
一辺あたりのピクセル数です。正方形のフォーマットを仮定しており、リファレンスピクセルの扱いは 現在の imagesim にはありません。 -
readnoise
一回読み出しあたりの読み出しノイズです (単位: 電子数)。 -
Idark
背景光・迷光を含む暗電流設定値です (単位: 電子数/秒/ピクセル)。 -
Fullwell
フルウェルの設定値です (単位: 電子数)。現状、検出器応答の非線形性は考慮しませんが、「これ以上カウントが上がらない」という意味の飽和のみ考慮されており、そのレベルを設定するのがこの Fullwell の値です。 -
QE
量子効率の値です。QE.wavelength.val
に波長グリッドの値 (単位: ミクロン)、QE.qe_value.val
に量子効率の値を配列として記載します。 -
spixdim
ピクセル内フラットの計算のためのサブグリッドのグリッド数です。 -
Nmargin
リアルな ace を計算する際の psf 計算領域のマージンです。 -
intrapix
ピクセル内フラットの計算のための参照ファイル名の設定領域です。 -
persistence
パーシステンス計算の制御パラメータです。現在はパーシステンス計算機能は未実装です。 -
readparams
読み出しに関連するパラメータです。- fsmpl: サンプリング周波数です (単位: sampling/sec)。
- ncol_ch: 読み出し ch 一個の担当領域の column 方向のピクセル数です。
- nrow_ch: 読み出し ch 一個の担当領域の row 方向のピクセル数です。
- npix_pre: 1 row 読み出し前に ref. level を取る場合のサンプリング回数です。
- npix_post: 1 row 読み出し後に ref. level を取る場合のサンプリング回数です。
- t_overhead: リセット後読み出し開始までの間の overhead 時間です (単位: 秒)。
-
gain
変換ゲインです (単位: 電子数/adu)。 -
location
焦点面上での検出器の位置です。
望遠鏡に関係するパラメータを格納しています。基本的に変更の必要はありませんが、以下に各項目の説明を記載しますので参考になさってください (ご変更いただいても構いません)。
-
EPD
望遠鏡の有効口径です (単位: mm)。 -
Cobs
副鏡による遮蔽割合です (副鏡遮蔽直径/EPD)。 -
Spider
スパイダーの設定です。現状対称な三本スパイダ―を想定しております。スパイダーの厚みをSpider.thickness.val
に設定します (単位: mm)。 -
Eopt
光学系効率の設定です (望遠鏡+フィルタ)。Eopt.wavelength.val
に波長グリッド (単位: ミクロン)、Eopt.efficiency.val
に光学系効率の値をそれぞれ配列で与えます。 -
EFL
焦点距離の設定です (単位: mm)。
天体の情報を設定するファイルです。特に変更しなくても動かすことはできますが、以下の説明を参考に適切なものを作ることで、検出器上の指定の位置に指定の明るさの星を置くようなシミュレーションが可能となります。以下、本ファイルの説明を記述します。
本ファイルは csv とあるように項目ごとにカンマで区切って記載します。最初の行はヘッダとなっており、各列の項目名を記載します。二行目以降は、plate index
, star index
, x pixel
, y pixel
という項目を使って「何番目のプレート plate index
」に「番号○○の星 star index
」が「検出器上のどこ (x pixel
, y pixel
)」に「どういう Hw 等級 Hwmag
」で写っているかを指定します。ただし現状では、plate index
が 0 の物だけを、全プレートで撮影する形で計算されます。
x pixel
, y pixel
は FITS の規約に則り、左下のピクセルの中心を (1, 1) とする座標系での値を記載することとしています。
lambda
, beta
は銀経銀緯を記載する列ですが、現在のところ使っておりませんので、適当な値を入れておいてください。
まず作業領域 ([WORKDIR]
) に移動しましょう。
cd [WORKDIR]
そのディレクトリにパラメータファイルをまとめたディレクトリ [PARDIR]
は見えますか。ls
で確認してみてください。
確認できればいよいよコードの実行です。実行コードは jasmine-imagesim のホームディレクトリの下の bin
の下にある mkimage.py
です ([JIS_HOME]/bin/mkimage.py
)。これを以下の要領で実行します。
python [JIS_HOME]/bin/mkimage.py --pd ./[PARDIR]/ --starplate star_plate.csv --det det.json --tel tel.json --ace ace_001.json --ctl ctl.json --format platefits --overwrite --od ./[OUTDIR]
mkimage.py 以降は引数群で、--引数名 引数設定値
という組が連続して記述されています。pd
はパラメータファイルを保持するディレクトリ名で、ここでは ./[PARDIR]/
となります。最後の od
は計算結果を出力するディレクトリ名 ([OUTDIR]
)で、適切に設定をお願いします。コマンド実行自転で出力ディレクトリを作っておく必要はなく、存在しなければ自動的に作成します。最後から二番目の format
は出力フォーマットで、platefits
をしているするとプレート毎に FITS 化したものを出力します。最後から三番目の overwrite
は出力ファイルについて上書きを許可する場合に設定してください。
そのほかの引数はどのパラメータに対して [PARDIR]
内のどのファイルを参照するかを指定しています。上記コマンドではデフォルトの名前を記載しましたが、別ファイルに設定を作った場合は適切に参照すべきファイル名を記述してください。以下に残る引数群の説明を記述します。
- starplate
天体情報設定ファイルを指定します。テンプレートファイル群中の star_plate.csv に相当します。 - det
検出器設定ファイルを指定します。テンプレートファイル群中の det.json に相当します。 - tel
望遠鏡設定ファイルを指定します。テンプレートファイル群中の tel.json に相当します。 - ace
ace の設定ファイルを指定します。effect.ace.val
をreal
にしない限り本来必要ないのですが、real
以外を選んだ場合も適当な ace 設定ファイル (テンプレートファイル群中の ace_???.json) を指定してください。 - ctl
計算諸設定ファイルを指定します。テンプレートファイル群中の ctl.json に相当します。
上記コマンドを実行して無事に終われば完了です。先に設定した [OUTDIR]
中に FITS ファイルが出来上がっているはずですので、確認してみてください。
image??.fits というファイルがプレート毎の FITS ファイルです。デフォルトの star_plate.csv を使っている場合、左下に星が見えていれば正解です。
お疲れさまでした!