壁面せん断応力wallShearStressの向きについて

79 views
Skip to first unread message

hashi

unread,
Jan 12, 2024, 3:21:29 AM1/12/24
to OpenFOAM
お世話になっております.
大学院でOpenFOAMを用いて研究を行っているhashiと申します.

postProcess機能を用いてwallShearStressを出力し,ParaViewで結果を見てみたところ,ある時刻におけるx成分の分布は下の図のようになっていました.
図は,床面を上から見た断面図で,図中の白い円は円柱です.
断面は,床面から1mmの面を指定しました.
x201_62.0012.png

同じ時刻におけるx方向の流速Uの分布は下の図のようになっています.
Uphoto.jpeg

壁面せん断応力のx成分が小さい所(負の所)で流速のx成分が大きく(正の値に)なっているのが気になります.
コンター図を描いてみると,壁面せん断応力のx成分は左を,流速のx成分は右を向いています.

この点が直感と反するのですが,果たして合っているのでしょうか.
また,壁面せん断応力は何を表しているのでしょうか.

よろしくお願いいたします.


M.TANAKA

unread,
Jan 13, 2024, 9:52:53 PM1/13/24
to OpenFOAM
hashiさん

M.TANAKAといいます.「断面は,床面から1mmの面を指定しました.」という箇所が気になりました.ParaViewで表示する際に,流速UはそのままinternalMeshのSliceで,wallShearStressは床のpacth/<床の名前>に変更したら,向きが揃うということはないでしょうか?
私自身は,wallShearStressはpatch上でしか定義されない量だと思っていたので,Slice面上で値を表示できること自体知りませんでした...
原因についてはただの勘ですが,Slice面の向きが想定と逆になっているのではないかと思います(hashiさんも材料力学の講義を受けたとき,せん断応力の向きは面のどちら側の材料に働くかに応じて逆になるといった話を聞いたことがあると思います.ああいう感じのことではないかと).

>壁面せん断応力は何を表しているのでしょうか.
流体ではなくそれに接する物体に生じるせん断応力という認識ですが,公式のドキュメントを見るのが最も確からしいと思います:

以下,余談ですが...

OpenFOAMはオープンソースなので,(時間と労力を掛ければ)実際の定義は辿ることができます.私も詳しくはありませんが,ちょっとトライしてみます.
上で挙げた1つ目のドキュメントには,wallShearStress”τ”は,τ=R・nで定義され,Rは乱流応力に応じたせん断応力テンソル,nは流体領域を向いた壁面法線ベクトルだとあります.じゃあRの定義は何か?という話になるので,同じドキュメントの下の方にあるSourceへのリンクを見ますと,τ=R・nを計算している関数があります
コード中のssp = (-Sfp/magSfp) & Reffp;がτ=R・n=n・(R転置)=n・Rに対応するので,定義を知りたいRとはコード中のReffpのことです.これは引数Reffから来ている変数なので,実際に関数calcShearStressが呼び出されるとき,Reffには何が来るのかが次は気になります.同じコードの下の方に,この関数calcShearStressを呼び出す操作があります.そこではReffに対応する引数としてmodelPtr->devRhoReff()が与えられています.devRhoReff()という関数が重要そうです.

関数devRhoReffが定義されている箇所を見つけるため,ソースコードのリポジトリで"::devRhoReff"と検索すると,乱流モデルに応じて?いくつかのファイルがヒットします.試しにRANSに対応するものを探してみると,"ReynoldsStress.C"というそれっぽいファイルがあります.その中には,関数の定義が書かれており,以下の式が見えます.
this->alpha_ * this->rho_ * R_ 
- (this->alpha_ * this->rho_ * this->nu()) * devTwoSymm(fvc::grad(U))
第一項がレイノルズ応力,第二項がひずみ速度による応力のようです.参考:
 -
https://doc.cfd.direct/notes/cfd-general-principles/reynolds-averaged-simulation
ここから先は私にはギブアップでしたが,こんな感じで調べることもできるという紹介です.最近はChatGPTが流行りなので,うまく活用すると早いかもしれません.

参考になれば幸いです.


2024年1月12日金曜日 17:21:29 UTC+9 hashi:

hashi

unread,
Jan 14, 2024, 2:18:45 AM1/14/24
to OpenFOAM
M.TANAKA様

hashiです.
ご回答ありがとうございます.

>「断面は,床面から1mmの面を指定しました.」という箇所が気になりました.
「壁面」せん断応力なのに床面を指定できないのはおかしいなと私も思っていました.(床面の高さに断面を指定すると何も表示されません.)
ParaViewでMeshRegionsの設定をパッチ表示にしたところ,床面の高さのτを表示させることができました.
ですが,向きは負の方向のままです.

また,公式のドキュメントと追加情報ありがとうございます.
特に余談部分は流体力学とプログラミングの知識がないと解読が難しそうでなかなか手が出ませんが,これを機に少し勉強してみます.

ありがとうございました.
hashi

2024年1月14日日曜日 11:52:53 UTC+9 M.TANAKA:
Reply all
Reply to author
Forward
0 new messages