
[Sponsors] 
April 12, 2021, 11:32 
Freestream turbulence intensity Option

#1 
New Member
Join Date: Sep 2020
Posts: 8
Rep Power: 3 
Dear all,
I'm running several CFD simulations with SU2 on various airfoils, and I need a comparison between fully turbulent boundary layer and transitional one. I'm struggling about understanding and defining the correct value for FREESTREAM_TURBULENCEINTENSITY: I suppose there is a contradiction between SU2 tutorials' explanation on website, source code and various forums' posts. For example, tutorial "Transitional Flat Plate" defines FREESTREAM_TURBULENCEINTENSITY = 0.18. Is this value defining 18% or 0.18% of freestream turbulence intensity? I'm not talking about what were the intentions of the tutorial, but what the code actually reads and defines. Moreover: is there a dependance on SU2 version about FREESTREAM_TURBULENCEINTENSITY value definition? Currently I'm using 7.1.1 "Blackbird", but I need also to understand if version 7.0.3 differs about this topic. For my simulations, following the definition of freestream turbulence intensity (so that FREESTREAM_TURBULENCEINTENSITY = 0.01 indicates 1%, for example), the simulations give a general underprediction of drag coefficient. On the other hand, if I insert the value as suggested by SU2 tutorial (so that FREESTREAM_TURBULENCEINTENSITY = 1 indicates 1%), the results reduces their error with respect to experimental ones. Doubt arises as consequence of these contradictions between SU2 website, forums, definition and results obtained. Thank you in advance for any explanation. Stefano Last edited by stefano_bortolotti; April 12, 2021 at 13:03. Reason: Adding information 

April 12, 2021, 13:54 

#2 
Senior Member
Pedro Gomes
Join Date: Dec 2017
Posts: 372
Rep Power: 9 
For SA models only FREESTREAM_NU_FACTOR matters.
For SST, the nondimensional FREESTREAM_TURBULENCEINTENSITY defines the freestream turbulence kinetic energy, the default is 0.05 which is 5%, 0.18 is 18% (sounds like the tutorial is wrong). Then the freestream dissipation (omega) is obtained from FREESTREAM_TURB2LAMVISCRATIO. Within major versions (e.g. 7.x.x) we try our best not to change the meaning of any options, some have been deprecated, but the way values are specified has not changed (including default values). 

April 12, 2021, 15:04 

#3  
New Member
Join Date: Sep 2020
Posts: 8
Rep Power: 3 
Quote:
Thanks for the kind answer. I will try to make adjustments using FREESTREAM_NU_FACTOR. Anyway, I would like to underline that I was already using SA model, and changing FREESTREAM_TURBULENCEINTENSITY, solution changes (not only in terms of freestream turbulent kinetic energy, but also lift and drag coefficient). Let me write down here an example about NACA0012, Mach 0.15 and Re 6e6. KIND_TURB_MODEL= SA KIND_TRANS_MODEL= BC FREESTREAM_TURBULENCEINTENSITY = 0.005 I varied FREESTREAM_TURBULENCEINTENSITY with the following respective values: [0.005, 0.025, 0.050, 0.070, 0.100]. I obtained the following respective drag coefficients: [0.004328, 0.004461, 0.004602, 0.004730, 0.004944]. By looking at your answer, it seems varying FREESTREAM_TURBULENCEINTENSITY should not change the solution when I use SA model; only FREESTREAM_NU_FACTOR matters, but I did not change this last item in any case. Thanks again for any answer or suggestion. May I did not understand last answer. Stefano 

April 12, 2021, 17:33 

#4 
Member
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 87
Rep Power: 12 
Hi,
I checked the code and this is what happens: In the compressible solver, the free stream intensity is used to compute the turbulent kinetic energy at boundaries. This is then added to the total energy. So when you have a boundary where a free stream value is used, the turbulent intensity influences your solution. Additionally, the freestream intensity is used directly in the transitional SA model. I think that adding simply the freestream tke at boundaries is not correct. Actually, from the SA model it follows that the free stream tke=0. Are you using the compressible solver or the transitional SA model? 

April 12, 2021, 18:46 

#5  
New Member
Join Date: Sep 2020
Posts: 8
Rep Power: 3 
Quote:
Thanks for the answer. I don't want to make any confusion or stupid mistake, so let me report what I did. With respect to fully turbulent boundary layer's simulations, with transition model I'm facing issues also on convergence result: I don't know if the two issues are related, but let me anyway attach two screenshots of what I see on S414 configuration. Let me also write below the first few lines of configuration file of the example cited above, so maybe I can better understand what I'm doing wrong: SOLVER= RANS KIND_TURB_MODEL= SA KIND_TRANS_MODEL= BC FREESTREAM_TURBULENCEINTENSITY = 0.0005 MACH_NUMBER= 0.3 AOA= 0 INIT_OPTION= REYNOLDS FREESTREAM_OPTION= TEMPERATURE_FS FREESTREAM_TEMPERATURE= 288.15 REYNOLDS_NUMBER= 0.97E6 REYNOLDS_LENGTH= 1.0 REF_DIMENSIONALIZATION= DIMENSIONAL Forgive me if the hypothesis of relation between the two issues is uncorrect. Again, thanks for your time. 

April 13, 2021, 17:11 

#6 
Member
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 87
Rep Power: 12 
See here:
https://turbmodels.larc.nasa.gov/sabc_1eqn.html We have the SABCM model (in src/numerics/turbulent/turb_sources.cpp), and there is an equation Re_theta_c = 803.73*(Tu_infty + 0.6067)^1.027 This Tu_infty is the freestream turbulence intensity, so it directly influences the turbulence production. So basically your choice determines the critical transition Reynolds number. It also seems that they recommend a much lower freestream value for nu compared to the older SA model. There can be other factors influencing convergence, of course. A well resolved boundary layer is important, choice of CFL is important... With Ma=0.3 you can check if the compressible or incompressible solver gives better convergence. 

April 14, 2021, 10:55 

#7  
New Member
Join Date: Sep 2020
Posts: 8
Rep Power: 3 
Quote:
Thank you so much for the answer and references. I have checked the cpp code and the reference about SA_BCM. I have a last question about what is the value read by src/numerics/turbulent/turb_sources.cpp about FREESTREAM_TURBULENCEINTENSITY: it seems the value is taken as directly provided by configuration file, then if I insert (for example) 5, that means 5% of freestream turbulence intensity. Taking this reference, the results seems to behave well in terms of aerodynamic coefficients. But looking at other details obtained, the freestream turbulent kinetic energy and dissipation take following values respectively (written on forces breakdown output file): Freestream turb. kinetic energy (nondim): 97708 m^2/s^2. Freestream specific dissipation (nondim): 1.1485e+09 1/s. Then, higher than I expected. This observation makes me doubt that 5 indicates 500% of freestream turbulence intensity, not 5%. As written in previous answers and on the cited NASA reference, the value is constant on the entire domain; SA_BCM does not consider this value at freestream, but only close to wall surface. Last edited by stefano_bortolotti; April 14, 2021 at 11:05. Reason: Providing unit of measurement 

April 14, 2021, 12:08 

#8 
Member
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 87
Rep Power: 12 
Turbulence intensity is used like this, in e.g. CEulerSolver.cpp:
Code:
Tke_FreeStream = 3.0/2.0*(ModVel_FreeStream * ModVel_FreeStream * config>GetTurbulenceIntensity_FreeStream() * config>GetTurbulenceIntensity_FreeStream()); so a value of 5 means 500% and a value of 0.01 means 1% 

April 15, 2021, 17:01 

#9  
New Member
Join Date: Sep 2020
Posts: 8
Rep Power: 3 
Quote:
Ok, thanks for the kind clarification. Anyway, I still believe there is an inconsistency between how freestream TKE calculus and momentum thickness Reynolds number respectively take freestream turbulence intensity from input. I'm sorry to be so insistent, but I really want and need to understand if I'm doing something wrong or if I have not understood how the code works on these values. Let me refer to an example (NACA0012, Mach 0.15, Re6e6, AOA 10 deg): SOLVER= RANS KIND_TURB_MODEL= SA KIND_TRANS_MODEL= BC FREESTREAM_TURBULENCEINTENSITY = 5 So, as you already explained, 5 means 500%. In fact, I obtain: Freestream turb. kinetic energy (nondim): 97708 m^2/s^2, computed from the line of code you already wrote. This order of TKE is also confirmed by calculators on web (http://www.wolfdynamics.com/tools.html?id=110). Regarding BC transition model, looking at the paper of S.C. Cakmakcioglu, O. Bas, U. Kaynak  "A correlationbased algebraic transition model" (you can find it here: https://journals.sagepub.com/doi/10....54406217743537), page 3918, applying the relation on Re_theta_c I will obtain 1.3575 for 500% of freestream turbulence intensity, consistent with what Figure 1 reports (very low value, much different from what I would obtain with 5%). Anyway, looking at the code (/src/numerics/turbulent/turb_sources.cpp) at the following lines: su2double tu = config>GetTurbulenceIntensity_FreeStream(); su2double re_theta_t = (803.73 * pow((tu + 0.6067),1.027)); //MENTER correlation I note the equation on momentum thickness Reynolds number takes directly the value of FREESTREAM_TURBULENCEINTENSITY (then 5, not multiplying by 100) . As consequence, I believe the code considers 5%, not 500%, although Figure 1 reports [%] on xcoordinate and previous calculus by hand of Menter correlation has shown consistency with using 500 for variable "tu". Thanks again for your time. Last edited by stefano_bortolotti; April 15, 2021 at 17:17. Reason: Corrections 

April 15, 2021, 18:41 

#10  
Member
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 87
Rep Power: 12 
OK, I see it. I checked the paper of Menter and he says after giving the equation:
Quote:
Not sure if we use actual percent instead of fractions anywhere else, but since turbulence intensity is defined as a fraction, I think the input should stay 0.05 and in the transition model we multiply by 100. 

April 15, 2021, 19:09 

#11 
Member
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 87
Rep Power: 12 
to conclude, I think this is inconsistent in SU2, I created a bug report.
https://github.com/su2code/SU2/issues/1263 

April 15, 2021, 19:33 

#12  
New Member
Join Date: Sep 2020
Posts: 8
Rep Power: 3 
Quote:
Thank you so much again for your time, patience and kind answers! 

April 21, 2021, 16:47 

#13 
Member
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 87
Rep Power: 12 
As you might have seen, the issue is solved in the develop version of su2. The free stream turbulence dissipation in the config file remains u'/U and this value is multiplied by 100 in the transition model to get to a percentagevalue. Keep us updated on your progress regarding transition modeling!


July 29, 2021, 05:09 

#14 
Senior Member
Arijit Saha
Join Date: Feb 2019
Location: Germany
Posts: 118
Rep Power: 4 
Hello all,
Hope that you all are doing good. I was reading through this thread and found it will be apt to ask my doubt here. I've been performing the transitional plate case which uses SABC turbulence model and I want to monitor the intermittency field in paraview. I dont think it is quite straightforward but if anyone is aware how to proceed can you throw some suggestion. Thank you 

July 29, 2021, 15:40 

#15 
Member
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 87
Rep Power: 12 
Hi,
What do you mean with "monitor the intermittency field"? Do you want to do an unsteady simulation and look at the solution output at different moments in time? 

July 31, 2021, 10:30 

#16  
Senior Member
Arijit Saha
Join Date: Feb 2019
Location: Germany
Posts: 118
Rep Power: 4 
Quote:
When I was using Openfoam it was possible to view through the changes being made in the .C file of the SABC model. It was not straighforward because the SABC turbulent model was not readily available in Openfoam but in case of SU2 it is there but not sure how to visualize the field. 

August 11, 2021, 10:57 

#17 
New Member
Flavio Giannetti
Join Date: Mar 2021
Location: Italy
Posts: 11
Rep Power: 2 
Hi
If I understood well, the BC transition prediction model implemented in the master branch on githhub contains bugs, does'n it ? I am very interested in this aspect since I need to perform some preliminary calculations to prepare a WT Test campaign. Should I install the develop branch ? Another aspect that I did not fully understand from the previous discussion is if for the compressible solver with BC transition model, I need to impose the TURBULENCE_FREESTREAMINTENSITY only or I also need to adjust the FREESTREAM_NU_FACTOR. Can someone help me in understanding this ? The variable FREESTREAM_NU_FACTOR is not present in the template configuration file if I am not wrong. Thanks a lot . Any advice is welcome Flavio PS As an additional issue, since I recompiled the code , I got this message when I run the transition flat plate case : CSysSolve::FGMRES(): system solved by initial guess.... Any hint for this ? F 

August 11, 2021, 16:00 

#18  
Senior Member
Arijit Saha
Join Date: Feb 2019
Location: Germany
Posts: 118
Rep Power: 4 
Quote:
With the specification of TI you can predict k, omega and epsilon and from there initialization of nutilda and nut is easy. 

August 12, 2021, 11:30 
Problem with transition model

#19  
New Member
Flavio Giannetti
Join Date: Mar 2021
Location: Italy
Posts: 11
Rep Power: 2 
Quote:
I was just experimenting with the develop version of the code. I have a problem with the compressible solver. I tried to reproduce the result of the flat plate case (which uses the incompressible solver) using the compressible RANS solver (at M=0.15). I used the configuration files of the turbulent flat plate case adding the transition model and the TI specification. The problem is that with the same parameters , the compressible and the incompressible solvers return different results. In particular the compressible one do not produce any sort of transition. Does anyone tried this ? Thanks Flavio 

August 13, 2021, 06:08 
Inconsistent results

#20  
New Member
Flavio Giannetti
Join Date: Mar 2021
Location: Italy
Posts: 11
Rep Power: 2 
Quote:
just a quick updated concerning the transition model. I am now testing the new code in the develop branch in a more systematic way. I decided to evaluate the transition on the naca0012 airfoil. I am using the grid provided in the su2 tutorial (https://su2code.github.io/tutorials/...lent_NACA0012/). I decided to use both the incompressible and the compressible solver and compare the results. Since the Mach number I am simulating is low (M=0.12) , we should get similar results. However this is not the case. I attach two figures containing a comparison of the skin friction coeff. obtained with a) incompressible solver b) compressible solver with ROE scheme c) compressible solver with JST scheme for the naca0012 airfoil at AoA=3 and Re=3E6. As you may notice, we get quite different results. Moreover, when I use the JST scheme, in some cases (choice of CFL and adaptation) transition seems not to be triggered at all (or the transient is really long and I stopped the simulation before): a similar case is reported in figure 2. However, if i start the simulation from the solution obtained from the ROE scheme, I then obtain transition even with the JST scheme (a close solution indeed). In other terms, it seems that the JST scheme takes more time (iterations) to trigger transition: in many cases (for some choices of CFL and adaptation strategy) I actually stopped the solution before transition appeared, since there was no change at all in the solution for many iterations. In other cases (figure 1), transition is triggered slowly after many iterations. Since I am not experienced with the use of these transition models, I am wondering if I am using some wrong options in the configuration files or if there is still something to be fixed in the code. I suppose that at low Mach number all the solvers should give very similar results . I attach here two pictures summarising the results I got using a) b) and c). Notice that in figure 2) for the JST scheme no transition appear: as mentioned above, I probably stopped the solver before this was triggered. I also include the configurations files I used both for the incompressible and the compressible case. I hope these tests could be helpful. I am looking forward receiving your opinions and advices on this issue. Ciao Flavio Last edited by flavio73; August 13, 2021 at 20:21. Reason: wrong attachment 

Tags 
su2, transition airfoil, turbulence intensity, version 
Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Simulation of a single bubble with a VOFmethod  Suzzn  CFX  21  January 29, 2018 01:58 
Problem with an old Simulation  FrankW  CFX  3  February 8, 2016 05:28 
Wrong flow in ratating domain problem  Sanyo  CFX  17  August 15, 2015 07:20 
An error has occurred in cfx5solve:  volo87  CFX  5  June 14, 2013 18:44 
Constant velocity of the material  Sas  CFX  15  July 13, 2010 09:56 