OTO-Ohshima Tamashima Observatory-  Index  Search  Changes  Login

OTO - Ohshima Tamashima Observatory- - edit AIP4Win Diff

  • Added parts are displayed like this.
  • Deleted parts are displayed like this.

AIP4Winを使って測光しlogファイルに記録した場合の、データファイル化と光度曲線のグラフ化をWindowsPCで行う方法のメモです。

*1つは、Excelを使いテキストファイルを読み込んで処理する方法で、Excelに慣れた人には方法は簡単ですが、同じ処理を何度も繰り返すといい加減嫌になります。グラフも大きさが一定にならず、グラフタイトルや目盛を毎回毎回付けるのうんざりしています。(VBAマクロを組めばよいのでしょうが、それに慣れるまで大仕事です)
*そこで、'''AWK'''(テキスト処理)と'''GNUPLOT'''(グラフ処理)の出番です。この方法はコマンドプロンプトからコマンドを打ち込むのですが、テキストファイルに書いておいたものをコピー・ペーストすれば良いので手間は要りません。以下はその方法です。

!準備
まず、[['''GAWK'''|http://sourceforge.net/projects/gnuwin32/files/gawk/3.1.6-1/gawk-3.1.6-1-setup.exe/download?use_mirror=jaist&r=http%3A%2F%2Fgnuwin32.sourceforge.net%2Fpackages%2Fgawk.htm&use_mirror=jaist]]と[['''GNUPLOT'''|http://sourceforge.net/projects/gnuplot/files/latest/download?source=files]]をそれぞれWindows PCにインストールします。その具体的な方法は、ここでは省略しますが、検索して見てください、世の中には日本語の丁寧な解説が溢れています。

!データファイルの整理
あるディレクトリ(=フォルダー)例えば、"20130118"にAIP4WinのLogファイルが"LT_GemR.txt"というファイル名で置いてあるとします。ちょっと長いですが実物を示します。


AIP4Win Multiple-Image Photometry Tool
   Differential (w/ Extra Decimals) Photometry Report
   AIP4Win Licensed to: osamu ohshima
   AIP4Win v. 2.4.0
   Folder containing files:     X:\20130107\LT_Gem\R
   Filename of first image:     st8.00000238.RED.FIT
   Number of files selected:   127
   Star aperture radius:       12
   Sky annulus inner radius:   13
   Sky annulus outer radius:   18
   Star aperture pixels:       451
   Sky annulus pixels:         292
   Default integration time:   90.0
   Zero point:                 25.0
   Gain [e/ADU]:               2.3
   Readout noise [e rms]:       15.0
   Dark current [e/sec/pix]:   0.09
   Time of observation:
   Date, time, exposure from   FITS header
   First Image Date:           2013-01-07
   First Image Time:           09:41:23.616
   First Exposure Time:         60     seconds
   Filter:                     Rc
     Clock time zone:           0 hours
     Offset (true-clock):       0 seconds
     Heliocentric correction:   477 seconds
     Julian Day (midexposure): ImageTime + (Exposure / 2)
   First Mid-exposure Date:     2013-01-07
   First Mid-exposure Time:     09:41:53.616
Stars selected in the first image
Star   Star_X   Star_Y   Integr     Max_PV       Sky_ADU   Star_ADU      Mag アSigma
Var 620.891   52.181   60.000    22534.2    2393.52    271183.   15.862 0.0047
  C1   84.649 293.597   60.000    53455.1    2459.91    777309.   14.719 0.0018
  C2 456.437 305.733   60.000    21470.8    2418.44    237943.   16.004 0.0053
Ens                                           1015252.   14.429 0.0018
-------------------------------------------------------------------
Seq_# YYYY-MM-DD HH:MM:SS.sss    Julian_Day   Integr   Filt   (V-C1) アSigma (C2-C1) アSigma (V-Ens) アSigma    Sky_ADU File_Name
00001 2013-01-07 09:41:53.616 56299.9096135    60.00    Rc   1.1433 0.0050   1.2853 0.0056   1.4333 0.0050    2393.52 st8.00000238.RED.FIT
00002 2013-01-07 09:46:32.147 56299.9128373    60.00    Rc   1.1522 0.0048   1.2970 0.0054   1.4394 0.0049     2272.6 st8.00000242.RED.FIT
00003 2013-01-07 09:51:10.647 56299.9160606    60.00    Rc   1.1443 0.0046   1.2903 0.0052   1.4331 0.0046    2140.49 st8.00000246.RED.FIT
00004 2013-01-07 09:55:49.164 56299.9192843    60.00    Rc   1.1465 0.0044   1.2908 0.0049   1.4352 0.0044    2008.06 st8.00000250.RED.FIT
00005 2013-01-07 10:00:27.617 56299.9225071    60.00    Rc   1.1583 0.0042   1.2985 0.0047   1.4451 0.0042   1890.116 st8.00000254.RED.FIT
<以下省略>


実際には、1晩観測すると測光データが延々と続きます。何行あっても以下の処理は、行数に無関係に全く同じように処理出来ます。

このディレクトリ内にテキストエディタで、次のAWK用の1行スクリプトを保存して置き、コピーしてコマンドプロンプトにマウス右クリックでペーストします。(最近は私はテキストエディタには、[['''サクラエディター'''(オープンソース)|http://www.forest.impress.co.jp/docs/review/20120419_527310.html]]を使っています。ちなみにその場合のフォントは、[['''Ricty Diminished'''|http://nelog.jp/how-to-use-ricty-diminished-font/]]を使っています

gawk "(NR >=39)&&($1!=\"\") {printf \"%9.6f %s %s %s %s\n\", $4-56200.0,$7, $8, $9, $10}" LT_GemR.txt >LT_GemR.dat

この1行スクリプト(1行野郎と行野郎とかワンライナーと呼ぶようです)の意味は次のとおりです。

最初の38行分と空行を無視し、次のブロックを抜き出し出力する。第4フィールド(Julian_Day)から56200.0を引いたもの、第7から第10フィールド(V-C1、sigma、C2-C1、sigma)。これらのデータを"LT_GemR.txt"というファイルから抜き出し(計算し)、"LT_GemR.dat"というファイルに書き出す。

コマンドプロンプトに、マウス右クリックでペーストすると次のようになり、Enterキーを押します。

D:\20130118>gawk "(NR >=39)&&($1!=\"\") {printf \"%9.6f %s %s %s %s\n\", $4-56200.0,$7, $8, $9, $10}" LT_GemR.txt >LT_GemR.dat

するとそのディレクトリに次の様な内容のテキストファイル"LT_GemR.dat"が書きだされます。

99.909613 1.1433 0.0050 1.2853 0.0056
99.912837 1.1522 0.0048 1.2970 0.0054
99.916061 1.1443 0.0046 1.2903 0.0052
99.919284 1.1465 0.0044 1.2908 0.0049
99.922507 1.1583 0.0042 1.2985 0.0047
<以下省略>

以上で、測光データファイルが整理できました。

!この夜の光度曲線を描く

上記の作業で、この夜はIc、Rc、V、Bの4バンドで測光し、次のファイル名で保存してあるとします。"LT_GemIc.dat","LT_GemR.dat","LT_GemV.dat","LT_GemB.dat"

このディレクトリに次のような内容のテキストファイルを、例えば"LT_GemBVRI.plt"というファイル名で保存しておきます。!!GNUPLOTのスクリプトファイルを準備する

 データファイルが置いてあるのと同じディレクトリに、GNUPLOTの作図のためのpltファイルを作ります。
 次のような内容のテキストファイルを、例えば"LT_GemBVRI.plt"というファイル名で保存しておきます。

set title "LT Gem @OTO 20cm f/6.3 ST-8XME -35deg 90sec 2X2bin  Comp=HD43966"  
set yrange [2.0:0.8] reverse #縦軸範囲と 方向が逆(等級なのでマイナスが上)
#unset xrange
set xrange [99.85:100.35] #横軸の範囲指定 ここでは日の少数で指定
set ytics 0.1       #縦軸目盛間隔
set xtics 0.05             #横軸目盛間隔
#set y2tics 0.1
set ylabel "delta_mag"     #縦軸のタイトル
set xlabel "Hel.J.D. - 2455900.0"    #横軸のタイトル
set format x '%2.2f'       #横軸の数字のフォーマット
set format y '%1.2f'       #縦軸の数字のフォーマット
set size 1,1              
set key top right          #凡例を上の右に表示
#set terminal windows
set terminal png           #pngファイルで出力
set output "LT_Gem201301118IRVB.png"   # 出力ファイル名
plot 'LT_GemR.dat' using 1:2 title "Rc" pt 13 ps 0.5 lt 1, 'LT_GemV.dat' using 1:2 title "V" pt 13 ps 0.5 lt 2, 'LT_GemB.dat' using 1:2 title "B" pt 13 ps 0.5 lt 3,'LT_GemIc.dat' using 1:2 title "Ic" pt 13 ps 0.5 lt -1
#using 1:2はデータファイルの第1(HJD)と第2フィールド(V-C1)のデータを使うことを意味し、ptとpsとltはそれぞれ 点の形、点の大きさ、点の色を表す。

!!GNUPLOTを動かす


コマンドプロンプトで コマンドプロンプトから次のように打ち込みます。

D:\20130118>gnuplot LT_GemBVRI.plt

するとそのディレクトリに次の様な内容の画像ファイル"LT_Gem201301118IRVB.png" が書きだされます。


[[http://otobs.org/photometry/awk_gnuplot/LT_Gem20130118IRVB.png]]


!まとめ

 光度曲線を描くのに行った作業は次の3種類だけです。

(1)データファイルを作る作業(実際にはマウスの右クリック)

D:\20130118>gawk "(NR >=39)&&($1!=\"\") {printf \"%9.6f %s %s %s %s\n\", $4-56200.0,$7, $8, $9, $10}" LT_GemR.txt >LT_GemR.dat

 これをIc,R,V,Bの各バンドについて行う

(2)次のようにコマンドプロンプトにタイプするタイプした

D:\20130118>gnuplot LT_GemBVRI.plt

(3)その前に "LT_GemBVRI.plt"ファイルをそのGNUPLOTのスクリプトファイルを、その日の内容に合わせて、次の2行だけを編集しておく編集して、"LT_GemBVRI.plt"として保存した

set xrange [99.85:100.35]

set output "LT_Gem20130107IRVBC1.png"


何日もの観測データを整理する場合、Excelで行う作業量に比べると圧倒的に少ない手数で、しかも統一のとれた同じ仕上がりのフォーマットのグラフが得られます。


----
[[CCD測光]]トップへ戻る

[[OTO-Ohshima Tamashima Observatory-]]トップへ戻る

{{counter}}