Hi,
The case is the simple
Hi,
The case is the simple smooth channel. Now I want to calculate the bottom wall shear stress. I use the function wallGradU as following forAll(wallGradU.boundaryField(), patchi) { wallGradU.boundaryField()[patchi] = U.boundaryField()[patchi].snGrad(); } But I found the result was much different from the value of du/dy, where y was the normal direction of the bottom, and u was the velocity along the flow. Could you inform me the reason for the difference? Thank you so much. xiu 
Hello,
wallGradU returns a
Hello,
wallGradU returns a vector, with normal and tangential components in relation to the wall. If you are interested in wall shear stress, you should extract the tangential components of wallGradU, and use them for your calculations. Your results are different from du/dy probably because your du/dy data concerns only tangential components of velocity gradient. Regards, Jose Santos 
Thank Jose for your answer.
Thank Jose for your answer.
I compared the wallGradU tangential component with my du/dy, and they are much more different. Xiu 
Hello,
Maybe you could elab
Hello,
Maybe you could elaborate a little more on your problem (mesh, Re, discretisation schemes, experimental data, etc). From my experience, wall gradients are quite sensitive to the quality of your mesh as well as the discretisation schemes you are using. I have recently validated simulations obtained with OpenFOAM for smooth tube laminar and turbulent flows against Moody friction factor and mass transfer correlations. The results are very good. Let me know if you need some details on this. Regards, Jose Santos 
Hello Jose Santos and All,
Hello Jose Santos and All,
I'm also trying to validate simulations on High Reynolds number flows (wind turbines). I'm interested about the information regarding the turbulence models and numerical schemes you've used. Thank you very much in advance. Regards, Paulo Rocha 
Hi,
I want to calculate the
Hi,
I want to calculate the wave friction factor on the channel bed with turbulent kepsilon model using the relation of the friction factor f=2*tau(max)/(pou*U(max)^2),where tau(max) is the maximum of the wall shear stress in a wave period, pou is the density, and U(max) is the sinusoidally oscillatory wave amplitude. So I need calculate the wall shear stress. Now I refined my mesh to get yplus~~0.01 on the wall, and wallGradU was almost equal du/dy. But the calculating friction fractor is much different from the Jensen's experimental data and the error is about 60%. 
Hi Xiuying
I have been doin
Hi Xiuying
I have been doing the same experiment in an internal code, and I did get good results for the rough boundary (test 13). Mayby you should consider using another turbulence closure model than kepsilon, which is known to perform rather poorly subject to adverse pressure gradients, which you will have twice during a wave period. How does your phaselag compare with experimental data in the turbulent regime? Is it the experimental verified value of an order of magnitude 10 degrees? I used komega and as I recall yplus=O(0.1). If you are driving your flow by applying a body force then verify that you do not have a net flux averaged over a wave period as beginning from a zero velocity field will result in a nonzero flux if left untreated. Further, verify that your computational domain is sufficiently large to contain your wave boundary layer. Good luck, Niels 
Hi, Niels,
Thanks so much.
I
Hi, Niels,
Thanks so much. I used Jensen's test 10 to compare my computing result. In my model the wave flow was drived by an oscillatary body force, and the inlet and outlet used cycle boundary condition. I checked the phaselag beween the wave and its wall shear stress. I also will check the netflux. Xiuying 
sorry, I forgot writing the ph
sorry, I forgot writing the phaselag. It is 13 degree between the wave velocity and its wall shear stress.

Well, if you look at Fig. 11 i
Well, if you look at Fig. 11 in Jensen et al (1989) then you will find that the phaselag is order of magnitude 6 degrees for their measurements for test 10, thus your flow reversal occur too early in the process.
This might suggest problems in the handling of the adverse pressure gradient, as your mesh should be fine. Maybe you should take a look on how the wall is treated in the kepsilon model. There might be some conflicts in resolving the boundary layer. Have a nice day Niels 
Hi,
Xiuying: I think that w
Hi,
Xiuying: I think that when using kEpsilon you should keep your y+ above 30. Anyway, check your pressure drop (patchAverage p inlet && patchAverage p outlet) and compare it with your experimental data. Paulo: I usually start with kEpsilon to obtain initial k and epsilon fields, using upwind on all div schemes, and Gauss linear limited 1 on all laplacians. My relaxation factors are 0.2 for pressure and 0.5 for the other variables. With this setup, the residuals converge quite fast. I am interested on determining mass transfer coefficients at the walls, so I need to resolve adequately the near wall profiles. For that, I switch to a lowRe turbulence model (eg LaunderSharmaKE), increase my mesh resolution (y+<1) and get converged results for first order schemes. Finally, I switch to 2nd order schemes (limitedLinear 1 for divs, linear corrected for laplacians). 
Thanks a lot Jose Santos. I'll
Thanks a lot Jose Santos. I'll try your procedure ASAP.
Regards, Paulo Rocha 
Hi,
I'm trying to make my sol
Hi,
I'm trying to make my solver compute at each time step the gradient of U at wall, but copying from the wallGradU utility I've managed to get it except for the 0 time, in which volVectorField wallGradU is given as "type computed" and it's not calculated. The difference w.r.o. the results of the utility are in this 0 step and small numeric discrepancies. There's anyone that can explain these? There a way to make wallGradU calculated at 0 time? thanks 
All times are GMT 4. The time now is 11:08. 