MESA(Modules for Experiments in Stellar Astrophysics)のインストール

はじめに

我々のまわりを構成している物質(原子)のほとんどは、夜空に輝く星(恒星)の進化過程でその内部で核融合反応により作られたものだ。天文学に興味を持った頃、そのような事実を知って、とっても興味を持った。自分の体を構成する炭素、今飲んでいる水を構成する酸素など、全て恒星が作ったものだと。その興味そのまま、今に至っている。

星の進化をシミュレーションするソフトウェアが、今回のテーマであるMESA(Modules for Experiments in Stellar Astrophysics)だ。

MESA関連情報

全て、本家のページから辿れる。今後、興味深いページを見つけたらここに追加する。

MESAインストール手順

MESAのインストールは、次の2つのステップで完了する。

  • MESA SDKのインストール
  • MESA本体のインストール

以下の説明は、自分の使用環境であるUbuntu 18.04.5を前提としいる。したがって、「Linux(Intel)」の節に従って実行した。またシェルについてはbashを使っているので、Bourne shellの項に従った。

MESA SDKのインストール

MESA SDKのページの「Linux(Intel)」の記述通りに進めれば、特に問題もなく、インストールできた。

手順は次の通り。

  • 最新版(current)のMESA SDKをダウンロードする。現時点の最新版は、March 25 2020のリリース12778である。自分もこれをダウンロードした。
  • ダウンロードしたtarファイルを解凍。次のコマンドは、自分のホームディレクトリにmesasdkディレクトを作成しそこに解凍する。
$ tar xvfz mesasdk-x86_64-linux-20.3.2.tar.gz -C ~/
  • PATHを設定する。例えば、次の.bashrcに追加する。
export MESASDK_ROOT=~/mesasdk
  • 事前に必要なこと「Prerequisites」の表に従って、パッケージをインストールする。 自分の場合は、既にインストールされていたパッケージもあるので、実質的には、次を実行したことになる。 ともかく、何も考えずに、上から順番にパッケージ名をインストールすれば良い。
$ sudo apt install libx11-dev
$ sudo apt install zlib1g-dev
$ sudo apt install tcsh
  • SDKの初期化のため、以下を実行。
$ source $MESASDK_ROOT/bin/mesasdk_init.sh

※ 実は、上記コマンドは、ここで一回実行すれば終わりではなく、MESAに関連する環境変数設定と共に実行する必要がある(.bashrcに記述する必要ある)。

※ 自分は、これに気づかず、MESAのコンパイル時に、「ndiffをインストール必要がある」とのエラーが発生した。

  • インストール確認する。自分の実行結果は次の通り。
$ fortran --version
GNU Fortran (GCC) 9.2.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

MESAのインストール

MESAのインストールは、本家のページに従って実行すれば良い。

自分が実行した手順は、次の通り。

  • MESAをダウンロードする。自分がダウンロードしたzipファイルは、mesa-r12778.zip。
  • 自分のホームディレクトリに解凍する。次を実行すると、ホームディレクトリにmesa-r1228ディレクトが作成され、そこに解凍される。
$ unzip mesa-r12778.zip -d ~/
  • 環境変数に、MESA_DIRとOMP_NUM_THREADSを設定する。MESA関連で.bashrcに追加した内容は次の通り。
export MESA_DIR=~/mesa-r12778
export OMP_NUM_THREADS=4
export MESASDK_ROOT=~/mesasdk
soruce $MESASDK_ROOT/bin/mesasdk_init.sh

最下行のsource行は、MESA SDKで実行したからと言って忘れずに記述すること。さもないと、MESAコンパイルでエラーとなる(MESA SDKで説明済)。

  • MESAのコンパイル。
$ cd $MESA_DIR
$ ./install

・・・暫く待つと、次のようが表示され、正常にインストールされた。

MESA installation was successful

チュートリアルの実行

MESAのページの「getting started」の「How do you get started using MESA star?」に従って、チュートリアルを実行する。

以下の手順で、チュートリアルのモデルのmakeする。

$ cd $HOME
$ mkdir workspace/mesa
$ cd workspace/mesa
$ cp -r $MESA_DIR/star/work tutorial
$ cd tutorial
$ ./mk

以下で実行すると、モデルに従った星の進化過程のグラフが表示される。

$ ./rn

表示されたグラフ

モデルの意味、記述方法など、全く理解できていないので、今後学んで行こう。

結果は、またここにポストする。全て英語なので、時間がかかりそうだけど。


も参照してください