= 電磁場解析 = == Meep == Meepとは、MITでフォトニック結晶等を研究しているグループが開発した電磁場計算用のプログラムである。 有限差分時間領域法(Finite Difference Time Domain method, FDTD法)と呼ばれる手法を使ったコードで、 Maxwell方程式を差分化して時間発展させることで、定常状態だけでなく時間的に変化する現象を計算することが可能である。 誘電率の分散特性や非線形媒質も扱うことができるので、様々な誘電体や金属の電気伝導率等の効果も取り入れることができる。 == インストール == * meep-1.3 (http://ab-initio.mit.edu/wiki/index.php/Meep_download) * libctl-3.2.2 (http://ab-initio.mit.edu/wiki/index.php/Libctl) * h5htils-1.13 (https://github.com/stevengj/h5utils/blob/master/README.md) * harminv-1.4.1 (https://github.com/stevengj/harminv/blob/master/README.md) ソースコードをダウンロードして、*.tar.gzファイルを展開してコンパイルする。 ここでは、Linuxサーバー上に適当なディレクトリ(EMCalcとする)を作り、その下に以下のようなディレクトリ構造で作業をすることにする。 {{{ EMCalc/ EMCalc/sw # コンパイルしたライブラリやプログラムをインストールするディレクトリ EMCalc/src # ダウンロードしたファイルがあるディレクトリ }}} EMCalc/src/の中に、*.tar.gzファイルに加えて添付の[[attachment:install.sh]]をコピーしておく。 この状態で、 {{{ export SWDIR=EMCalc/sw cd EMCalc/src ./install.sh }}} と実行すれば、コンパイル・インストール作業は全て実行されるはずである。 但し、EMCalcの部分は/.../.../.../EMCalcのように絶対パスで指定する。 == 解析環境 == ここでは、よく行うように電磁場解析に必要なソフトウェアや作業用ディレクトリ等を全てEMCalcの下に置くものとする。 ディレクトリ構造としてはこんな感じである。 {{{ EMCalc/sw # ソフトウェアのインストール先 EMCalc/work # ソフトウェアを実行するディレクトリ EMCalc/analysis # 出力ファイルをさらに解析するための作業用ディレクトリ EMCalc/analysis/macros # 解析用マクロの保存先 }}}