- **OpenFOAM Pre-Processing**
(*https://www.cfd-online.com/Forums/openfoam-pre-processing/*)

- - **Convergence crtieria**
(*https://www.cfd-online.com/Forums/openfoam-pre-processing/62141-convergence-crtieria.html*)

Hi
I am trying to test SIMPHi
I am trying to test SIMPLEFOAM with a Bird-Carreau law and I have a very trivial question: I noticed that, when running the non linear computation, I have to specify the number of iterations a priori, (their number is being suggested by the proogramme itself). Is it possible to run the programme in such a way that the computation interrupts automatically as soon as convergence is reached ? (comvergence criterium). Thank you in davance, Lam |

Oh, THANKS a lot Mark, for repOh, THANKS a lot Mark, for replying me!
I am going give a go right now! Cheers, Lam |

I guess I wasn't explicit enouI guess I wasn't explicit enough. You can either solve the equation and ignore the return value:
solve(UEqn() == -fvc::grad(p)); OR solve the equation and use the return value: eqnResidual = solve(UEqn() == -fvc::grad(p)).initialResidual(); but not both. It is also essential to capture the mass residual. ie. replace pEqn.solve(); with if (nonOrth == 0) { eqnResidual = pEqn().solve().initialResidual(); maxResidual = max(eqnResidual, maxResidual); } else { pEqn().solve(); } The residuals from the turbulence equation are not directly accessible, but this might change in OpenFOAM 1.4 |

It looks mostly reasonable excIt looks mostly reasonable except you don't need this line twice.
eqnResidual = solve(UEqn() == -fvc::grad(p)).initialResidual(); |

Hi again Mark,
I had removeHi again Mark,
I had removed the line which is not needed as you said. And of course, I did the Allmake to update the simpleFoam.C file. I made a computation, but the result has not changed. You can take a look at my fvSolution file: *********************** solvers { p ICCG 1e-03 0.01; U BICCG 1e-03 0.1; k BICCG 1e-03 0.1; epsilon BICCG 1e-03 0.1; R BICCG 1e-03 0.1; nuTilda BICCG 1e-03 0.1; } *********************** I just want a 1e-03 solver tolerance. But the computation still stopps at the endtime (=4000 itrations). I just have a solution wich seems to not menage to reach the convergence. Can you give some advice to get it right? Thanks in advance, Lam |

I don't wish to be impolite, bI don't wish to be impolite, but re-check the original suggestion:
# include "readSIMPLEControls.H" ... if (simple.found("convergence")) { ... } Check "readSIMPLEControls.H" file to see what is being read there and its relation to the following if (simple.found(..)) conditional. Again, I really don't wish to be impolite, but I really don't have enough time to help much more than I already did. Sorry but you need to do this alone (or keep some basic commercial support). /mark |

All times are GMT -4. The time now is 21:12. |