icoFoam VS pisoFoam-Laminar
Hi every body,
I have a simple question: I run two simulations (flow over a circular cylinder Re = 150 : laminar unsteady case). The first one using icoFoam, and the second one using pisoFoam with turbulence turned off (laminar). The two setups are exactly identical. Results : with icoFoam I got a correct Strouhal number (Sr = 0.156) by plotting the Cl, wheras pisoFoam gives a quite lower value (Sr = 0.0527) !! I am a bit puzzling since I expected that: (pisoFoam + laminar) = icoFoam. Any help please ?? Mehdi |
None??
none has experienced this issue? :confused: |
______
| o /|\ /\ _______________ |
Compare the outputs of " turbulence->divDevReff(U)" and "- fvm::laplacian(nu, U)", and try to find out why they are not equal?
|
Thank you very much for your answer :)
Where and how can I compare these outputs ? Sorry for my ignorance M. |
Make sure the turbulence model is set to "laminar". Turning turbulence "off" just means that the turbulence model is not corrected during the solution. Depending on your initial k and epsilon fields, they can still affect the effective viscosity and thus the simulation results.
|
I set in turbulenceProperties dictionary :
simulationType laminar; :confused: In addition, I have only p and U files in 0/ directory. M |
Mehdi
Have you already solved your issue? Basically, I also have a similar problem. I run a case (flow over a square cylinder with Re=22000) by both pisoFoam and pimpleFoam. The Strouhal number in pimpleFoam matches the experimental data (0.132), but the one in pisoFoam (approximately 0.05) does not. It's really like what you got. Both of the two simulations use RANS K-OmegaSST turbulent model. The only differences for setup were 'application' in system/controlDict (the former use pisoFoam, the latter use pimpleFoam) and the algorithms in system/fvSolution (the former use PISO, the latter use PIMPLE). Xuan |
Quote:
Your problem seems like mine indeed ! Unfortunately, I have not solved it. For the time being, I concluded that pisoFoam is adapted to turbulent unsteady cases and icoFoam to laminar unsteady ones... but I still worried about this strange behavior.. Any hints would be welcome. Regards. M. |
Thank you for your reply.
Your conclusion is correct. But based on my results, pisoFoam does not work in unsteady turbulent case also. Best, Xuan |
_____
| o /|\ /\ _______________No idea :( |
Hi, Mehdi,
I have already figured out the reason why I got a wrong Strouhal number in this unsteady case. Actually, I used relaxationFactors in fvSoltuion dictionary because I just copied what I had in my steady case. But generally, relaxation factors are particularly used for steady case to improve the stability of computing. After I removed those things, I got good solutions and correct Strouhal number as well. Hopefully, it will be helpful to you. Xuan |
Thank you Xuan for sharing your ideas :)
I checked my fvSolution files for icoFoam and pisoFoam simulations and in both cases I found relaxation factors. For you, I have to remove them for both simulations since they are unsteady cases ? (I will check both cases without these relaxation factors and I will tell you if this solves my problem ..) An other question : I have run both simulations (icoFoam and pisoFoam) with relaxation factors and icoFoam gives good Strouhal number wheras pisoFoam has failed. If relaxation factors are the only cause of false results, can we conclude that icoFoam does not use them where pisoFoam does ? Thank you again for your remark, I will dig on that in the next weeks .. regards M. |
Hi Mehdi
The reason that you see different results when using icoFoam/pisoFoam with the same relaxation parameter is very simple: The relaxation parameters does not have any effect what so ever in icoFoam, as the line: Code:
UEqn.relax(); Kind regards, Niels |
Thank you, Niel, for this brilliant remark !
Indeed, this can explain the difference in results. I feel more relaxed now V |
Thanks, Niel, for your explanation, too.
Best, Xuan |
this is a great thread!!
I've also been trapped by the same problem for half a month, now it is solved!! I'm using pimpleFoam and relaxation is allowed in this. as long as we are doing unsteady cases, should we never use relaxation for future simulations? |
It’s easy to understand. The purpose of using relaxation factors is to increase the diagonal dominance of the A matrix in the Ax=b system of equations that is solved. If you set up the system, you will see that the coefficients ap of A matrix are divided by alpha (the relaxation factor). So for a smaller relaxation factor, the coefficient increases a lot and improves diagonal dominance. Check out linear algebra to see why diagonal dominance is good.
For a transient case, you have the coefficients from the time discretisation that are ALWAYS added to the diagonal terms. This improves the diagonal dominance and makes addition of relaxation factors redundant. So in short, don’t use relaxation factors if you are doing a transient simulation. |
All times are GMT -4. The time now is 16:24. |