COUNTER353155
 

アクセス

富山県立大学へのアクセス方法は,下記サイトをご覧ください。
   富山県立大学へのアクセス

最寄り駅は,JR 小杉駅 です。
 JR小杉駅南口から徒歩約20分(約2Km),または,
射水市コミュニティバス 「14.小杉駅・太閤山線」に乗車約5分です。

外部リンク:射水市コミュニティバス「14.小杉駅・太閤山線」

<お車>
 無料駐車場がご利用いただけます。下記学内マップをご参照ください。
     富山県立大学学内マップ
 

お知らせ

OpenFOAMによる熱流体シミュレーション入門講習会を富山にて開催いたします。
詳細は,こちらをご覧ください。
 
OpenFOAM に関する情報を,研究室メンバーから報告します。
 

オープンCAE勉強会 @富山 OpenFOAM関連講習のまとめ

<< OpenFOAM 入門・初心者向け講習 >>

はじめてのOpenFOAM OpenFOAM入門講習会 (講師:富山県立大 中川),第13回 オープンCAE勉強会@富山 2014/01/25
20140125はじめてのOpenFOAM_part1_公開.pdf
20140125はじめてのOpenFOAM_part2_公開.pdf
20140125はじめてのOpenFOAM_part3_公開.pdf

はじめてのOpenFOAM(講師:中山勝之),第53回 オープンCAE勉強会@富山 2017/04/22
はじめてのOpenFOAM(その2)(講師:富山県立大 中川),第54回 オープンCAE勉強会@富山 2017/05/20


<< OpenFOAM でのプリ処理・メッシュ生成 >>


snappyHexMeshを使ったメッシュ作成(講師:富山県立大 中川),第8回 オープンCAE勉強会@富山 2013/03/23
20130323snappyHexMesh超入門_実習.pdf
例題ケース  OF220_case.zip

OpenFOAMのためのメッシュ生成入門 (講師:富山県立大 中川),  第11回 オープンCAE勉強会@富山 2013/06/08
20130608メッシュ生成超入門_実習_修正版.pdf
blockMeshCases.zip
snappyHexMeshCases.zip

OpenFOAMメッシュ生成入門(ユーティリティの使い方) (講師:富山県立大 中川),第13回 オープンCAE勉強会@富山 2013/08/31
201308OpenCAE_lecture改訂版.pdf
OpenFOAMによるメッシュ操作入門(講師:富山県立大 中川),第21回 オープンCAE勉強会@富山 2014/05/10
20140510メッシュ生成入門_実習_公開.pdf
Training-Mesh-OpenFOAM-basic.zip

cfMeshによるメッシュ作成入門(講師:秋山善克 氏),第24回 オープンCAE勉強会@富山 2014/08/23
cfMeshによるメッシュ作成.pdf

cfMeshによるメッシュ作成入門(講師:秋山善克 氏),第35回 オープンCAE勉強会@富山 2015/08/22
cfMeshによるメッシュ作成_公開版.pdf


 OpenFOAMでのメッシュ生成入門(講師:富山県立大 中川),第55回 オープンCAE勉強会@富山 2017/06/17
<< OpenFOAM の ソースコード / プログラミング / カスタマイズ >>

OpenFOAMソースコードの眺め方:はじめの一歩 (講師:富山県立大 中川),第11回 オープンCAE勉強会@富山 2013/06/08
OpenFOAMソースコード解読へ向けてpt1_v1.pdf

OpenFOAM(R)ソースコード入門pt1 熱伝導方程式の解法から有限体積法の実装について考える(講師:富山県立大 中川) ,第16回 オープンCAE勉強会@富山 2013/11/17
20131117laplacianFoam解読講習_後編.pdf
netBeans設定方法v0.pdf

OpenFOAMのカスタマイズ・ソースコード改造 超入門(講師:富山県立大 中川),第19回 オープンCAE勉強会@富山 2014/03/23
OpenFOAMカスタマイズ超入門.pdf   OpenFOAMカスタマイズ超入門 講習テキスト
変更箇所説明.pdf   ソースコードとチュートリアル修正箇所説明

OpenFOAMのカスタマイズ・ソースコード改造入門(interFoamへの温度場計算追加)(講師:富山県立大 中川),第25回 オープンCAE勉強会@富山 2014/09/27
20140927LectureText.pdf 講習テキスト
変更箇所を明記したソースコードは オープンCAE勉強会@富山 ページのファイルキャビネットに保管
変更済みソースコードなどは,下記から取得可能
https://github.com/snaka-dev/Training_OF_customize_thermal-interFoam/releases

OpenFOAMのソースコードとコンパイルの基礎(laplacianFoamを中心に)(講師:富山県立大 中川),第28回 オープンCAE勉強会@富山 2014/12/13
20141213OpenFOAM_compile_basic_r0.pdf

OpenFOAMカスタマイズ超入門:ソースコードの構造を見る(講師:富山県立大 中川),第33回 オープンCAE勉強会@富山 2015/06/13
20150613OpenFOAMソースコード構造基礎講習_v1.pdf

OpenFOAMを理解するための第1歩(講師:富山県立大 中川),第43回 オープンCAE勉強会@富山 2016/05/28

OpenFOAMソースコード入門 pt.1  熱伝導方程式の解法から 有限体積法の実装について考える (講師:富山県立大 中川),第45回 オープンCAE勉強会@富山 2016/07/23
前編:有限体積法の基礎確認
     20160723laplacianFoam解読講習_前編.pdf
後編:laplacianFoamでの実装
 
OpenFOAM関連情報:公開[全件一覧]
12

非圧縮性 OpenFOAM 壁面熱量計算(0件)S Nakagawa2017/09/10(0票)
非等方性熱伝導率とOpenFOAM(0件)URLS Nakagawa2016/07/06(0票)
OpenFOAM を使い始める人へのアドバイス(0件)URLS Nakagawa2016/04/17(2票)
OpenFOAM 枝分かれ バージョン など(0件)URLS Nakagawa2016/04/17(0票)
OpenFOAM バグトラッキングシステムの見方(0件)URL画像S Nakagawa2016/04/17(0票)
OpenFOAM LES計算の Fluentとの比較。(0件)URLS Nakagawa2016/04/06(0票)
OpenFOAMのRANS検証報告(0件)URLS Nakagawa2016/04/06(0票)
Ubuntu と OpenFOAM の バージョンについて(0件)URLS Nakagawa2015/05/07(0票)
netBeans使った OpenFOAM の デバッグ(0件)URLアップロードファイルS Nakagawa2015/01/30(0票)
OpenFOAMのセル中心座標を取り出す: writeCe...(0件)URLS Nakagawa2014/10/06(1票)
cfMesh を並列実行した後の メッシュ結合(0件)S Nakagawa2014/08/08(0票)
cfMesh での OpenFOAM用メッシュ生成(0件)S Nakagawa2014/07/19(0票)
cfMesh インストール方法(0件)URLS Nakagawa2014/07/19(0票)
引数の数が合わない? C++ デフォルト引数(0件)URLS Nakagawa2014/06/06(0票)
Salome で STL の解像度を変更する方法を検討中(0件)URL画像S Nakagawa2014/06/06(0票)
run-time selectionについて(0件)URLS Nakagawa2014/06/06(0票)
OpenFOAMのpos(),neg()関数と,その組み合...(0件)S Nakagawa2014/06/06(0票)
blockMeshDict の様子を可視化できる GUI(0件)画像S Nakagawa2014/06/06(0票)
blockMesh にスムージングを追加した拡張版(0件)URL画像S Nakagawa2014/06/06(0票)
PyFoamのインストール(0件)URLS Nakagawa2014/06/03(0票)
12

OpenFOAM関連情報:公開 >> 記事詳細

2014/05/15

run-time selectionについて

Tweet ThisSend to Facebook | by S Nakagawa
OpenFOAMer(コード解読修行中)と,いろいろと話をしました。

コードリーディングで苦戦している理由の1つが,様々な物理モデルの使い分けを容易にしてくれている仕組み「runTime Selection」だと感じました。前から気付いてはいたのですが。

ソルバを利用する時には,とても便利な機能です。しかし,ソルバーのコードを読んでいるときには,使いたい物理モデルにたどり着かないといった事態を引き起こします。

run-time セレクションについては,OpenFOAMの特徴欄にも記載があります。
http://www.openfoam.org/features/extending-libraries.php
Run-time selection
At run-time, OpenFOAM automatically creates lists of names of models and methods defined in libraries, from which the user can make a selection. For example, when a turbulence model library is used, a list of turbulence models is constructed at run-time, from which the user choose a model within one of the case input files. When a library is extended or a new one added, the new models/methods are automatically picked up by the run-time selection mechanism, so are available to the user.

日本語でも説明しているサイトがありました。
http://www.idaj.co.jp/sp_iconcfd/02/02.html
ランタイムセレクション
OpenFOAMは、アプリケーションレイヤーのコードを書きやすくするため、また多くの物理モデルなどを簡単に実装するため、Strategy デザインパターンライクな実装を行っています。これをランタイムセレクションと呼びます。
以下にRANS系非圧縮乱流モデルのクラス図を示します。乱流モデルは多種多様にあり、それに合わせてアプリケーションレイヤーのコードを書き換えるのは効率的ではありません。
Strategyパターンを使って乱流モデルを実装し、アプリケーションレイヤーのコードが乱流モデルを利用するときに変わったとしても、コードを変更する必要がない設計になっています。
うまく説明されています。が,超初心者に対しては,さらなく混乱を招くかもしれません。


この仕組みについては,OpenFOAM Wikiに詳しい解説ページがあります。ただし,このページは,この仕組みをカスタムクラスに実装したい人向けでしょう。コードを読んでいるときに感じる理解しにくさには,触れていないと感じます。
http://openfoamwiki.net/index.php/OpenFOAM_guide/runTimeSelection_mechanism


勉強会@富山で開催した「OpenFOAM(R)ソースコード入門pt1 熱伝導方程式の解法から有限体積法の実装について考える」の後編資料では,こっそりと説明したつもりです。ddtSchemes からEulerDdtScheme.Cにつながる部分です。混乱を避けるために,あっさりとしか説明していません。

コードを読む(だけ)の立場から説明する資料を作りたい。あるいは,勉強中に学生さんに作って欲しい,です。
これについては,デバッガを使って,実行状態を追いかける方が,てっとりばやいとも思います。

ということで,netBeans を使ってデバッグする方法の解説書類を作成中です。近日中に公開することを目指します。
トラックバックURLhttp://eddy.pu-toyama.ac.jp/index.php?action=journal_action_main_trackback&post_id=64
22:16 | 投票する | 投票数(0) | コメント(0) | トラックバック(0)