cfMesh VS snappyHexMesh, 回転メッシュで比較

背景

先の記事で、OpenFOAM 標準チュートリアルのmixerVesselを対象に、cfMeshを使ったメッシュ作成法を紹介した。

   

 

その結果を見る限りにおいて、メッシュ数や計算時間は、ほぼ同等の結果になっていた。 一方、cfMeshでは境界層レイヤーがきちんと作成出来ているし、メッシュ作成に要する計算時間も短く済むので、この種の回転体問題でも、マルチリージョンメッシュを作成する(個別に作成して合体させる)手間が必要ではあるが、cfMeshの利用を推奨してきた。 しかし、最近取り組んだ現実の設計問題で、cfMeshではsnappyHexMesh(以下SHMと記す)に比べて、どうしてもメッシュ数が多くなりすぎてしまうという問題が生じた。 この現実の設計問題と、mixerVesselの問題との違いは何であったのか?・・・どうも回転体と静止部分間のクリアランスに違いがあるようであった。  

 
 

問題の略式化

そこで、この違いをもう少し明確にすべく、もっとシンプルな形状でクリアランスの違いがメッシュ数にどう効いてくるのか。以下のようなモデルを使って、cfMeshとSHMで比較してみました。 範囲を選択_999(232) 2つの円柱の入れ子構造で、2つの円柱で囲まれた領域(上右図中、水色の領域)でメッシュ作成するというもの。回転体問題のメッシュ作成に際して、どちらかが回転境界面(cyclicAMI)になり、もう一方が、物体(回転体、もしくは固定境界)になることを想定しています。 物体と回転境界面の隙間が小さいと、きれいな回転境界面が出来なくなってしまい、計算が不能ということになります。したがって隙間の大きさに対して、メッシュの最少分割サイズをどこまで大きく出来るか?というアプローチで取り組んでみました。 メッシュの分割方案としては、内部の円柱(inner)を最小セルサイズ(min cellSize)になるようにして、ベースセルサイズ(Base cellSize)は、その8倍となるよう設定しました。参考に、DEXCS2015 for OpenFOAM(R)を使った場合のパラメタ設定画面(min cellSize=1の場合)を以下に添付しておきます。 範囲を選択_999(236)下図は、min cellSize に対して、出来上がったメッシュのサイズをプロットしたものです。 範囲を選択_999(237) なお、snappyHexMeshでは、内部円柱の内部をcellZone定義するという方法でメッシュ作成しており、この図に記したメッシュ数(No. of cells)は、cfMeshで作成したメッシュと対比すべく、この内部を除いた領域( splitMeshRegions -cellZones を実施してメッシュ分割したもの)におけるメッシュ数です。 min cellSizeが小さい(=0.2)場合、cfMeshとSHMで、ほとんど違いはありませんが、 範囲を選択_999(246) 大きくなるにつれ、cfMeshのほうがメッシュ数が大きくなります(下図は、minCellSize=0.5)。 範囲を選択_999(245) また、隙間の大きさ(=5)に対し、SHMでは約70%のminCellSizeでメッシュ生成できるのに対して、cfMeshでは、20%を超えたところで、以下のようなメッシュとなって、回転境界面として不適切な物になってしまいました(下図は、minCellSize=1.5で、上のプロット図中では赤の✕印に相当するケース)。   範囲を選択_999(244)  

keepCellsIntersectingPatches

但し、cfMeshには、keepCellsIntersectingPatches というオプションパラメタがあって、これを使うと、上記のような狭い隙間でも、patch の形状を再現してくれるようになります。その代わりにメッシュ数は下図(緑がオプション無し、赤がオプション有り)で示したようにもう少し増えてしまいます。

 

範囲を選択_999(247)

下図は、minCellSize=2 におけるメッシュを比較したものです。

範囲を選択_999(250)

最終的には、minCellSize=2.25(隙間に対して45%)まで大きくすることは出来ましたが、いずれにせよ、SHM(隙間に対して70%)に比べると、そんなに大きくできないので、最少メッシュサイズが隙間サイズで規定されるようなケースでは、cfMeshの方がメッシュ数は増えてしまうことになります。

 

現実の設計問題と、mixerVessel問題との違いを改めて考察

mixerVessel問題の寸法を改めてチェックし直したところ、最少メッシュサイズが隙間サイズに対して約20%の大きさになっていました。このサイズであれば、cfMeshとSHMはほぼ同等なので、上述のケースには該当しない。

一方、現実の設計問題で取り扱った例では、最少メッシュサイズが隙間サイズで規定され、cfMeshではSHMよりも最少メッシュサイズを小さくせざるを得なくなり、大幅なメッシュ増加になったということでした。

 

結論

回転体問題では、メッシュ生成に際して、隙間(回転面と回転体、または回転面と静止境界間)のサイズが重要なファクターで、このサイズに対して最少メッシュサイズを、

  • cfMeshの場合、45%以下
  • SHMの場合、70%以下

にする必要がある。

この基準でメッシュ作成した場合、cfMeshのメッシュ数はSHMに比べ、最大で8倍程度増加する。

Share

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください