|
[Sponsors] |
![]() |
![]() |
#1 |
Senior Member
A. Min
Join Date: Mar 2015
Posts: 305
Rep Power: 12 ![]() |
Hi all
I am simulating "flow around a cylinder in Re=1-1000" for divergence of velocity, which scheme is better? I have used central, 1st order upwind and 2nd order upwind for that and I have gotten more accuracy (according to other numerical papers not experimental) for central! for example for Re=100: numerical paper: CL=0.15 and -0.15 central: CL=0.1461 and -0.1461 linearUpwind: CL=0.123 and -0.1293 thanks |
|
![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Taher Chegini
Join Date: Nov 2014
Location: Houston, Texas
Posts: 125
Rep Power: 12 ![]() |
There is no schemes that works for all the cases, depends on the problem, solver, other schemes that you've setup but what's important to note is that it should have the highest possible accuracy. You can get away with, for example, a first order scheme for turbulence variables but the velocity should be a formal second order. That said, I usually start with linearUpwind grad(U) and try to set other schemes in a way to get good results. If it doesn't work, vanLeer is the last resort. In cases with high Mach numbers limitedLinear is another option.
|
|
![]() |
![]() |
![]() |
![]() |
#3 | |
Senior Member
A. Min
Join Date: Mar 2015
Posts: 305
Rep Power: 12 ![]() |
Quote:
Is there hybrid scheme in openFoam? thanks |
||
![]() |
![]() |
![]() |
![]() |
#4 |
Senior Member
Taher Chegini
Join Date: Nov 2014
Location: Houston, Texas
Posts: 125
Rep Power: 12 ![]() |
||
![]() |
![]() |
![]() |
![]() |
#5 | |
Senior Member
A. Min
Join Date: Mar 2015
Posts: 305
Rep Power: 12 ![]() |
Quote:
I've read both of those links, but I haven't gotten confidence to select "linear" or limitedLinear or linearUpwind for div(phi,U) in my case. for all of above schemes, I have earned convergence, but accuracy is my problem. What would you do if you were me? Also, again: Are you sure that LUST is a hybrid? Hybrid scheme has a good feature that it can switch between linear and upwind according to Peclet number. I think this is the best scheme for my problem. but I didn't find it in openFoam! |
||
![]() |
![]() |
![]() |
![]() |
#6 |
Senior Member
Taher Chegini
Join Date: Nov 2014
Location: Houston, Texas
Posts: 125
Rep Power: 12 ![]() |
If you use limited schemes such as limitedLinear you may loose accuracy, you should use them for variable that should be bounded such as K (always positive), T(always positive) and alpha(between 0 and 1). So linearUpwind which is second order and unbounded is one of the the best option for accuracy if there isn't crazy gradient in the nature of your problem.
LUST is a blended scheme, 75% linear and 25% linearUpwind scheme. I always start with linearUpwind for U and change it if it doesn't converge. In this simple case, however, a good starting setup for the flow around cylinder in low Reynolds number would be linear (more accurate than linearUpwind but unbounded) for U with PBiCGStab as the solver. |
|
![]() |
![]() |
![]() |
![]() |
#7 | |
Senior Member
A. Min
Join Date: Mar 2015
Posts: 305
Rep Power: 12 ![]() |
Quote:
I tested both linear and linearUpwind. Linear gave me more accurae in lift coeff (2% for lift coeff and 1% for drag coeff) and linearUpwind gave more accurate in drag coeff (14% for lift coeff and 0.1% for drag). I dont know why? Maby because Peclet in my problem is lower than 2. But why gave me 14% error in lift coeff by linearUpwind??? As you mentioned, linearUpwind is 2nd order. But I think this is dissipative and dissipates lift coeff. Your idea? |
||
![]() |
![]() |
![]() |
![]() |
#8 |
Senior Member
Taher Chegini
Join Date: Nov 2014
Location: Houston, Texas
Posts: 125
Rep Power: 12 ![]() |
May I see your case? If you can upload your whole case so I can see the boundaries, schemes, solutions and solver, I could provide more useful comments.
Maybe you've already read this link, but it has some nice explanations. |
|
![]() |
![]() |
![]() |
![]() |
#9 | |
Senior Member
A. Min
Join Date: Mar 2015
Posts: 305
Rep Power: 12 ![]() |
Quote:
http://s8.picofile.com/file/8316766050/11_tar.gz.html |
||
![]() |
![]() |
![]() |
![]() |
#10 |
Senior Member
Taher Chegini
Join Date: Nov 2014
Location: Houston, Texas
Posts: 125
Rep Power: 12 ![]() |
I haven't worked with OF 2 so I can't get very specific. Couple of comments though. Since you;re using pimpleFoam you should set the relaxation factor to 1, like this:
Code:
relaxationFactors { equations { ".*" 1; } } Code:
laplacianSchemes { default Gauss linear limited 0.5; } snGradSchemes { default limited 0.5; } Code:
PIMPLE { nOuterCorrectors 1; nCorrectors 3; nNonOrthogonalCorrectors 1; momentumPredictor no; } |
|
![]() |
![]() |
![]() |
![]() |
#11 | |
Senior Member
A. Min
Join Date: Mar 2015
Posts: 305
Rep Power: 12 ![]() |
Quote:
Thanks for your comments. I used PISO not pimple. why should I use non-orthogonal correction for laplacian term? |
||
![]() |
![]() |
![]() |
![]() |
#12 |
Senior Member
Taher Chegini
Join Date: Nov 2014
Location: Houston, Texas
Posts: 125
Rep Power: 12 ![]() |
When nOuterCorrectors is set to 1, it's PISO.
Non-orthogonal correction depends on mesh not equation. If max non-orthogonality of the mesh is more than 5 degree, it's recommended to use a limiter, the higher the coefficient of the limiter the more accurate the solution. If you can get away with limited 1 use it. You've set to limited 0.33 previously and I've changed it to 0.5! I couldn't check the mesh. So run checkMesh and if max non-orthogonality is more than 5 and less than 40 use limited 1. If it's more than 40 you can lower the the coefficient add/or increase nNonOrthogonalCorrectors. |
|
![]() |
![]() |
![]() |
![]() |
#13 | |
Senior Member
A. Min
Join Date: Mar 2015
Posts: 305
Rep Power: 12 ![]() |
Quote:
As my last question: what do you mean by "When nOuterCorrectors is set to 1, it's PISO." I didn't get it. Thanks, again ![]() |
||
![]() |
![]() |
![]() |
![]() |
#14 |
Senior Member
Taher Chegini
Join Date: Nov 2014
Location: Houston, Texas
Posts: 125
Rep Power: 12 ![]() |
corrected is the same as limited 1.
PIMPLE is PISO + SIMPLE. Meaning that it's a combination of PISO segregation and SIMPLE under-relaxation. The main idea behind PIMPLE is to allow large time steps for example when you have a very long simulation. So when you do only one iteration over the outer loop it's basically PISO without any under-relaxation but if you do more than that you're adding under-relaxation property of SIMPLE. The values that I've suggested are the recommended values for transient solvers such as pimpleFoam. |
|
![]() |
![]() |
![]() |
![]() |
#15 | |
Senior Member
A. Min
Join Date: Mar 2015
Posts: 305
Rep Power: 12 ![]() |
Quote:
![]() |
||
![]() |
![]() |
![]() |
Tags |
openfoam, schemes |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
comparison of discretization scheme | alimea | Main CFD Forum | 12 | January 16, 2018 14:17 |
comparison of discretization scheme | alimea | Main CFD Forum | 23 | December 21, 2017 16:27 |
comparison of discretization scheme | alimea | OpenFOAM Running, Solving & CFD | 0 | December 14, 2017 09:42 |
Temporal discretization Scheme CoEuler | vsammartano | OpenFOAM Running, Solving & CFD | 0 | April 12, 2016 07:06 |
Time discretization scheme | HaKu | Main CFD Forum | 1 | June 12, 2011 02:06 |