CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   multiphaseInterFoam floating point exception (https://www.cfd-online.com/Forums/openfoam-solving/222181-multiphaseinterfoam-floating-point-exception.html)

JTDN November 14, 2019 07:24

multiphaseInterFoam floating point exception
 
5 Attachment(s)
Hello foamers,



So I'm trying to model a simple separating tank (oil and water) using multiphaseInterFoam (unmodded solver from OF 18.12). As i'm relatively new at OF I have roughly indexed my case on the damBreak4phase tutorial (notably for transportProperties, sigmas, etc)

As soon as I run, I get a floating point exception (after one or two iterations) with the following error:



#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in /lib/x86_64-linux-gnu/libc.so.6
#3 Foam::divide(Foam::Field<double>&, Foam::UList<double> const&, Foam::UList<double> const&) at ??:?
#4 void Foam::divide<Foam::fvPatchField, Foam::volMesh>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
#5 Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::operator/<Foam::fvPatchField, Foam::volMesh>(Foam::tmp<Foam::GeometricField<doub le, Foam::fvPatchField, Foam::volMesh> > const&, Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > const&) at ??:?
#6 Foam::multiphaseMixture::solve() at ??:?
#7 ? at ??:?
#8 __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
#9 ? at ??:?
Floating point exception (core dumped)



I understand there's a divide by zero somewhere and it comes from "multiphaseMixture" but I can't get a handle on it. The pre-processing part up to and including setFields seems to work fine.



Troubleshooting that I've tried:

1) Maybe the issue came from way i defined the two-phase inlet (50% water, 50% oil) so I tried a one phase inlet - same issue

2) Tried modding the alpha.water file so it takes into account surface tension when dealing with the walls - same issue

3) Tried reducing inlet speed as i noticed Co number (not interface Co, the "normal" Co) was rising quickly. This mod did lower Co but the case still crashed.



I think the geometry and volume mesh are OK since I ran them first on interFoam (with water only) just to check the basic BC, the Co numbers I can expect, etc.


Any help would be much appreciated. I've attached my log file as well as the alpha.water, alpha.oil and alpha.air and finally fvSolutions.

Thanks a lot!
Jad

Mahmoud Abbaszadeh May 3, 2021 13:01

Quote:

Originally Posted by JTDN (Post 749762)
Hello foamers,



So I'm trying to model a simple separating tank (oil and water) using multiphaseInterFoam (unmodded solver from OF 18.12). As i'm relatively new at OF I have roughly indexed my case on the damBreak4phase tutorial (notably for transportProperties, sigmas, etc)

As soon as I run, I get a floating point exception (after one or two iterations) with the following error:



#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in /lib/x86_64-linux-gnu/libc.so.6
#3 Foam::divide(Foam::Field<double>&, Foam::UList<double> const&, Foam::UList<double> const&) at ??:?
#4 void Foam::divide<Foam::fvPatchField, Foam::volMesh>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
#5 Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::operator/<Foam::fvPatchField, Foam::volMesh>(Foam::tmp<Foam::GeometricField<doub le, Foam::fvPatchField, Foam::volMesh> > const&, Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > const&) at ??:?
#6 Foam::multiphaseMixture::solve() at ??:?
#7 ? at ??:?
#8 __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
#9 ? at ??:?
Floating point exception (core dumped)



I understand there's a divide by zero somewhere and it comes from "multiphaseMixture" but I can't get a handle on it. The pre-processing part up to and including setFields seems to work fine.



Troubleshooting that I've tried:

1) Maybe the issue came from way i defined the two-phase inlet (50% water, 50% oil) so I tried a one phase inlet - same issue

2) Tried modding the alpha.water file so it takes into account surface tension when dealing with the walls - same issue

3) Tried reducing inlet speed as i noticed Co number (not interface Co, the "normal" Co) was rising quickly. This mod did lower Co but the case still crashed.



I think the geometry and volume mesh are OK since I ran them first on interFoam (with water only) just to check the basic BC, the Co numbers I can expect, etc.


Any help would be much appreciated. I've attached my log file as well as the alpha.water, alpha.oil and alpha.air and finally fvSolutions.

Thanks a lot!
Jad


I have got the same issue. Have you figured out how to resolve the error?


All times are GMT -4. The time now is 00:35.