equationOfStateとソルバー内のrhoEqnで解かれる密度rhoについて

292 views
Skip to first unread message

おおうらさん

unread,
Jul 5, 2022, 9:51:24 AM7/5/22
to OpenFOAM
お世話になっております.おおうらと申します.
現在,大学でOpenFOAMで非定常・圧縮性流体の研究をしております.

密度rhoについてどのような計算が行われているかわからず質問させていただきました.

私の認識では,質量保存式(rhoEqn)と状態方程式(equationOfState)のどちらもrhoを導いているように思うのですが,この認識で合っておりますでしょうか?

また,状態方程式はソルバー内ではなく,ライブラリのequationOfStateで計算させていると思うのですが,この二つはどのように結びついているのでしょうか.

最終的に行いたいのは,状態方程式を用いずにソルバーのみで密度rhoの計算をすることです.
どなたかご教授いただけると幸いです.
よろしくお願いいたします.

Youhei Takagi

unread,
Jul 5, 2022, 7:35:48 PM7/5/22
to open...@googlegroups.com
おおうら様

高木です。圧縮性流体はあまり詳しくないので的外れかもしれませんが、
私のわかる範囲で回答させていただきます。

thermophysicalPropertiesで指定する熱物性値ライブラリは非圧縮性・圧縮性の
どちらにも対応させるために、様々なキーワードを指定する形式になっています。

equationOfStateを指定しても、ソルバーの方で状態方程式を利用してrhoを計算
していなければ大丈夫です。密度ベースソルバーのrhoCentralFoamのソースを
みて、連続の方程式を解いているかどうかを確認してもらえばわかるかと思います。
さらに、thermophysicalPropertiesのtypeで、rhoCentralFoamを使う場合は
hePsiThermoを指定しますが、hePsiThermo.[CH]とrhoCentralFoamのソースを
参照すればどのように熱物性値が計算・利用されているかがわかるかと思います。

以上よろしくお願いいたします。

2022年7月5日(火) 22:51 おおうらさん <ohurasa...@gmail.com>:
--
このメールは Google グループのグループ「OpenFOAM」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには openfoam+u...@googlegroups.com にメールを送信してください。
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/openfoam/34ab25c3-9c2f-4550-9831-d209160ccfecn%40googlegroups.com にアクセスしてください。

おおうらさん

unread,
Jul 5, 2022, 9:35:00 PM7/5/22
to OpenFOAM
高木様

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

rhoCentralFoamのソースを見てみました.
195行目で
        // --- Solve density
        solve(fvm::ddt(rho) + fvc::div(phi));
の記述があり,連続の式を解いていることが確認できました.

rhoCentralFoamのチュートリアルのshockTubeを見てみると,
constant/thermophysicalProperties内でequationOfStateを指定していますが,
ソルバー(rhoCentralFoam)で連続の式を解いているので大丈夫,
という認識で合っておりますでしょうか?

次に,hePsiThermo.[CH]を見てみましたが,
密度rhoに関する記述がないように思えました.
このあたりに関しては理解が追いついていない部分もあるので
何かアドバイスをいただけると幸いです.

ここで,ひとつ気になる部分が出てきました.
rhoCentralFoam.Cでは
            #include "psiThermo.H"
とあり,hePsiThermo.HではなくpsiThermo.Hを読み込んでいるように思えました.
そのためhePsiThermo.HとpsiThermo.Hの繋がりがよくわからなくなっております.

重ねての質問になり大変恐縮ですが,よろしくお願いいたします.
2022年7月6日水曜日 8:35:48 UTC+9 yotakagi:

Youhei Takagi

unread,
Jul 5, 2022, 11:23:09 PM7/5/22
to open...@googlegroups.com
おおうら様

高木です。

> rhoCentralFoamのチュートリアルのshockTubeを見てみると,
> constant/thermophysicalProperties内でequationOfStateを指定していますが,
> ソルバー(rhoCentralFoam)で連続の式を解いているので大丈夫,
> という認識で合っておりますでしょうか?

はい、そのような認識で良いかと思います。

> 次に,hePsiThermo.[CH]を見てみましたが,
> 密度rhoに関する記述がないように思えました.
> このあたりに関しては理解が追いついていない部分もあるので
> 何かアドバイスをいただけると幸いです.

> ここで,ひとつ気になる部分が出てきました.
> rhoCentralFoam.Cでは
>             #include "psiThermo.H"
> とあり,hePsiThermo.HではなくpsiThermo.Hを読み込んでいるように思えました.
> そのためhePsiThermo.HとpsiThermo.Hの繋がりがよくわからなくなっております.

各ソルバーとthermophysicalPropertiesのtypeの関係ですが、公式ユーザーガイドには、

・psiThermo: 気体のみでrhoCentralFoamやcoldEngineFoamを使うとき
・hePsiThermo: fluidThermo, fluidReactionThermo, psiThermoを使っているソルバーで

ぐらいしか書いてないので、これだけの情報ではよくわからないところです。

ユーザーガイドの該当部分

密度ベースソルバーとSIMPLE系ソルバーは別ものですが、SIMPLE系ソルバーで
利用される熱物性値のライブラリ・ソースを拝借してソルバーが作られているので、
根拠がよくわからない部分があるかと思います。熱物性値のソースで宣言されている
けど使われていないクラスなどもあるので、丁寧にチェックしていただくしかない
かと思います。

すみません、これ以上は私も知識不足なのでお答えできません。他の有識者の方からの
コメントに期待します。

2022年7月6日(水) 10:35 おおうらさん <ohurasa...@gmail.com>:
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/openfoam/443b0fc0-411a-41ad-8ed1-f3f320d3e8ben%40googlegroups.com にアクセスしてください。

おおうらさん

unread,
Jul 5, 2022, 11:50:36 PM7/5/22
to OpenFOAM
高木様

おおうらです.
ユーザーガイドの該当部分まで示していただき大変助かります.
ありがとうございます.

SIMPLE系ソルバーから密度ベースソルバーが作られていること,
使われていないクラスもあることは知りませんでした.

現在圧力ベースソルバーのfireFoamを使っており,
おっしゃる通り,丁寧にチェックしていきたいと思います.

各ソルバーとthermophysicalPropertiesのtypeの関係について
他の有識者の方もぜひよろしくお願いいたします.


2022年7月6日水曜日 12:23:09 UTC+9 yotakagi:
Reply all
Reply to author
Forward
0 new messages