|
[Sponsors] |
![]() |
![]() |
#21 |
Senior Member
Cedric DUPRAT
Join Date: Mar 2009
Location: Nantes, France
Posts: 195
Rep Power: 17 ![]() |
Hi Philippe,
Yes, you can do that, just telling that the shear stress in your periodic channel is compensated by the favorable pressure gradient. So you get u_tau to get U+ and y+. Do you plan to let your results avaiable ? I'm quite interresting in that just to compare with my results. Notice that with the value of u_tau, you can calculate a Re_tau which is better to compare with DNS results. Cedric |
|
![]() |
![]() |
![]() |
![]() |
#22 |
Member
Philippe B. Vincent
Join Date: Mar 2009
Location: Quebec, Canada
Posts: 32
Rep Power: 17 ![]() |
Good. I'm glad it's the good way to calculate u_tau. I don't know to what extend I will be working on this test case, but sure I can share the results. I'll keep you posted.
thanks, Philippe |
|
![]() |
![]() |
![]() |
![]() |
#23 |
Senior Member
Fabian Braennstroem
Join Date: Mar 2009
Posts: 407
Rep Power: 19 ![]() |
Hi Cedric,
if you have used any scripts for plotting the above profiles, it would be nice, to share these for the turbulence SIG :-) If there is some kind of 'standard', others might provide there results to some kind of database as well!? Fabian |
|
![]() |
![]() |
![]() |
![]() |
#24 |
Senior Member
Cedric DUPRAT
Join Date: Mar 2009
Location: Nantes, France
Posts: 195
Rep Power: 17 ![]() |
Hi Fabian,
Well, I used the postChannel tool to get lot's of two colums files. but after that, it's quite .... home made :o) I'll try to clean one of these gnuplot files to do a standard format. Do you plan to do a LES channel tutorial ? :-) Cedric |
|
![]() |
![]() |
![]() |
![]() |
#25 |
Senior Member
Fabian Braennstroem
Join Date: Mar 2009
Posts: 407
Rep Power: 19 ![]() |
Hi Cedric,
yes, such a tutorial would be a first step!? The base is probably already in the channelOodle tutorial, though comparisons with other filters and models would be nice. Even comparison with RANS models and their y+ sensitivity would be interesting. Fabian |
|
![]() |
![]() |
![]() |
![]() |
#26 |
New Member
Jianying Jiao
Join Date: Mar 2009
Posts: 6
Rep Power: 17 ![]() |
Hi OpenFOAM
I want to simulation channel flow with dynSmagorinsky(channelOodel channel395), but i can't get "good" results for a channel flow with OpenFOAM. I want to validate OpenFOAM from Moser DNS (Retau = 395). the size of my channel : 4*2*2,80*50*60 the schemes of my channel: ddtSchemes { default backward; } gradSchemes { default Gauss linear; grad Gauss linear; grad Gauss linear; } divSchemes { default none; div(phi,U) Gauss linear; div(phi,k) Gauss limitedLinear 1; div(phi,B) Gauss limitedLinear 1; div Gauss linear; div(phi,nuTilda) Gauss limitedLinear 1; div((nuEff*dev(grad .T()))) Gauss linear; } laplacianSchemes { default none; laplacian(nuEff,U) Gauss linear corrected; laplacian((1|A ),p) Gauss linear corrected; laplacian(DkEff,k) Gauss linear corrected; laplacian(DBEff,B) Gauss linear corrected; laplacian(DnuTildaEff,nuTilda) Gauss linear corrected; } interpolationSchemes { default linear; interpolate linear; } snGradSchemes { default corrected; } fluxRequired { default no; p; } it is in openFoam 1.4.1. my result: ![]() than you for your view. Jianying |
|
![]() |
![]() |
![]() |
![]() |
#27 |
New Member
Jianying Jiao
Join Date: Mar 2009
Posts: 6
Rep Power: 17 ![]() |
Hi OpenFOAM
I want to simulation channel flow with dynSmagorinsky(channelOodel channel395), but i can't get "good" results for a channel flow with OpenFOAM. I want to validate OpenFOAM from Moser DNS (Retau = 395). the size of my channel : 4*2*2,80*50*60 the schemes of my channel: ddtSchemes { default backward; } gradSchemes { default Gauss linear; grad Gauss linear; grad Gauss linear; } divSchemes { default none; div(phi,U) Gauss linear; div(phi,k) Gauss limitedLinear 1; div(phi,B) Gauss limitedLinear 1; div Gauss linear; div(phi,nuTilda) Gauss limitedLinear 1; div((nuEff*dev(grad .T()))) Gauss linear; } laplacianSchemes { default none; laplacian(nuEff,U) Gauss linear corrected; laplacian((1|A ),p) Gauss linear corrected; laplacian(DkEff,k) Gauss linear corrected; laplacian(DBEff,B) Gauss linear corrected; laplacian(DnuTildaEff,nuTilda) Gauss linear corrected; } interpolationSchemes { default linear; interpolate linear; } snGradSchemes { default corrected; } fluxRequired { default no; p; } it is in openFoam 1.4.1. my result: ![]() ![]() ![]() ![]() than you for your view. Jianying |
|
![]() |
![]() |
![]() |
![]() |
#28 |
Member
mohd mojab
Join Date: Mar 2009
Posts: 31
Rep Power: 17 ![]() |
Hello
In the channel solver for having periodic pressure, it use; // Extract the velocity in the flow direction dimensionedScalar magUbarStar = (flowDirection & U)().weightedAverage(mesh.V()); // Calculate the pressure gradient increment needed to // adjust the average flow-rate to the correct value dimensionedScalar gradPplus = (magUbar - magUbarStar)/rUA.weightedAverage(mesh.V()); Would anyone explain for me what is the meaning of this terms and how they work that can remain the mass flux constant? Thank you mou |
|
![]() |
![]() |
![]() |
![]() |
#29 |
Senior Member
Cedric DUPRAT
Join Date: Mar 2009
Location: Nantes, France
Posts: 195
Rep Power: 17 ![]() |
Hi Mou,
the weightedAverage commande calculate the volume average of a volSclalarField. So if you have a volScalarField "toto", toto.weightedAverage(mesh.V()); gives you the average value of "toto" in the all domain. With that, the line (flowDirection & U)().weightedAverage(mesh.V()); give the average velocity in the flowDirection. In the transportProperties you fixed Ubar (and magUbar) so the term (magUbar - magUbarStar) gives the difference between the mass flow average you have in your calculation and the mass flow average you want. You can write this error as a pressure drop in you periodic channel which explain the "gradPplus" name. Then, you add a streamwise body force to the Navier-Stokes equation to correct this error. The idea is to get (magUbar - magUbarStar) as small as possible, then the mass flow average you wanted is the mass flow averae you get in your calculation. I hope it helps you. Cedric |
|
![]() |
![]() |
![]() |
![]() |
#30 |
Member
mohd mojab
Join Date: Mar 2009
Posts: 31
Rep Power: 17 ![]() |
Thank you Cedric,
It was so helpful. Mou |
|
![]() |
![]() |
![]() |
![]() |
#31 |
Member
Ning Yang
Join Date: Mar 2009
Location: University Park, PA, USA
Posts: 84
Rep Power: 17 ![]() |
Hi Jianying:
Have you found a way to improve your results? I did a similar simulation using channel395, and here is my results: ![]() ![]() |
|
![]() |
![]() |
![]() |
![]() |
#32 |
Member
Ning Yang
Join Date: Mar 2009
Location: University Park, PA, USA
Posts: 84
Rep Power: 17 ![]() |
Hi Jianying:
Have you found a way to improve your results? I did a similar simulation using channel395, and here is my results: ![]() ![]() Neither Umean or rms looks good to me. Here is my blockmeshDict ================================================== ========================================= convertToMeters 1; vertices ( // (0 0 0) // (4 0 0) // (0 1 0) // (4 1 0) // (0 2 0) // (4 2 0) // (0 0 2) // (4 0 2) // (0 1 2) // (4 1 2) // (0 2 2) // (4 2 2) (0 0 0) (6.28 0 0) (0 1 0) (6.28 1 0) (0 2 0) (6.28 2 0) (0 0 3.14) (6.28 0 3.14) (0 1 3.14) (6.28 1 3.14) (0 2 3.14) (6.28 2 3.14) ); blocks ( // hex (0 1 3 2 6 7 9 8) (40 25 30) simpleGrading (1 10.7028 1) // hex (2 3 5 4 8 9 11 10) (40 25 30) simpleGrading (1 0.0984 1) hex (0 1 3 2 6 7 9 8) (80 50 60) simpleGrading (1 10 1) hex (2 3 5 4 8 9 11 10) (80 50 60) simpleGrading (1 0.1 1) ); edges ( ); patches ( wall bottomWall ( (0 1 7 6) ) wall topWall ( (4 10 11 5) ) cyclic sides1 ( (0 2 3 1) (6 7 9 8) ) cyclic sides2 ( (2 4 5 3) (8 9 11 10) ) cyclic inout1 ( (1 3 9 7) (0 6 8 2) ) cyclic inout2 ( (3 5 11 9) (2 8 10 4) ) ); mergePatchPairs ( ); ================================================== ========================= SGS model I used: LESmodel oneEqEddy; delta vanDriest; ================================================== ========================= The initial condition of flow was obtained using perturbU. The flow was run for about 200 flow through time to get a steady state then sampled for another 200 flow through times. The problem I am having is: I calculated utau based on mean pressure gradient. The utau based on 200 flow through times is 0.0073. The actual value is 0.0079. Is there anyway to improve this? Thank you. Ning |
|
![]() |
![]() |
![]() |
![]() |
#33 |
Member
Ning Yang
Join Date: Mar 2009
Location: University Park, PA, USA
Posts: 84
Rep Power: 17 ![]() |
Sorry, my bad. here is rms:
/image{umean} |
|
![]() |
![]() |
![]() |
![]() |
#34 |
Member
Ning Yang
Join Date: Mar 2009
Location: University Park, PA, USA
Posts: 84
Rep Power: 17 ![]() |
Sorry, my bad. here is rms:
/image{rms} |
|
![]() |
![]() |
![]() |
![]() |
#35 |
Member
Ning Yang
Join Date: Mar 2009
Location: University Park, PA, USA
Posts: 84
Rep Power: 17 ![]() |
Geeze, can't post an image:
![]() |
|
![]() |
![]() |
![]() |
![]() |
#36 |
Member
Ning Yang
Join Date: Mar 2009
Location: University Park, PA, USA
Posts: 84
Rep Power: 17 ![]() |
I missed contribution of SGS model from my previous calculation. Adding that (T = Bmean + R) gives the following plot:
![]() The top two plots are taken from Eugene's thesis. Looks like that Van Driest model significantly overpredicts Vrms near the wall. So my question is how to improve my results? What is the best model in the openfoam I should use? Thank you. Ning |
|
![]() |
![]() |
![]() |
![]() |
#37 |
Member
Ning Yang
Join Date: Mar 2009
Location: University Park, PA, USA
Posts: 84
Rep Power: 17 ![]() |
I missed contribution of SGS model from my previous calculation. Adding that (T = Bmean + R) gives the following plot:
Eugene's data: ![]() ![]() my data: ![]() ![]() The top two plots are taken from Eugene's thesis. Looks like that Van Driest model significantly overpredicts Vrms near the wall. So my question is how to improve my results? What is the best model in the openfoam I should use? Thank you. Ning |
|
![]() |
![]() |
![]() |
![]() |
#38 |
Member
Ning Yang
Join Date: Mar 2009
Location: University Park, PA, USA
Posts: 84
Rep Power: 17 ![]() |
I missed contribution of SGS model from my previous calculation. Adding that (T = Bmean + R) gives the following plot:
Eugene's data: ![]() ![]() my data: ![]() ![]() The top two plots are taken from Eugene's thesis. Looks like that Van Driest model significantly overpredicts Vrms near the wall. So my question is how to improve my results? What is the best model in the openfoam I should use? Thank you. Ning |
|
![]() |
![]() |
![]() |
![]() |
#39 |
New Member
Jianying Jiao
Join Date: Mar 2009
Posts: 6
Rep Power: 17 ![]() |
Hi Ning
Thank you for your answer to my question. Your result is better than my result, but my mesh is poorer than yours. I read some paper about channel flow, their result is better, their mesh (64*64*64), temporal term(RK3 or RK4). I think the reason which lead to my poor result is caused the temporal term. the temporal discretization term is second-order. Give me some idear. Thank you. Jianying |
|
![]() |
![]() |
![]() |
![]() |
#40 |
Member
Ning Yang
Join Date: Mar 2009
Location: University Park, PA, USA
Posts: 84
Rep Power: 17 ![]() |
Hi Jianying:
Have you tried one equation model? It should give you better results than smagrinsky model. Read Eugene's thesis. You will have better sense of what grid resolution you need. Regarding the schemes, I am using second-order schemes for both time and space. Hope this will help. Ning |
|
![]() |
![]() |
![]() |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Pressure inlet boundary conditions for open channel flows | jack2000 | OpenFOAM Running, Solving & CFD | 5 | December 6, 2018 12:00 |
LES In Turbulent in channel flow | pankaj saha | Main CFD Forum | 18 | November 20, 2014 06:49 |
LES In Turbulent in channel flow | pankaj saha | Main CFD Forum | 8 | April 15, 2009 12:34 |
Turbulent channel flow | roberthino | OpenFOAM Running, Solving & CFD | 5 | August 15, 2007 09:35 |
Bc for turbulent channel flow | roberthino | OpenFOAM Running, Solving & CFD | 0 | August 13, 2007 09:12 |