OpenFOAMのユーザーグループにて投稿された記事にて、表題の解析をする為のモデル作成法についてのQAがあり、基本的に直交格子で作成できるとはいえSwiftBlockではハードルが高い・・・とのコメントがあったので、ここにサンプルケースを作成し公開することにしました。
⇒サンプルケース一式
実行方法は、解凍して出来るフォルダ中の、memo.txt に記してあります
1. serverRack フォルダにて
SwiftBlock→write(constant/polyMesh/blockMeshDict作成)
blockMesh の実行2. roomRack フォルダにて
SwiftBlock→write(constant/polyMesh/blockMeshDict作成)
blockMesh の実行3. serverRack フォルダにて
$ mergeMesh . ../roomRack
(mergeMesh の実行)
serverRack/1/polyMesh を、
serverRoom/constant の下に移動またはコピー4. 7_serverRoom フォルダにて
$ ./makeCyclic.sh
constant/polyMesh/boundary を手修正
fanOut
{
type cyclic;
nFaces 192;
startFace 100156;
matchTolerance 0.0001;
neighbourPatch fanOutRoom;
}… など
モデルの概要
- 簡単の為、サーバーラックは1セットだけです。
メッシュ作成方針
サーバーラックの内部と外部に分けて、別々にメッシュ作成し、あとでそれぞれのメッシュを結合することとしました。
領域別メッシュ作成と結合方法の概要
- serverRackと、roomRackというフォルダ中に、blenderで作成しSwiftBlock定義したモデルがあるので、これらを起点としてblockMeshDictを作成、blockMesh実行し、メッシュ作成、結合(mergeMesh)します。
- 結合したメッシュを、7_serverRoom/constant の下に置いて、結合面処理(stitchMeshやcyclicBaffle作成)します。
SwiftBlockモデル作成手順の概要
- モデル作成は基本的に、グリッドを押し出していくだけです。
- ある程度Blenderの操作に習熟すれば、作成には30分もかからないと思います。
結合面の処理方法
- 単純にmergeMeshしただけでは、ラックの出入り口がつながったことにはならないので、stitchMeshコマンドで、これらを結合します。
- fanOutの流出口ではcyclic fan 特性を付与したいので、stitchしたメッシュから改めてfaceSet作成⇒baffle作成し、cyclicFace化します。
- ちなみにOpenFOAM-2.1以降であれば、cyclicAMIが使えるので、単に通気性を付与するだけならstitchMeshは不要ですが、cyclicAMI+cyclicFan は使えないようなので、cyclicFanにしたい部分はstitchMeshするしかないようです。
境界条件
計算結果
補足というか、そもそもの作成動機
- 012/6/9に、オープンCAEワークショップ2012の講習会Aにて「SwiftツールによるOpenFOAM®用メッシュ作成」を実施しましたが、その中で、SwiftBlockの実習は、「第16回オープンCAE初心者勉強会(夏合宿)」にてやるとアナウンスしてありました。
- そこで本ケースをその題材に出来ないか・・・ということでした。
- メッシュ作成自体は、OpenFOAMのユーザーグループの投稿記事を見てすぐに、実に簡単に出来ていたのですが、メッシュの結合処理やらcyclicFanの設定法やら調べるのに手間取って、ようやく今頃になって公開ということです。
- 実習用の仮想マシンとテキスト(上記講習会でやったものに、約40ページ追加されることになる)もほぼ出来上がって、この部分の実習時間は1時間程度と予定しております。