CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM (https://www.cfd-online.com/Forums/openfoam/)
-   -   buoyantBoussinesqSimpleFoam divergence problems (https://www.cfd-online.com/Forums/openfoam/72426-buoyantboussinesqsimplefoam-divergence-problems.html)

beretti_a February 5, 2010 03:39

buoyantBoussinesqSimpleFoam divergence problems
 
Hello foamers,

I'm studying the mixing between two streams at different temperatures of an incompressible fluid.
For the analysis I've used the solver buoyantBoussinesqSimpleFoam.

The calculation has worked fine for about 2600 iterations and the solution is reliable. Also comparing the results obtained with Fluent I get a good agreement.
All of a sudden the solution has started to diverge shutting off the calculation. This is the printout I've obtained.

#0 Foam::error::printStack(Foam::Ostream&) in "/home/andrea/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#1 Foam::sigFpe::sigFpeHandler(int) in "/home/andrea/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#2 ?? in "/lib/libc.so.6"
#3 Foam::DICPreconditioner::calcReciprocalD(Foam::Fie ld<double>&, Foam::lduMatrix const&) in "/home/andrea/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#4 Foam::DICPreconditioner::DICPreconditioner(Foam::l duMatrix::solver const&, Foam::dictionary const&) in "/home/andrea/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#5 Foam::lduMatrix::preconditioner::addsymMatrixConst ructorToTable<Foam::DICPreconditioner>::New(Foam:: lduMatrix::solver const&, Foam::dictionary const&) in "/home/andrea/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#6 Foam::lduMatrix::preconditioner::New(Foam::lduMatr ix::solver const&, Foam::dictionary const&) in "/home/andrea/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#7 Foam::PCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/home/andrea/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#8 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/home/andrea/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so"
#9 main in "/home/andrea/OpenFOAM/OpenFOAM-1.6/applications/bin/linux64GccDPOpt/buoyantBoussinesqSimpleFoam"
#10 __libc_start_main in "/lib/libc.so.6"
#11 _start at /usr/src/packages/BUILD/glibc-2.9/csu/../sysdeps/x86_64/elf/start.S:116
Floating point exception


Does anybody have an ideas?

Thanks in advance,

Andrea

wyldckat February 8, 2010 08:25

Greetings Andrea,

It's good to know you've got OpenFOAM up and running :)

OK, by what I can estimate, you should check the output residuals in the final iterations. They will probably indicate issues with the propagation of really small or large values, leading to the busted simulation.

I remember I've come against such an issue some time ago, but it was because I hadn't checked the units of the geometry... I was using an STL in millimetres instead of meters... so the solver gave in to the massive small lunar object on the surface of the earth :rolleyes:

Additionally, you could also have triggered a bug. Try following the instructions on the wiki here, to try to isolate the problem!

Best regards,
Bruno

beretti_a February 8, 2010 11:13

Greatings Bruno,

It's good to hearing from you.
Yeah, few weeks ago I asked to my IT dept for a brand new machine and using Debian as OS I haven't had any further problems. Sincerely I still don't know what were the troubles with SLES 10. Probably I was missing some critical packages as you suggested.

Coming back to my simulation, I can exclude any mistake about the units. Please consider that the calculation reached convergence (checking both the residuals and the velocity in certain points of the domain) and gave me a physical solution comparable to the one I've gotten using Fluent.
As a sudden the solution starts to diverge, giving me higher residuals that kept the solution to be busted.

Anyway in these days I'm going to perform a debugging as you suggest. I'm not so expert and I guess I'll need a while to get through the problem. Nevertheless I'll keep you informed as soon as I found something.

Best regards,
Andrea


All times are GMT -4. The time now is 15:28.