1240
コメント:
|
3639
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 9: | 行 9: |
課題としては、 | 以下の課題を一つずつ確認していく。 |
行 19: | 行 19: |
ここでは、作業ディレクトリを{{{Fluid}}}という名前のディレクトリとして、以下の手順で示す{{{cd Fluid }}}は実際には、Fluidの絶対パスを指定する必要がある場合があるので自分の環境に応じて適切なコマンドを実行する。 {{{ mkdir Fluid; }}} |
|
行 21: | 行 26: |
cd Fluid | |
行 24: | 行 30: |
=== | === いろいろな作業を行うためにディレクトリを用意する === {{{ cd Fluid mkdir build sw scripts run analysis }}} 簡単に各ディレクトリの役割をまとめると、こんな感じである。 || '''ディレクトリ''' || '''使用用途''' || || Airdog || プログラムのソースコード || || build || プログラムをコンパイルするための作業用 || || sw || コンパイルしたプログラムを保管するため || || scripts || いろいろなスクリプト(環境設定等) || || run || プログラムを実行するところ || || analysis || 生成したデータを解析するところ || === 環境設定 === 今後は上で示したディレクトリ構造のもとでプログラムの開発やデータ解析を行っていきたい。そのために、簡単な環境設定をしておくと便利である。 scripts/setup.shというディレクトリを作り、以下の内容を記述する。 {{{ export SWDIR=Fluid/sw export PATH=${SWDIR}/bin:${PATH} export LD_LIBRARY_PATH=${SWDIR}/lib:${LD_LIBRARY_PATH} }}} Airdogプログラムをコンパイルするためには、環境変数SWDIRでインストール先ディレクトリを設定するようになっている。 このファイルを用意できたら、ターミナルを開いて作業を開始する前に毎回Fluidディレクトリから以下のコマンドを実行する。 {{{ source ./scripts/setup.sh }}} === プログラムのコンパイル === {{{ cd Fluid/build cmake ../Airdog make make install }}} makeを実行して100%処理が終了していれば、コンパイル作業は正常に終了したことになる。 プログラムのソースコードを更新した場合は再度コンパイルが必要なため、cmake, makeをやり直す必要がある。 make installを実行すると、コンパイル済みのファイルがFluid/swにコピーされて利用可能になる。 |
行 26: | 行 70: |
無料の流体解析プログラムである。 |
大気シミュレーション
目標
大気の流れを支配する法則の数値シミュレーションをやってみる。基礎となる法則
- 流体の運動: Navie-Stokes方程式、連続の式
- 熱力学: 気体の状態方程式、熱伝導方程式
を離散化した差分方程式を計算機上で解いて、流体の運動を調べる。
以下の課題を一つずつ確認していく。
- 偏微分方程式を数値的に解いて、既知の問題に対して妥当な結果を得られることを確認する。
- 大気の物理量の可視化、流体運動の特徴の抽出。
- 特徴ある流体運動がおこる条件を調べる。
自前のプログラム
上の熱力学関係式と流体の運動方程式を差分方程式として実装したものを作ってみた。 コードはhttps://github.com/tkono17/Airdog.gitにおいてあるので、そこからダウンロードして使う。
まず、作業用のディレクトリを作って以下の作業は全てそのディレクトリの下で行う。 ここでは、作業ディレクトリをFluidという名前のディレクトリとして、以下の手順で示すcd Fluid は実際には、Fluidの絶対パスを指定する必要がある場合があるので自分の環境に応じて適切なコマンドを実行する。
mkdir Fluid;
Gitレポジトリからコードをダウンロードする
cd Fluid git clone https://github.com/tkono17/Airdog.git
いろいろな作業を行うためにディレクトリを用意する
cd Fluid mkdir build sw scripts run analysis
簡単に各ディレクトリの役割をまとめると、こんな感じである。
ディレクトリ |
使用用途 |
Airdog |
プログラムのソースコード |
build |
プログラムをコンパイルするための作業用 |
sw |
コンパイルしたプログラムを保管するため |
scripts |
いろいろなスクリプト(環境設定等) |
run |
プログラムを実行するところ |
analysis |
生成したデータを解析するところ |
環境設定
今後は上で示したディレクトリ構造のもとでプログラムの開発やデータ解析を行っていきたい。そのために、簡単な環境設定をしておくと便利である。 scripts/setup.shというディレクトリを作り、以下の内容を記述する。
export SWDIR=Fluid/sw export PATH=${SWDIR}/bin:${PATH} export LD_LIBRARY_PATH=${SWDIR}/lib:${LD_LIBRARY_PATH}
Airdogプログラムをコンパイルするためには、環境変数SWDIRでインストール先ディレクトリを設定するようになっている。 このファイルを用意できたら、ターミナルを開いて作業を開始する前に毎回Fluidディレクトリから以下のコマンドを実行する。
source ./scripts/setup.sh
プログラムのコンパイル
cd Fluid/build cmake ../Airdog make make install
makeを実行して100%処理が終了していれば、コンパイル作業は正常に終了したことになる。 プログラムのソースコードを更新した場合は再度コンパイルが必要なため、cmake, makeをやり直す必要がある。 make installを実行すると、コンパイル済みのファイルがFluid/swにコピーされて利用可能になる。
OpenFOAMプログラム
無料の流体解析プログラムである。