compressibleVoFを使用した管路流れの解析について

71 views
Skip to first unread message

K

unread,
Jan 21, 2026, 4:00:29 AMJan 21
to OpenFOAM
現在大学でOpenFOAM-12を使用しています。compressibleVoFを使って水平円管を再現して水と空気を使用した気水二相流の解析を行っています。
解析を行う中で、0.4秒付近で乱流エネルギーkか散逸率εのどちらか又は両方が負の値になっている、乱流粘性nutが破綻した可能性あるというエラーで、解析が止まってしまいました。私が使用している解析のファイルをすべて添付しますので、エラーの解決方法やファイルの中身についてアドバイスなど教えていただけると幸いです。他に必要なファイルがありましたら添付致します。
対象のファイル.zip

H‐Tsubota@xsim.info

unread,
Jan 21, 2026, 10:16:15 PMJan 21
to OpenFOAM
Allrunスクリプトが無かったので以下のコマンドで確認しました (可能であれば質問時にAllrunも添付するようにしてください) 。
**********
. $WM_PROJECT_DIR/bin/tools/RunFunctions
runApplication blockMesh
runApplication setFields
runApplication decomposePar
runParallel $(getApplication)
runApplication reconstructPar -withZero
**********

0.4秒を超えた辺りで以下のようなエラーメッセージでソルバーのエラーが起きました。
**********
GAMG:  Solving for p_rgh, Initial residual = 0.00575162, Final residual = 2.90018e-09, No Iterations 1
GAMG:  Solving for p_rgh, Initial residual = 0.00207895, Final residual = 2.30044e-09, No Iterations 1
[2] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[2] #1  Foam::sigFpe::sigHandler(int) at ??:?
[2] #2  ? in "/usr/lib/x86_64-linux-gnu/libc.so.6"
[2] #3  ? in "/usr/lib/x86_64-linux-gnu/libm.so.6"
[2] #4  Foam::sqrt(Foam::Field<double>&, Foam::UList<double> const&) at ??:?
[2] #5  Foam::tmp<Foam::DimensionedField<double, Foam::volMesh> > Foam::sqrt<Foam::volMesh>(Foam::tmp<Foam::DimensionedField<double, Foam::volMesh> > const&) at ??:?
[2] #6  Foam::RASModels::realizableKE<Foam::compressibleMomentumTransportModel>::correct() at ??:?
[2] #7  Foam::solvers::compressibleVoF::postCorrector() at ??:?
[2] #8  ? in "/opt/openfoam12/platforms/linux64GccDPInt32Opt/bin/foamRun"
[2] #9  ? in "/usr/lib/x86_64-linux-gnu/libc.so.6"
[2] #10  __libc_start_main in "/usr/lib/x86_64-linux-gnu/libc.so.6"
[2] #11  ? in "/opt/openfoam12/platforms/linux64GccDPInt32Opt/bin/foamRun"
[DESKTOP-PJVM1PQ:03526] *** Process received signal ***
[DESKTOP-PJVM1PQ:03526] Signal: Floating point exception (8)
[DESKTOP-PJVM1PQ:03526] Signal code:  (-6)
[DESKTOP-PJVM1PQ:03526] Failing at address: 0x3e800000dc6
[DESKTOP-PJVM1PQ:03526] [ 0] /usr/lib/x86_64-linux-gnu/libc.so.6(+0x45330)[0x7f9b54f83330]
[DESKTOP-PJVM1PQ:03526] [ 1] /usr/lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x11c)[0x7f9b54fdcb2c]
[DESKTOP-PJVM1PQ:03526] [ 2] /usr/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x1e)[0x7f9b54f8327e]
[DESKTOP-PJVM1PQ:03526] [ 3] /usr/lib/x86_64-linux-gnu/libc.so.6(+0x45330)[0x7f9b54f83330]
[DESKTOP-PJVM1PQ:03526] [ 4] /usr/lib/x86_64-linux-gnu/libm.so.6(+0x153a4)[0x7f9b551953a4]
[DESKTOP-PJVM1PQ:03526] [ 5] /opt/openfoam12/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam4sqrtERNS_5FieldIdEERKNS_5UListIdEE+0x4b)[0x7f9b55cef2ab]
[DESKTOP-PJVM1PQ:03526] [ 6] /opt/openfoam12/platforms/linux64GccDPInt32Opt/lib/libmomentumTransportModels.so(_ZN4Foam4sqrtINS_7volMeshEEENS_3tmpINS_16DimensionedFieldIdT_EEEERKS6_+0x24b)[0x7f9b496bfcdb]
[DESKTOP-PJVM1PQ:03526] [ 7] /opt/openfoam12/platforms/linux64GccDPInt32Opt/lib/libcompressibleMomentumTransportModels.so(_ZN4Foam9RASModels12realizableKEINS_34compressibleMomentumTransportModelEE7correctEv+0x5e7)[0x7f9b4953c0c7]
[DESKTOP-PJVM1PQ:03526] [ 8] /opt/openfoam12/platforms/linux64GccDPInt32Opt/lib/libcompressibleVoF.so(_ZN4Foam7solvers15compressibleVoF13postCorrectorEv+0x3c)[0x7f9b50281abc]
[DESKTOP-PJVM1PQ:03526] [ 9] foamRun(+0x3e0a)[0x55f3d103ee0a]
[DESKTOP-PJVM1PQ:03526] [10] /usr/lib/x86_64-linux-gnu/libc.so.6(+0x2a1ca)[0x7f9b54f681ca]
[DESKTOP-PJVM1PQ:03526] [11] /usr/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x8b)[0x7f9b54f6828b]
[DESKTOP-PJVM1PQ:03526] [12] foamRun(+0x4565)[0x55f3d103f565]
[DESKTOP-PJVM1PQ:03526] *** End of error message ***
--------------------------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun noticed that process rank 2 with PID 0 on node DESKTOP-PJVM1PQ exited on signal 8 (Floating point exception).
--------------------------------------------------------------------------
**********

これはゼロ割りなどで起きる浮動小数点エラーで、経験的には境界条件設定がおかしい時などに起きることが多いようです。

またエラーまでの計算結果をparaFoamで可視化してみると、空気がoutletに到達した瞬間にエラーが起きているように見えます。

以上から、outletの境界条件に問題がある可能性が高いのではないかと思いました。
$FOAM_TUTORIALS/compressibleVoF 下にあるチュートリアルを参考にoutletの境界条件を見直してみるといいかもしれません。
他の人の助けになると思うので、解決したら解決方法を共有してください。

2026年1月21日水曜日 18:00:29 UTC+9 K:

K

unread,
Jan 21, 2026, 10:37:43 PMJan 21
to OpenFOAM
H‐Tsubota@xsim.info 様

返信いただきありがとうございます。
ご指摘いただいたAllrunについては今後は必ず添付致します。

いただいたアドバイスをもとに、outletの境界条件を見直してみます。
解決方法が分かりましたらまたこちらに連絡します。

2026年1月22日木曜日 12:16:15 UTC+9 H‐Tsubota@xsim.info:
Reply all
Reply to author
Forward
0 new messages