meineko’s blog

元つくばの某独立行政法人勤務の植物屋です。最近は、ほぼ、突発天体の話題です。

TAO Surveyの位相光度曲線

最近、TAO Surveyのデータから、位相光度曲線を描くことが多くなりました。
これまでは、手作業でやってきましたが、だんだん面倒になってきました(w
DBVS2000のデータベースから、位相光度曲線を描くRのスクリプトは、Katさんの書かれたスクリプトに手を加えてたものが、すでにあるので、それを、元に、STDから、位相光度曲線を描くスクリプトを作ることにします。


その前に、TAO Surveyの検索インターフェースが吐き出すデータをstd形式にするスクリプトをかきませう。
で、Tabからスペースの変換はとりあえず、秀丸にやらせるとして、それをもとに、stdファイルを作るスクリプトをでっち上げます。
#いや、sedでのtabの扱いで嵌ったので。
なお、csvファイルから、stdファイルにするRスクリプトはすでに、Imkさんの書かれたスクリプトを元に書いたのがあるのでそれも使います。


test.bat test

sed "s/  */,/g" %1.txt | sed "s/^............./%1/g" | sed "s/-/,/g" | sed "s/:/,/g" > temp2.txt
cat head.txt temp2.txt > temp.csv
R --vanilla --slave < m2std.r


m2std.r

#band <- "Ic"
obs <- "obs.code"
d <- read.csv("temp.csv", header=T, sep=",")
yymmddhhmmss <- sprintf("%02d%02d%02d%02d%02d%02d", d$yy, d$mm, d$dd, d$hh, d$min, d$ss)
mag <- sprintf("%4.2f%s", d$mag, d$band)
std <- data.frame(d$star, yymmddhhmmss, mag, obs)
write.table(std, file="temp.std", row.names=F, col.names=F, quote=F)


head.txt

star,yy,mm,dd,hh,min,ss,mag,err,band


これが吐き出すtemp.stdを読んで位相光度曲線にするのは、これからです。
方針は、冒頭に書いた通りです。


なお、gnuwin32環境でテストしています。
#OSX 10.6で、書こうとした時は、sedの挙動が特殊ではまりました。


最終的には、TAO Surveyの検索インターフェースで、周期と元期を入れれば、位相光度曲線を描いてくれるようにしたいですが、先は長そう?