SPEX on Mac OS X Mountain Lion

磁場をもつ白色矮星の連星系の、精密なX線スペクトルモデルを構築する作業の一環で、Mountain LionのMacBook ProにKaastra(SRON) et al.のスペクトル解析ソフトウエア SPEXをインストールしました。まっさらのMountain Lionだと少し追加作業(gfortranインストール)が必要だったので、メモしておきます。

SPEXのインストール

SPEX Official webのDownloadページから、Mountain Lion版のインストーラがダウンロードできます。Mac版が上位に表示されているのは親切設計ですね。

/usr/local/bin/spexに、関連ライブラリ等が/usr/local/spexにインストールされます。

gfortranのインストール

SPEXのwebからダウンロードしたパッケージは、gfortranに依存していますが、インストール後そのまま起動すると、

1
2
3
dyld: Library not loaded: /usr/local/lib/libgfortran.3.dylib
Referenced from: /usr/local/bin/spex
Reason: image not found

となってしまいます。gfortranインストールのために、HPCのgfortranのパッケージをココからダウンロード。ダウンロード後、Terminal.appから

1
2
cd /
sudo tar xvf ~/Desktop/gfortran-mlion.tar

すると、/usr/local/libにlibgfortran3.dylib等がインストールされます。

起動方法

いくつか環境変数の設定をするために、

1
source /etc/profile.d/spexdist.sh

してからspexを起動する必要があります。その後、起動してみると以下のようなエラーになりました。

1
2
3
4
5
6
7
8
9
yuasa@iris[/]$ spex
Welcome yuasa to SPEX version 2.03.03
NEW in this version of SPEX:
07-03-2012 Fixed bugs in plot commands for adding text labels to plots
15-03-2012 Fixed bug in comt model connected to igamma function
Error: cannot open file named spexdat0000003345.dum
Error: cannot open file named spexmod0000003345.dum
Error: cannot open file named spexpar0000003345.dum
Error: cannot open file named spexsys0000003345.dum

原因は、SPEX Official siteのFAQに書いてありました( http://www.sron.nl/spex/faq-hea-menu-2384 )。spexdat0000003345.dumなどのファイルはSPEXのテンポラリファイルで、SPEX起動時にカレントディレクトリに作成しようとするそうです。上の例では、gfortranをtar xfしたときのまま、ルートディレクトリにいる状態でspexを起動しようとしたの、書き込み権限が無いためテンポラリファイルを作成できずエラーになった、ということです。$HOMEなど、適当なフォルダに移動して実行してみるとOKでした。

CIEプラズマ(mekal)のスペクトルをプロットするサンプル

以下のようにすると、モデルだけプロットできます。 より詳しいコマンド例は、MullardのAstrophysics teamのGuide to SPEX commandsを参照してください。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
yuasa@iris[~]$ source /etc/profile.d/spexdist.sh
yuasa@iris[~]$ spex
 Welcome yuasa to SPEX version 2.03.03

 NEW in this version of SPEX:
07-03-2012 Fixed bugs in plot commands for adding text labels to plots
15-03-2012 Fixed bug in comt model connected to igamma function

SPEX >comp 1 cie
SPEX >par show       <== モデルパラメタを一覧表示するコマンド
SPEX >par 1 t val 5  <== パラメタを設定するコマンド(component 1のt(温度)を5keVに設定している)
SPEX >plot dev xs
SPEX >plot type model
SPEX >calculate     <== これが大事。モデルを計算して、プロット用データを作成してくれる
SPEX >plot y log
SPEX >plot ry 1e-10 1
SPEX >plot x log
SPEX >plot rx 1 50
SPEX >plot model col 8
SPEX >plot fill disp false
SPEX >plot

参考: Akamatsuくんのwebでもインストール方法が紹介されていて参考にしました。

また、MullardのAstrophysics teamが公開してくれている

もとても便利でした。