Dear OpenFoam friends,
i am
Dear OpenFoam friends,
i am just beginning to use foam for certain cases were i already know the answer. First i had a try with the NACA profil 23012 at an angle of attack of 0 and 12 degree at 90 m/s. Chord length is 0.24 m. I did run this before with duns. I used sonicTurbFoam first but in both cases (0 and 12 deg) the initial boundary layer is extremly thick even in the regions where the flow accelerates. And the flow separates immediatelly. After a while the calculation gets instable and produces "NAN"s. Why is the boundary layer unusual thick? I checked the material-data and could not find an error. Then i used icoFoam with better results. The boundary layer is about as thick as i guess is right. But also after a while the calculation crashes. Is there anybody who could look at my example? Or can anybody assist me? Some more questions comming into my mind: - is there a way that foam calculates the appropriate time-step instead of defining it? Based on the Max Courant Number it seems likely. - Is there an easy way to watch the convergence (of U or p etc.)? For example a file which can be used by gnuplot etc? The format of the default output is not well suited for gnuplot. Best regards, Klaus P.S. i try to attach scetches and the input. Please untar it in the "sonicTurbFoam" folder. It should run out of the box. http://www.cfd-online.com/OpenFOAM_D...your_image.gif http://www.cfd-online.com/OpenFOAM_D...your_image.gif |
- automatic time stepping: hav
- automatic time stepping: have a look at
setInitialDeltaT.H and setDeltaT.H which adjust the timestep based on max Co number (see e.g. the interFoam solver) - convergence: the foamLog utility will extract all the nessecary information out of the log file. Is in simple column format which gnuplot or xmgrace can use. |
Hi Mattijs,
thanks for the
Hi Mattijs,
thanks for the hints. In the meantime i finished my pre/post processor and i discovered the reason of the big boundary layer (LaunderSharmaKE instead kEpsilon model). But there is now a bigger problem which i could not solve so far. See the attached picture (bunzip2 result.jpg.bz2). http://www.cfd-online.com/OpenFOAM_D...ages/1/867.png There you see the total-temperature calculated (tt=u*u*/2. /cpg + t) with cpg=1000. as in the thermophysicalProperties file defined. The total temperature should not change, at least not so much in such big areas (up to 3 K). First i defined a uniform temperature (i guess U ist the static temperature) even at the profil faces. But then i assigned the value of the total temperature at the profil-faces, because there the static temperature should be equal to the total-temperature (U==0). But that did not change the results anyway. - What on earth is going wrong? See the listings below. Made i any bad assumptions? I checked the results with buoyantFoam, rhoTurbFoam and sonicTurbFoam. They are all the same. I would have expected a slightly different result with buoyantFoam because of the heat transfer. - is element to element heat-transfer regarded by all this solvers? Best regards, Klaus P.S. the boundary listing: 6 ( in { type patch; nFaces 56; startFace 7214; } out { type patch; nFaces 60; startFace 7270; } /* s1 s2 are the 2D meridian-cuts */ s1 { type empty; nFaces 3676; startFace 7330; } s2 { type empty; nFaces 3676; startFace 11006; } profil { type wall; nFaces 78; startFace 14682; } /* wall connects inlet (in) and outlet (out) */ wall { type patch; nFaces 82; startFace 14760; } ) U: dimensions [0 1 -1 0 0 0 0]; internalField uniform (90 0 0); boundaryField { in { type fixedValue; value uniform (90 0 0); } out { type zeroGradient; } s1 { type empty; } s2 { type empty; } profil { type fixedValue; value uniform (0 0 0); } wall { type fixedValue; value uniform (90 0 0); } } T: dimensions [0 0 0 1 0 0 0]; internalField uniform 288; boundaryField { in { type fixedValue; value uniform 288; } out { type zeroGradient; } s1 { type empty; } s2 { type empty; } profil { type fixedValue; value uniform 292.3759; } wall { type zeroGradient; } } p: dimensions [1 -1 -2 0 0 0 0]; internalField uniform 100000; boundaryField { in { type fixedValue; value uniform 100000; } out { type fixedValue; value uniform 100000; } s1 { type empty; } s2 { type empty; } profil { type zeroGradient; } wall { type zeroGradient; } } |
This is a subsonic case but yo
This is a subsonic case but you seem to specify all boundary values (U,p,T) at the inlet. Isn't this overspecified?
|
Hi Mattijs,
actually i defi
Hi Mattijs,
actually i defined p at inlet and outlet with 100000 Pa. But even without the definition of p in the inlet there is no other result. So in the inlet there is specified U,T and in the outlet p. But the result is practically the same. Also total pressure is not uniqe in the flow field. I would understand if a drop would occur in the boundary layer but i see an increase for example in the stagnation area (pic). http://www.cfd-online.com/OpenFOAM_D...ages/1/874.png Any ideas? Best, Klaus |
Not immediately. Looks like a
Not immediately. Looks like a boundary condition problem.
|
Meanwhile i spent another coup
Meanwhile i spent another couple of hours this weekend and found the parameter
which caused the trouble. Its the kEpsilon turbulence model. After i changed to LRR the results developed in the right direction. To finish this topic i summarize what i found. In the pictures you see the cp distribution and the y+ values along the airfoil for a coarse mesh and a fine mesh, compared to measurements and the results calculated with duns. Below the lift and drag coefficients of this calcs are listed: ca: lift coefficient cw: drag coefficient cp: pressure coefficient (p-p_inlet)/q_inlet ca cw naca23012_12deg_coarse_kEpsilon 1.117340 0.277036 naca23012_12deg_fine_kEpsilon 1.083124 0.293196 naca23012_12deg_coarse_LRR 1.181551 0.071775 flow starts to separate naca23012_12deg_fine_LRR 1.358733 0.061862 flow starts to separate duns.cfd (Q-Omega turbulence mod.) 1.439210 0.030384 measured rough surface 1.23 0.0315 flow starts to separate measured smooth surface 1.41 0.0128 http://www.cfd-online.com/OpenFOAM_D...ages/1/899.png http://www.cfd-online.com/OpenFOAM_D...ages/1/900.png |
Try the LaunderGibson model ra
Try the LaunderGibson model rather than LRR, it has much better near-wall treatment. Also you might find it useful to try alternatives to the standard k-epsilon, e.g. the RNG or even better the realisable form.
|
Meanwhile i used the LaunderGi
Meanwhile i used the LaunderGibson model and others. I used this case
and a case with less angle of attac (8.8 deg). But the results are not any better. Also i calculated results for the profil RAE 2822 at M 0.73 which is well documented in the ISAAC users guide. The problem with the Reynolds Stress model is always a very instable boundary layer with a fluctuating pressure distribution in the rear part of the profil. And with the k-epsilon model(s) even the pressure distribution is far from matching the measurements. Also total temperature and -pressure are not reasonable as shown in the previous mails. I am not a cfd guy and i wonder how big the influence of the turbulece model can be. So far i used only duns with the q-omega model. And it was quite easy to reproduce the measurements for the models in question. Is it possible that the problems are only linked to the turbulence models? Have you seen a comparable situation before? regards, Klaus Wittig |
There may still be issues with
There may still be issues with your far-field BCs and yes the choice of turbulence model will have a large influence on the results particularly in the boundary layer. The models included with OpenFOAM are not particularly suitable to this kind of flow, although they should produce reasonable results, and if you already know that the q-omega model works well for your cases perhaps you should implement that model in OpenFOAM.
|
Just a question for Klaus; Wha
Just a question for Klaus; What program did you use for making your 2D model / mesh?
Best Regards Lars Edvardsen |
You can use Gambit that is a u
You can use Gambit that is a utility that goes with Fluent or Ansa that is much better than Gambit but it is less easy to learn
|
Lars,
by chance i had seen yo
|
I am new to this list, so plea
I am new to this list, so please forgive me if this was already answered.
From looking at the results of your pictures above that you obtained with the k-epsilon TM it looks to me that the implementation of the k-epsilon model does not have the corrections for the so-called stagnation point anomaly. This is an overprediction of turbulent kinetic energy around stagnation points. There are papers of Durbin and others who suggest fixes for this. |
How are you getting the data i
How are you getting the data into grace?
when i've tried it to just didn't accept it |
All times are GMT -4. The time now is 22:41. |