|
[Sponsors] |
July 31, 2014, 05:08 |
rhoSimpleFoam: solver error, iteration 2
|
#1 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Hello everyone ,
I am performing some simulations on a slender/wiry body and am experiencing some difficulties. First of all, I encountered a mesh related issue (especially for growing layers with sHM). Anyway, to check that all the rest was correct, I disabled this feature and tried running the mesh without any near-wall refined layers. Everything went well for Mach=0.5, but then, for any superior Mach number (subsonic, transsonic and supersonic), the solver stops at iteration 2 . Obviously, the results I got for the Mach=0.5 simulation are pretty bad but the caculation is converging correctly. I am using a Spalart-Allmaras model, a mesh with around 1.5M cells and running in serial. You can find the log.rhoSimpleFoam for the Mach=0.9 simulation here : Code:
/*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.2.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : 2.2.0 Exec : rhoSimpleFoam Date : Jul 31 2014 Time : 08:22:19 Host : "*******" PID : 20615 Case : /*******/OpenFoam/Aela_P7_openfoam_1/Mach090/P7_openfoam_1.openfoam.mach090.rep nProcs : 1 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster allowSystemOperations : Disallowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create mesh for time = 0 SIMPLE: convergence criteria field p tolerance 1e-05 field U tolerance 1e-05 field nuTilda tolerance 1e-05 Reading thermophysical properties Selecting thermodynamics package { type hePsiThermo; mixture pureMixture; transport sutherland; thermo hConst; equationOfState perfectGas; specie specie; energy sensibleInternalEnergy; } Reading field U Reading/calculating face flux field phi Creating turbulence model Selecting RAS turbulence model SpalartAllmaras SpalartAllmarasCoeffs { sigmaNut 0.66666; kappa 0.41; Prt 1; Cb1 0.1355; Cb2 0.622; Cw2 0.3; Cw3 2; Cv1 7.1; Cv2 5; } Creating finite volume options No finite volume options present Starting time loop Time = 1 smoothSolver: Solving for Ux, Initial residual = 0.984886, Final residual = 0.0234386, No Iterations 12 smoothSolver: Solving for Uy, Initial residual = 1, Final residual = 0.034385, No Iterations 10 smoothSolver: Solving for Uz, Initial residual = 0.997082, Final residual = 0.0751092, No Iterations 10 DILUPBiCG: Solving for e, Initial residual = 0.999874, Final residual = 0.026569, No Iterations 2 GAMG: Solving for p, Initial residual = 1, Final residual = 0.0323809, No Iterations 4 time step continuity errors : sum local = 1.4908e-06, global = -3.85339e-17, cumulative = -3.85339e-17 rho max/min : 1.19259 1.14259 smoothSolver: Solving for nuTilda, Initial residual = 1, Final residual = 0.0585927, No Iterations 4 bounding nuTilda, min: -0.758819 max: 0.562869 average: 0.152688 ExecutionTime = 2.18 s ClockTime = 2 s forceCoeffs output: Cm = 1.28734 Cd = 0.000355249 Cl = -0.0951446 Cl(f) = 1.23976 Cl(r) = -1.33491 Time = 2 smoothSolver: Solving for Ux, Initial residual = 0.00428752, Final residual = 0.00012282, No Iterations 4 smoothSolver: Solving for Uy, Initial residual = 0.485451, Final residual = 0.014349, No Iterations 4 smoothSolver: Solving for Uz, Initial residual = 0.0139783, Final residual = 0.000406192, No Iterations 4 DILUPBiCG: Solving for e, Initial residual = 0.158187, Final residual = 0.00438407, No Iterations 2 #0 Foam::error::printStack(Foam::Ostream&) in "/Produits/publics/x86_64.Linux.RH5/openfoam/2.2/OpenFOAM-2.2.0/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::sigFpe::sigHandler(int) in "/Produits/publics/x86_64.Linux.RH5/openfoam/2.2/OpenFOAM-2.2.0/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 at sigaction.c:0 #3 Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::sutherlandTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::calculate() in "/Produits/publics/x86_64.Linux.RH5/openfoam/2.2/OpenFOAM-2.2.0/platforms/linux64GccDPOpt/lib/libfluidThermophysicalModels.so" #4 Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::sutherlandTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::correct() in "/Produits/publics/x86_64.Linux.RH5/openfoam/2.2/OpenFOAM-2.2.0/platforms/linux64GccDPOpt/lib/libfluidThermophysicalModels.so" #5 in "/Produits/publics/x86_64.Linux.RH5/openfoam/2.2/OpenFOAM-2.2.0/platforms/linux64GccDPOpt/bin/rhoSimpleFoam" #6 __libc_start_main in "/lib64/libc.so.6" #7 Foam::regIOobject::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/Produits/publics/x86_64.Linux.RH5/openfoam/2.2/OpenFOAM-2.2.0/platforms/linux64GccDPOpt/bin/rhoSimpleFoam" By browsing some similar threads I understood that those two conditions were the most occuring causes but mine seem to be OK so I hoped that someone could enlighten my poor knowledge of OpenFoam as I started using it a couple of weeks ago ... Thanks in advance, Seb PS: I'm currently working with the layer growth problem and if necessary I'll make another post in the related section of the forum. |
|
August 4, 2014, 05:12 |
|
#2 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Allright, I finally got a "decent" mesh with what I would call an acceptable near wall refinement. I managed to grow around 16 layers with a 1.2 expansion ratio and the last layer thickness around 4 cm (the whole body length is 50 m).
The checkMesh returns: Code:
/*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.2.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : 2.2.0 Exec : checkMesh Date : Aug 06 2014 Time : 13:41:41 Host : "*******" PID : 8255 Case : /********/ nProcs : 1 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster allowSystemOperations : Disallowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create polyMesh for time = 0 Time = 0 Mesh stats points: 776955 faces: 2180392 internal faces: 2143526 cells: 702746 faces per cell: 6.15289 boundary patches: 42 point zones: 0 face zones: 0 cell zones: 0 Overall number of cells of each type: hexahedra: 619776 prisms: 10052 wedges: 0 pyramids: 0 tet wedges: 20 tetrahedra: 0 polyhedra: 72898 Breakdown of polyhedra by number of faces: faces number of cells 4 1144 5 1332 6 7104 7 37932 8 9544 9 10914 10 136 11 28 12 4080 13 8 14 8 15 636 18 32 Checking topology... Boundary definition OK. Cell to face addressing OK. Point usage OK. Upper triangular ordering OK. Face vertices OK. Number of regions: 1 (OK). [...] Checking geometry... Overall domain bounding box (-516.14 -516.14 -516.14) (516.14 516.14 516.14) Mesh (non-empty, non-wedge) directions (1 1 1) Mesh (non-empty) directions (1 1 1) Boundary openness (-4.78132e-17 -2.50303e-17 2.50362e-17) OK. Max cell openness = 5.26519e-15 OK. Max aspect ratio = 101.104 OK. Minimum face area = 7.06147e-07. Maximum face area = 42636.7. Face area magnitudes OK. Min volume = 1.72293e-06. Max volume = 8.8037e+06. Total volume = 1.1e+09. Cell volumes OK. Mesh non-orthogonality Max: 75.7014 average: 10.1894 *Number of severely non-orthogonal faces: 77. Non-orthogonality check OK. <<Writing 77 non-orthogonal faces to set nonOrthoFaces Face pyramids OK. Max skewness = 3.22215 OK. Coupled point location match (average 0) OK. Mesh OK. End Should I worry about the "77 non-orthogonal faces" checkMesh is talking about ? If not, where could the problem come from ? I would like to perform simulations from Mach 0.5 to Mach 2 but for the moment, even the subsonic cases (from Mach 0.5) don't work properly. If somebody has any hint/idea/advice/suggestion ... Thanks in advance, Seb PS: I'm using rhoSimpleFoam with Spalart-Allmaras RANS model Last edited by seb_210; August 6, 2014 at 10:38. Reason: Upload |
|
August 6, 2014, 10:46 |
|
#3 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Up !
Seb |
|
August 11, 2014, 05:56 |
|
#4 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Still nobody ?
|
|
August 11, 2014, 11:03 |
|
#6 | |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Quote:
Thank you for your anwser. Unfortunately this modification did not bring the simulation to convergence, it still crashed after a few iterations. I tried different values for "nNonOrthogonalCorrectors" from 1 to 20 and nothing worked as expected. Are those "non-orthogonal" cells really important ? As checkMesh returns "Mesh OK" I assumed the mesh would work properly (as it does with smaller Mach numbers). Is it wrong to have believed so ? Where could the problem come from ? |
||
August 12, 2014, 07:43 |
|
#8 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Yes, here are the "constant", "system" and "0" directories.
They come from a "successful" simulation (Mach = 0.45). With a higher Mach number, it doesn't work anymore (crash at iteration 2). Thank you for your time Seb |
|
August 12, 2014, 09:53 |
|
#10 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Allright, thanks Tushar. The calculation managed to run further
Now it crashes at iteration 6 (for Mach number 0.5). The same error is returned than before. Even with low relaxation factors, it crashes at iteration 6. What can be the cause of this behaviour ? Also, why did you sugest these changes in particular ? |
|
August 13, 2014, 13:02 |
|
#11 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
I used to run this case in Fluent before. To reach an acceptable convergence I was using First Order Schemes for the first 100 iterations and then switched to Second Order and QUICK Schemes for the flow variables (P, rho, momentum, T, nut). Indeed, starting with Second Order was crashing every time. I believe it is happenning in my case here as well.
I tried to follow the same method in OpenFoam according to http://www.openfoam.org/docs/user/fvSchemes.php but it doesn't seem to behave the same (even what is called first order schemes in OpenFoam does not reach more than 6 iterations ...). Maybe I am doing something wrong but I don't know what :-/ Is it possible that the problem comes from another parameter of the simulation or is it really a Scheme related issue ? I do not have a lot of OpenFoam experience so I do not really know where to investigate ... Any hints/suggestions/ideas are welcome Seb |
|
August 15, 2014, 08:11 |
|
#12 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Okay, I tried to use the "all upwind" configuration, I found it browsing the forum and I believe it to be the closest scheme to first order.
Here it is : Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.2.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default steadyState; } gradSchemes { default cellLimited Gauss linear 1; } divSchemes { default bounded Gauss upwind; div(phi,U) bounded Gauss upwind; div(phi,nuTilda) bounded Gauss upwind grad(nuTilda); div((muEff*dev2(T(grad(U))))) Gauss linear; div(phi,Ekp) bounded Gauss upwind; div(phi,e) bounded Gauss upwind; } laplacianSchemes { default Gauss linear orthogonal; laplacian((rho*(1|A(U))),p) Gauss linear corrected; laplacian(muEff,U) Gauss linear corrected; laplacian(DnuTildaEff,nuTilda) Gauss linear corrected; laplacian(alphaEff,e) Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default orthogonal; } fluxRequired { default no; p ; } // ************************************************************************* // This is my fvSolution file: Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.2.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { p { solver GAMG; tolerance 1e-08; relTol 0.05; smoother DICGaussSeidel; cacheAgglomeration off; nCellsInCoarsestLevel 20; agglomerator faceAreaPair; mergeLevels 1; } U { solver smoothSolver; smoother GaussSeidel; nSweeps 2; tolerance 1e-06; relTol 0.1; } e { solver PBiCG; preconditioner DILU; tolerance 1e-06; relTol 0.1; } nuTilda { solver smoothSolver; smoother GaussSeidel; nSweeps 2; tolerance 1e-08; relTol 0.1; } } SIMPLE { pRefCell 0 ; pRefValue 1.01325e+05 ; // <pabs> 2 nNonOrthogonalCorrectors 0; rhoMin rhoMin [ 1 -3 0 0 0 ] 0.5; rhoMax rhoMax [ 1 -3 0 0 0 ] 1.5; residualControl { p 1e-5; U 1e-5; nuTilda 1e-5; } } relaxationFactors { fields { p 0.3 ; // <pondp> 2 rho 0.05 ; // <pondr> 2 } equations { U 0.6 ; // <pondm> 2 e 0.5 ; // <ponde> 2 nuTilda 0.7 ; // <pondv> 2 } } // ************************************************************************* // Seb |
|
August 19, 2014, 08:40 |
|
#13 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Up please !
Seb |
|
August 20, 2014, 05:43 |
|
#14 |
New Member
Bonjour
Join Date: Jul 2014
Location: France
Posts: 23
Rep Power: 11 |
Hello everyone,
I'm still struggling with this convergence problem for Mach 0.5. As said above, I tried to limit the pressure but it doesn't seem to affect the results. I used in fvSolution: Code:
SIMPLE { ... pMin pMin [1 -1 -2 0 0 ] 1000; pMax PMax [1 -1 -2 0 0 ] 300000; ... } Is there something that I'm missing here (like relative, total or absolute pressure, I don't know) ? The velocity magnitude also reaches some unrealistic values (up to Mach 3 with a 0.5 Mach number freestream, non physical with the geometry I use). What can I do to run a full simulation on my case ? I'm running out of solutions |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Unexplained Error during Solver Runs | cfb | CFX | 6 | November 9, 2012 15:42 |
Strange residuals of the Density Based Solver | Pat84 | FLUENT | 0 | October 22, 2012 15:59 |
Error, rhosimplefoam solver | schalinski | OpenFOAM Running, Solving & CFD | 7 | July 19, 2012 13:55 |
Quarter Burner mesh with periosic condition | SamCanuck | FLUENT | 2 | August 31, 2011 11:34 |
why the solver reject it? Anyone with experience? | bearcat | CFX | 6 | April 28, 2008 14:08 |