|
[Sponsors] |
July 8, 2017, 16:23 |
rhoPimpleFoam Max Iteration Problem
|
#1 |
New Member
JonathanG
Join Date: May 2017
Posts: 11
Rep Power: 9 |
Hi all,
I'm new to openFoam, and trying to simulate wind over a 3D naca0012 air foil. The wind velocity is 85 m/s, Ma = 0.25, entering at 15 deg w/o turbulence intensity I'm using rhoPimpleFoam as the application with LES simulation and WALE as the model. I'm having 2 issues: 1) My Courant number tends to increase over time - I've played around with the timestep but it didn't help, the simulation crashed around 100 iterations despite the changes. - The same simulation ran well when the velocity was at 0.53 m/s 2) I get an error: Code:
[51] [51] --> FOAM FATAL ERROR: [51] Maximum number of iterations exceeded[15] [15] [15] --> FOAM FATAL ERROR: [15] Maximum number of iterations exceeded [15] [15] From function Foam::scalar Foam::species::thermo<Thermo, Type>::T(Foam::scalar, Foam::scalar, Foam::scalar, Foam::scalar (Foam::species::thermo<Thermo, Type>::*)(Foam::scalar, Foam::scalar) const, Foam::scalar (Foam::species::thermo<Thermo, Type>::*)(Foam::scalar, Foam::scalar) const, Foam::scalar (Foam::species::thermo<Thermo, Type>::*)(Foam::scalar) const) const [with Thermo = Foam::eConstThermo<Foam::perfectGas<Foam::specie> >; Type = Foam::sensibleInternalEnergy; Foam::scalar = double; Foam::species::thermo<Thermo, Type> = Foam::species::thermo<Foam::eConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy>] [15] in file /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/src/thermophysicalModels/specie/lnInclude/thermoI.H at line 66. [15] FOAM parallel run aborting [15] [51] [51] From function Foam::scalar Foam::species::thermo<Thermo, Type>::T(Foam::scalar, Foam::scalar, Foam::scalar, Foam::scalar (Foam::species::thermo<Thermo, Type>::*)(Foam::scalar, Foam::scalar) const, Foam::scalar (Foam::species::thermo<Thermo, Type>::*)(Foam::scalar, Foam::scalar) const, Foam::scalar (Foam::species::thermo<Thermo, Type>::*)(Foam::scalar) const) const [with Thermo = Foam::eConstThermo<Foam::perfectGas<Foam::specie> >; Type = Foam::sensibleInternalEnergy; Foam::scalar = double; Foam::species::thermo<Thermo, Type> = Foam::species::thermo<Foam::eConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy>] [51] in file /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/src/thermophysicalModels/specie/lnInclude/thermoI.H at line 66. [51] FOAM parallel run aborting [51] [51] #0 Foam::error::printStack(Foam::Ostream&)[15] #0 Foam::error::printStack(Foam::Ostream&) addr2line failed [51] #1 Foam::error::abort() addr2line failed [51] #2 Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::eConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::calculate() addr2line failed [51] #3 Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::eConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::correct() addr2line failed [51] #4 #0? [51] #5 __libc_start_main [cp2448:11965] *** Process received signal *** [cp2448:11965] Signal: Segmentation fault (11) [cp2448:11965] Signal code: Address not mapped (1) [cp2448:11965] Failing at address: 0x68d11d0 addr2line failed [51] #6 [cp2448:11965] [ 0] /lib64/libc.so.6[0x341e432660] [cp2448:11965] [ 1] /lib64/libc.so.6[0x341e479c85] [cp2448:11965] [ 2] /cvmfs/opt.usherbrooke.ca/gcc/5.2.0/lib64/libstdc++.so.6(_Znwm+0x18)[0x2b4c965ce2d8] [cp2448:11965] [ 3] /cvmfs/opt.usherbrooke.ca/gcc/5.2.0/lib64/libstdc++.so.6(_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_assignERKS4_+0x82)[0x2b4c96669062] [cp2448:11965] [ 4] /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam14demangleSymbolEPKc+0xb4)[0x2b4c96156df4] [cp2448:11965] [ 5] /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam5error10printStackERNS_7OstreamE+0x1ab)[0x2b4c961578bb] ? [cp2448:11965] [ 6] /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam7sigSegv10sigHandlerEi+0x30)[0x2b4c9614bff0] [cp2448:11965] [ 7] /lib64/libc.so.6[0x341e432660] [cp2448:11965] [ 8] /lib64/libc.so.6(__libc_fork+0x14d)[0x341e4acd5d] [cp2448:11965] [ 9] /lib64/libc.so.6(_IO_proc_open+0x137)[0x341e4685b7] [cp2448:11965] [10] /lib64/libc.so.6(popen+0x69)[0x341e4688a9] [cp2448:11965] [11] /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam5pOpenERKNS_6stringEi+0x4f)[0x2b4c96155a1f] [cp2448:11965] [12] /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam22printSourceFileAndLineERNS_7OstreamERKNS_8fileNameEP7Dl_infoPv+0x2ed)[0x2b4c9615602d] [cp2448:11965] [13] /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam5error10printStackERNS_7OstreamE+0x102)[0x2b4c96157812] [cp2448:11965] [14] /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam5error5abortEv+0x121)[0x2b4c95cf0871] [cp2448:11965] [15] /cvmfs/opt.usherbrooke.ca/OpenFOAM/OpenFOAM-4.0/platforms/linux64GccDPInt32Opt/lib/libfluidThermophysicalModels.so(_ZN4Foam11hePsiThermoINS_9psiThermoENS_11pureMixtureINS_14constTransportINS_7species6thermoINS_12eConstThermoINS_10perfectGasINS_6specieEEEEENS_22sensibleInternalEnergyEEEEEEEE9calculateEv+0x633)[0x2b4c91b06c63] fvSolutions without any luck - I do not have access to the ThermoI.H file (openFoam 4.0) since I'm running it off a cluster and do not have permission to increase the max iterations greater than 100. I also have the output for the residuals: Any ideas would be greater appreciated! -Jonathan Last edited by JonathanG; July 10, 2017 at 17:29. |
|
July 10, 2017, 22:46 |
|
#2 |
New Member
JonathanG
Join Date: May 2017
Posts: 11
Rep Power: 9 |
Anyone have any idea?
|
|
July 11, 2017, 03:15 |
|
#3 |
New Member
Join Date: Feb 2017
Posts: 4
Rep Power: 9 |
Dear JonathanG,
I am not an expert in compressible flows, I have just some thoughts on your post: Have you tried limiting the timestep through Code:
adjustTimeStep yes; maxCo 0.5; Did the simulation work with RANS turbulence modelling? Have you checked your mesh through Code:
checkMesh Maybe you should try to run the simulation as incompressible in a first step since Ma<0.3 and then switch to a compressible solver if it works. Kind regards icab |
|
July 11, 2017, 09:10 |
|
#4 |
New Member
JonathanG
Join Date: May 2017
Posts: 11
Rep Power: 9 |
Hi icab,
Thanks for the response. I have tried adding the adjustTimeStep, as well as playing around with the Courant number, increasing it all the way to 10. It stays well below 1 for the first 20 or so iterations and then jumps to 2, then 12, then crashes. I have not tried the RANS model since the application we are trying to use and compare results for is based on LES. The LES application did work very well with the incompressible version of the case - which is the exact same case besides the following changes: 1) Velocity changed from 0.53 m/s to 85 m/s (in order to keep the same Re=35,000) 2) Used rhoPimpleFoam in place of pimpleFoam 3) rhoInf (in forceCoeffs) was changed to 1.17, magUInf to 85 I've also played around with fvSchemes and fvSolution which I've included below: Code:
FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default backward;//Euler; } gradSchemes { default Gauss linear; } divSchemes { default none; div(phi,U) Gauss LUST grad(U); div(phi,e) Gauss LUST grad(e); div(phi,K) Gauss limitedLinear .75; div(phi,B) Gauss limitedLinear .75; div(phi,muTilda) Gauss limitedLinear .75; div(B) Gauss linear; div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear; div(phi,s) bounded Gauss limitedLinear .75; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } Code:
FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { "(p|rho)" { solver PCG; preconditioner DIC; tolerance 5e-4; relTol 0.1;//Trying increase of relTol from 0.05; smoother DICGaussSeidel; } "(p|rho)Final" { $p; relTol 0; } //Going to try unique solvers for U "(U)" { solver PBiCG; preconditioner DILU; tolerance 5e-04; relTol 0.1;//Trying a high value to see, replace with 0.01 if 0.1 doesn't help } "(U)Final" { $U; relTol 0; } "(k|e|nuTilda)" { solver smoothSolver; smoother DILU;//symGaussSeidel; tolerance 5e-05; relTol 0.05; } "(k|e|nuTilda)Final" { $k;//changed from U, tried calling any name from the group, since they have the same settings relTol 0; } s { solver GAMG; preconditioner DIC;//trying with it now tolerance 1e-5; relTol 0.05; smoother DILUGaussSeidel; } "(rho)" { solver PCG; preconditioner DIC; tolerance 5e-05; relTol 0.1;//this is high, change after trial } "(rho)Final" { $rho; relTol 0.05;//the sample from www.simscale.com foil case had 0.01, leaving it higher as a trial } } PIMPLE { momentumPredictor off;//Was yes, but according to site below, its off for low Reynold's number which is 35,000 in this case rhoMin 0.5;//I had a range of 1 to 1.4, but most cases had a range from 0.5 to 2; rhoMax 2; nNonOrthogonalCorrectors 1;//0, but according to https://cfd.direct/openfoam/user-guide/fvsolution/ 0 is usually for steday state nCorrectors 3; //from 1 nOuter Correctors 1; //from 10, then 50 } relaxationFactors { fields { "(p|rho)" 0.3; "(p|rho)Final" 1; "(U)" 0.3; "(U)Final" 1; } } The s file has no unit (0 0 0 0), which is very odd and I couldn't find any other case with them on, though when iterating, it looks for the s file which works when running, which is boggling since there are no units defined. Any idea why? I tried checkMesh, it seems ok: Code:
Create time Create polyMesh for time = 0 Time = 0 Mesh stats points: 1649280 faces: 4720600 internal faces: 4495400 cells: 1536000 faces per cell: 6 boundary patches: 7 point zones: 0 face zones: 1 cell zones: 1 Overall number of cells of each type: hexahedra: 1536000 prisms: 0 wedges: 0 pyramids: 0 tet wedges: 0 tetrahedra: 0 polyhedra: 0 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 patch topology for multiply connected surfaces... Patch Faces Points Surface topology FAM7 6000 6416 ok (non-closed singly connected) FAM6 4800 5136 ok (non-closed singly connected) FAM13 102400 103080 ok (non-closed singly connected) periodic_sh 102400 103080 ok (non-closed singly connected) FAM3 6000 6400 ok (non-closed singly connected) TOP 1800 1936 ok (non-closed singly connected) BOTTOM 1800 1936 ok (non-closed singly connected) Checking geometry... Overall domain bounding box (-20 -20 -1.49012e-08) (20 20 0.2) Mesh has 3 geometric (non-empty/wedge) directions (1 1 1) Mesh has 3 solution (non-empty) directions (1 1 1) Boundary openness (-1.64442e-17 2.57034e-17 -4.21821e-15) OK. Max cell openness = 5.43081e-16 OK. Max aspect ratio = 826.129 OK. Minimum face area = 2.92746e-07. Maximum face area = 0.45742. Face area magnitudes OK. Min volume = 3.90328e-09. Max volume = 0.00609965. Total volume = 285.638. Cell volumes OK. Mesh non-orthogonality Max: 44.9864 average: 11.3695 Non-orthogonality check OK. Face pyramids OK. Max skewness = 0.715806 OK. Coupled point location match (average 0) OK. Mesh OK. End Thanks in advance for any more help. Jonathan |
|
July 11, 2017, 10:21 |
|
#5 |
New Member
JonathanG
Join Date: May 2017
Posts: 11
Rep Power: 9 |
I just wanted to clarify that I did put a turbulent inlet (code seen below). I need to mention that I put probes between the inlet and the airfoil to test the wind velocity, and there was barely any difference (order of 0.01-0.03% difference in U) between turbulentInlet and just fixedValue. Seems it dissipates quite quickly, maybe due to the integration method between cells?
Code:
FoamFile { version 2.0; format ascii; class volVectorField; object U; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 1 -1 0 0 0 0]; internalField uniform (82.1037 22 0);//15 deg A.O.A. boundaryField { FAM7//Inlet { type turbulentInlet; referenceField uniform (82.1037 22 0); fluctuationScale (0.058 0.156 0.00); //(85xcos15 85xsin15 85x0) value uniform (82.1037 22 0); } FAM6//Outlet { type pressureInletOutletVelocity; value uniform (82.1037 22 0); inletValue uniform (82.1037 22 0); } periodic_sh//Top { type symmetry; } FAM13//Bottom { type symmetry; } TOP //upper wall { type symmetry; } BOTTOM //lower wall { type symmetry; } FAM3//airFoilFace { type noSlip; } } |
|
Tags |
divergence of temperature, divergence of velocity, max iterations exceeded, openfoam, rhopimplefoam |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
multiphaseEulerFoam (OF2.3.0) : Courant number explodes when running in parallel | Mehrez | OpenFOAM Running, Solving & CFD | 10 | May 18, 2016 12:44 |
Floating point exception error | lpz_michele | OpenFOAM Running, Solving & CFD | 53 | October 19, 2015 03:50 |
[ICEM] Max Element Problem | a.sarami | ANSYS Meshing & Geometry | 0 | December 12, 2013 10:41 |
Force can not converge | colopolo | CFX | 13 | October 4, 2011 23:03 |
Upgraded from Karmic Koala 9.10 to Lucid Lynx10.04.3 | bookie56 | OpenFOAM Installation | 8 | August 13, 2011 05:03 |