I try to simulate and compare the results in OF and CFX of blades in a gas turbine. The problem is, I don't get separation in OF in a rotor blade on the pressure side. This occurs in CFX and as the experience of my company shows it is the right solution. Of course I use the same meshes and I hope I use the same alignments in both codes. Any ideas what coul'd be the reason for this?
I think one reason is that nobody can really reconstruct your exact problem. Your description is..let me say "short" ;)
Yes well, I just tought there is a magic button 'turn the separation on' ;)
I'm not quite sure what I should write over here to make it entire and undersandable, but I try to do my best.
Like I sad it is a simulation of a rotor blade of a gas turbine. (By the way, the next step of my work is to test the GGI or mixing-planes. Does anybody have some expierence with these interfaces in steam or gas turbines?) The mesh was made with Turbogrid and imported over Icem using .msh to Foam. I have tried different meshes of the same geometry with a nuber of elemenst between 90000 and 350000. In all cases checkMesh sad mesh ok. The yPlus values are between 30 and 180 on average in depend of the grid.
The boudary conditions are total pressure and total or static temperature at inlet and a static pressure at outlet. The Mach number computated with these boudaries equals about 0.95. I have used k-epsilon and SST turbulence models (I have made a special mesh for the SST model with smaller yPlus values). Medium of my simulation is air pureMixture with constTransport. All the thermophysical values have been took out of thermodynamics tabels.
Because of the fact that there is no compressible solver to simulate rotor blades I made a new one by oneself. I took the rhoSimpleFoam, added the SRFModel and made small changes in the equations.
The schemes I simulate with are:
default Gauss linear;
grad(p) Gauss linear;
div(phi,U) Gauss upwind;
div(phid,p) Gauss linearUpwind;
div(phiU,p) Gauss linearUpwind;
div(phi,h) Gauss upwind;
div(phi,k) Gauss upwind;
div(phi,epsilon) Gauss upwind;
div(phi,R) Gauss linearUpwind;
div(phi,omega) Gauss linearUpwind;
div((rho*R)) Gauss linearUpwind;
div(R) Gauss linearUpwind;
div(U) Gauss linearUpwind;
div((muEff*dev2(grad(U).T()))) Gauss linear;
div(phi,(0.5*magSqr(Usrf))) Gauss upwind;
div(phi,(0.5*magSqr(U))) Gauss upwind;
laplacian(muEff,U) Gauss linear corrected;
laplacian(mut,U) Gauss linear corrected;
laplacian(DkEff,k) Gauss linear corrected;
laplacian(DepsilonEff,epsilon) Gauss linear corrected;
laplacian(DREff,R) Gauss linear corrected;
laplacian(DomegaEff,omega) Gauss linear corrected;
laplacian((rho|A(U)),p) Gauss linear corrected;
laplacian(alphaEff,h) Gauss linear corrected;
As and when required I will paste also my solution file. I will also try to paste today some screenshots of my geometry. Of course I'm happy to answer any other questions about my case.
Thank you in advance for any reply,
I have a few questions/guesses for you:
Since the solver is new - did you validate it on something simple?
I think CFX has special compressible wall boundary conditions - Are you sure that you are running the same wall boundary conditions?
Check the schemes
If you are using CFX, probably your divergence scheme is High Resolution (or maybe a specified blend factor), am I right? In OpenFOAM you are using first order upwind... well, following my experience, this has an important effect on the solution.
Try to use Gamma or limited linear for OpenFoam or maybe upwind for CFX and compare again... maybe it helps a little bit.
My experience is that CFX with their default SST k-omega model using resolved walls is one of the most separation sensitive models available (among commercial eddy-viscosity based solvers). Sometimes this is good, but often it will give you overly conservative designs. What turbulence model and what kind of wall treatment are you using?
first to all I would like to thank you all for replies. It took some time to check and validate ones more my test cases.
The problem was, that one force therme was lost as I derived the energy equation with the total enthalpy. After I found it I have started some simulations once more and got quite good results. However the situation of both codes has changed ;)
OpenFOAM shows little bit wider separation and wake than CFX. I suppose that it is the couse of different wall functions in both codes. Another reason for it could be the Mach number, which is greater than 1. Could it?
Like I sad the results are not bad. When I compare the results with ParaView there are only small differences in the outlines of some quantities and when I plot the results over different lines.
Also by patch averaged values there are diffrences of 1 - 3 %. The only big difference at the outflow is the Mach number with 12 %.
Just to anwser your questions ...
henrik CFX uses compressible wall boundary conditions only for Mach numbers greater than 3, so this couldn't be the reason for this
Zowie I was using the same (upwind) schemes in both codes
jola I have used and comared k-epsilon and SST models in both codes. You can see the results above. I must admit, I don't know how I can compare the wall treatment of OF and CFX. Where can I check it?
I'm facing a similar problem. I'm solving a steady state turbine blade with simpleFoam, as the max Mach in the domain is 0.3. My turbulence model is k-Omega SST, with full resolved walls (y+ less than one in the whole domain), and fixedValue 1e-12 bc for k.
Schemes for div are all limitedLinear.
The AoA is 0°, at this AoA there must be a separation in the pressure side, but my results are an attached flow.
Someone have any experience on simpleFoam behavior with separation bubble? Could it be a problem with the turbulence model?
|All times are GMT -4. The time now is 13:40.|