|
[Sponsors] |
July 26, 2013, 00:18 |
PimpleFoam-Crashed
|
#1 |
Member
Amin
Join Date: May 2013
Posts: 76
Rep Power: 12 |
Hello
In order to simulate a laminar and incompressible flow past a cube i tried to use icoFoam, but the i did know how to stabilize this solver, because of the high courant number. That is why i am trying to run the simulation now with pimpleFoam, but unlikely the solver is crashing too. I think because to time-step is very low... Do you know how to stabilize icoFoam and how to fix the problem with pinmpleFoam? It would be great if someone could help me solve the problem : Here is the output of OF (simulation with pimpleFoam. OF 2.2.0): Code:
Courant Number mean: 0.00905642 max: 10.7784 deltaT = 1.3457e-101 --> FOAM Warning : From function Time::operator++() in file db/Time/Time.C at line 1029 Increased the timePrecision from 261 to 262 to distinguish between timeNames at time 12.8518 Time = 12.851786558825548212325884378515183925628662109375 DILUPBiCG: Solving for Ux, Initial residual = 0.425712, Final residual = 2.75527e-06, No Iterations 5 DILUPBiCG: Solving for Uy, Initial residual = 0.285945, Final residual = 5.18152e-07, No Iterations 5 DICPCG: Solving for p, Initial residual = 0.657594, Final residual = 0.014474, No Iterations 2 time step continuity errors : sum local = 4.37835e-05, global = -2.86105e-05, cumulative = -0.00487001 DICPCG: Solving for p, Initial residual = 0.592278, Final residual = 8.3816e-07, No Iterations 163 time step continuity errors : sum local = 3.37411e-09, global = 6.57181e-11, cumulative = -0.00487001 ExecutionTime = 174.2 s ClockTime = 201 s Courant Number mean: 0.00538199 max: 5.49296 deltaT = 1.22493e-101 --> FOAM Warning : From function Time::operator++() in file db/Time/Time.C at line 1029 Increased the timePrecision from 262 to 263 to distinguish between timeNames at time 12.8518 Time = 12.851786558825548212325884378515183925628662109375 DILUPBiCG: Solving for Ux, Initial residual = 0.319248, Final residual = 5.97266e-06, No Iterations 5 DILUPBiCG: Solving for Uy, Initial residual = 0.284562, Final residual = 5.43627e-06, No Iterations 5 DICPCG: Solving for p, Initial residual = 0.428836, Final residual = 0.0167637, No Iterations 2 time step continuity errors : sum local = 0.00011502, global = 6.84904e-05, cumulative = -0.00480151 DICPCG: Solving for p, Initial residual = 0.306846, Final residual = 8.56454e-07, No Iterations 153 time step continuity errors : sum local = 1.01177e-08, global = 5.813e-11, cumulative = -0.00480151 ExecutionTime = 174.63 s ClockTime = 201 s Courant Number mean: 0.00810236 max: 7.03961 deltaT = 8.70027e-102 --> FOAM Warning : From function Time::operator++() in file db/Time/Time.C at line 1029 Increased the timePrecision from 263 to 264 to distinguish between timeNames at time 12.8518 Time = 12.851786558825548212325884378515183925628662109375 DILUPBiCG: Solving for Ux, Initial residual = 0.456665, Final residual = 6.35141e-07, No Iterations 8 DILUPBiCG: Solving for Uy, Initial residual = 0.375937, Final residual = 3.13479e-06, No Iterations 8 DICPCG: Solving for p, Initial residual = 0.489683, Final residual = 0.0239404, No Iterations 26 time step continuity errors : sum local = 0.000190772, global = -4.11878e-05, cumulative = -0.0048427 DICPCG: Solving for p, Initial residual = 0.449154, Final residual = 7.10247e-07, No Iterations 175 time step continuity errors : sum local = 1.31591e-08, global = -4.67166e-11, cumulative = -0.0048427 ExecutionTime = 175.14 s ClockTime = 202 s Courant Number mean: 0.0375239 max: 28.0087 deltaT = 1.55314e-102 --> FOAM Warning : From function Time::operator++() in file db/Time/Time.C at line 1029 Increased the timePrecision from 264 to 265 to distinguish between timeNames at time 12.8518 Time = 12.851786558825548212325884378515183925628662109375 #0 Foam::error::printStack(Foam::Ostream&) in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 in "/lib/x86_64-linux-gnu/libc.so.6" #3 double Foam::sumProd<double>(Foam::UList<double> const&, Foam::UList<double> const&) in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #4 Foam::PBiCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #5 in "/opt/openfoam220/platforms/linux64GccDPOpt/bin/pimpleFoam" #6 in "/opt/openfoam220/platforms/linux64GccDPOpt/bin/pimpleFoam" #7 in "/opt/openfoam220/platforms/linux64GccDPOpt/bin/pimpleFoam" #8 in "/opt/openfoam220/platforms/linux64GccDPOpt/bin/pimpleFoam" #9 in "/opt/openfoam220/platforms/linux64GccDPOpt/bin/pimpleFoam" #10 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6" #11 in "/opt/openfoam220/platforms/linux64GccDPOpt/bin/pimpleFoam" Floating point exception (core dumped) Thx |
|
July 26, 2013, 03:45 |
|
#2 |
Senior Member
|
There are lots of reasons your solution is diverging (bad mesh, wrong IC, wrong BC etc). Can you please post you case files?
|
|
July 26, 2013, 03:50 |
|
#3 |
Member
Amin
Join Date: May 2013
Posts: 76
Rep Power: 12 |
||
July 26, 2013, 04:53 |
|
#4 |
Senior Member
|
Well...
To make the case run it was enough to increase nNonOrthogonalCorrectors from 0 to 1. But results are still rather strange so you can also increase nOuterCorrectors and nCorrectors. But better switch to residualControl for exit condition from PIMPLE loop. This is just the correction of nNonOrthogonalCorrectors (fvSolution) Code:
PIMPLE { nOuterCorrectors 1; nCorrectors 2; nNonOrthogonalCorrectors 1; pRefCell 1001; pRefValue 0; } If we now switch on residualControl (fvSolution), reduce maxCo from 5 to 1 (in controlDict) and rerun the case we'll get results presented on velocity-field-2.png. And they seems to be more promising. Here's the fragment of fvSolution: Code:
PIMPLE { nOuterCorrectors 100; nCorrectors 3; nNonOrthogonalCorrectors 2; pRefCell 1001; pRefValue 0; residualControl { U { tolerance 1e-2; relTol 0; } p { tolerance 1e-2; relTol 0; } } } Code:
p { solver PCG; preconditioner DIC; tolerance 1e-06; relTol 1e-05; } pFinal { solver PCG; preconditioner DIC; tolerance 1e-08; relTol 0; } |
|
July 26, 2013, 05:25 |
|
#5 |
Senior Member
|
Was not exactly right about flow being laminar. Velocity field at 30 s is on attached file. But still flow has this "stable" von Carman vortex street
|
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
pimpleFoam: turbulence->correct(); is not executed when using residualControl | hfs | OpenFOAM Running, Solving & CFD | 3 | October 29, 2013 08:35 |
tried with pimpleFoam and a big CFL = 5 | ivan_cozza | OpenFOAM Running, Solving & CFD | 9 | June 4, 2013 18:14 |
Understanding pimpleFoam convergence criterion | Nucleophobe | OpenFOAM Running, Solving & CFD | 0 | March 13, 2013 18:46 |
Differences simpleFoam vs. pimpleFoam / RASModel.H vs turbulenceModel.H | uli | OpenFOAM Programming & Development | 7 | January 26, 2013 15:01 |
PimpleFoam problem | Vadims.geza | OpenFOAM | 8 | December 7, 2011 08:54 |