フリーウェアでシミュレーション結果アニメーションを作る

コマンドラインのススメ

<< Prev - Index - Next >>

3. 実践:星空データを変換してみる

3.1 データを取得


■ データのコンバートの実例として、ヒッパルコスデータ(星表)のオリジナルデータが、赤経赤緯の24時間制であらわしてあるのを、角度±180°、±90に変換してみます。

■ 既にMaya(映画製作とかに使う高いCGソフト)での星空作成方の解説ページhttp://sci4.net/tips/hip/mayaStar02.htmがあるので、ここではそこに解説してあるデータの入手法を利用させてもらいます。

http://cadcwww.dao.nrc.ca/astrocat/hipparcos/hip_main.html

表記のサイトで、必要な情報をチェックして「Search the Catalogue」ボタンを押すと、星表のテーブルが表示されます。

とりあえず必要なのは赤経と赤緯ですが、色情報や等級を得てもいいでしょう。
■ そのままだとブラウザ上に表示されているので、メモ帳なり秀丸なりEmacsなりにコピーをして、hip.txtとでもしてみます。

見てみると分かりますが、赤経が24時間表記になっています。これでは表示しにくいので、これを角度±180°に変換します。
赤緯の方は単位は「度」ですが、やはり「分」と「秒」を使った60進法表記なので、表示しやすいように単位を度だけに変換します。


3.2 データを変換


■ 例として以下のような形の hip.txt を得ました。hip.zip としてWWW上にも置いておきます。

M    677 N/A       00:08:23.26 +29:05:25.5 
M    746 N/A       00:09:10.68 +59:08:59.2 
M    765 N/A       00:09:24.64 -45:44:50.7 
M   1067 N/A       00:13:14.15 +15:11:00.9 
M   1562 N/A       00:19:25.67 -08:49:26.1 
M   2021 N/A       00:25:45.07 -77:15:15.2 
....

■ これは、awkを使って変換をしたいところですが、時:分:秒の間が「:」で区切られているのがうまくありません。そこで、sedを使って:を空白に変えたhip2.txtを作ってみます。
また、+ と - も後から掛け合わせるために +1 と -1 に変換します。

$ sed -e 's/:/ /g' -e 's/+/+1 /' -e 's/-/-1 /' hip.txt > hip2.txt

■ 結果、次のような hip2.txt が作られます。

M    677 N/A       00 08 23.26 +1 29 05 25.5 
M    746 N/A       00 09 10.68 +1 59 08 59.2 
M    765 N/A       00 09 24.64 -1 45 44 50.7 
M   1067 N/A       00 13 14.15 +1 15 11 00.9 
M   1562 N/A       00 19 25.67 -1 08 49 26.1 
M   2021 N/A       00 25 45.07 -1 77 15 15.2 
...

■ 使いたいデータは、表の4,5,6 番目と、 7,8,9,10 番目にあります。awkを使って変換をしてみます。

24時間制の角度を普通の360度制に変換するためには、
時間*15 + 分*(15/60) + 秒*(15/3600)
となります。また、赤緯の方も「分」と「秒」を度に変換します。

$ awk '{print $4*15+$5*(15/60)+$6*(15/3600), $7*($8+$9*(1/60)+$10*(1/3600))}' hip2.txt > hip3.txt

■ 結果、次のような hip3.txt が作られます。

2.09692 29.0904
2.2945 59.1498
2.35267 -45.7474
3.30896 15.1836
4.85696 -8.82392
6.43779 -77.2542
....


3.3 データを描画


■ この形になれば普通のグラフ描画ソフトで絵にすることができます。例として gnuplot で表示してみましょう

gnuplot の入っているLINUX/UNIX 機であればgnuplotを立ち上げて

gnuplot> p [0:360] [-90:+90] 'hip3.txt' w d

で表示されます。p はプロットするコマンドで、[,] は描画範囲 w d は点を使っての描画を意味します。
Windows機であれば、移植版であるwgnuplotを使います。

■ 6等星までのデータ(hipB.zip)をダウンロードして表示したのが下の図です(*)。


■ 味も素っ気も無い図ですが(しかも通常の星図とは多分左右反転していますが)、よく見ると…あ、天の川!
(星の濃い領域がサインカーブ状見えるのが分かりますか?)

*) 元のサイトからは一度にダウンロードできないので、5等星までと5−6等星の2回に分けてダウンロードしています。
<< Prev - Index - Next >>
inserted by FC2 system