Non-dimensionalized sutherland law

Hi, i’m Sukyung Yoon
I want to compare the compressible and incompressible flow field for the same Reynolds number condition.

I want to simulate the Reynolds number 15,000 conditions.
Can it be said that the Reynolds number in setting (1) and (2) are the same? (chord length = 1m)
I think it’s the same, but I ask questions to be sure.

As shown in case(3), i tried to use the all dimensionless value as in (1).
However, to use the Sutherland law, viscosity and temperature(cpTref, cpTs) were used as dimensional values.
I do not think this is consistent.
What values should I enter for viscosity and temperature?

(1) AC-navier-stokes (incompressible)

(2) Navier-stokes (compressible)

(3) Non-dimensional navier-stokes


Hi Sukyung,

  1. They should be the same, but it looks like you mistyped the viscosity in #2 (mu should be 1.125e-5 as you typed in the comment, not 0.000137e-5 as you typed in the config) and also #3 (rhoc*|U|L/mu =/= 15000). Also your freestream pressure is incorrect for that given Mach number, it should be set as P_ref = rho_refu_ref^2/(gamma*M^2). You can verify that you’ve recovered the correct Reynolds and Mach numbers by computing them with the freestream values.

  2. This requires giving a reference temperature (in the form of enthalpy) since Sutherland’s law is inherently dimensional. Using the relation cpT = gamma/(gamma - 1) * P/rho, you can set the cpTref based on the P_ref and rho_ref. Then you need to specify what reference temperature this corresponds to. If these conditions correspond to 273K and the Sutherland temperature is 110.4K, then cpTs should be set as cpTs = cpTref * 110/273.

1 Like

Hello, Dzanic. I am confused about what you said.

Aren’t the free stream P_ref and rho_ref used to calculate the cpT? and cpTref is constant 273K. of course, cpTs = cp * 110/T.

In my practice, under the non-dimentional condition, I use the Reynlod = 1/mu to get the value of mu. Then I use Sutherland’s law to get T based on mu (mu_ref, Tref and Ts are constant 1.125e-5,
273K,110.4K). Last, the non-dimentional value of cpTref = cp*273/T, cpTs = cp * 110.4/T. Is this right?

and what is this mean?

Not necessarily, Tref does not have to be 273K, depends on what problem you’re running and how you define your initial viscosity. Without the viscosity law, you only need two parameters to characterize the flow, Mach and Reynolds number. All flows with those same values will have the same characteristics.

When you add in a temperature-based viscosity law (one that is inherently dimensional like Sutherland’s law), then you need a third parameter, Tref. See Sutherland's law -- CFD-Wiki, the free CFD reference , note that Tref is not T0 (T0 ~ 273K), Tref is what temperature the viscosity is equal to its reference value. If the reference viscosity is based on the freestream, you need to specify Tref for the freestream. Alternatively, if you want to specify what the reference viscosity is at a value that is not equal to the freestream value, feel free to do so (the viscosity law will modify it accordingly throughout the domain). Note that because you’re changing the freestream conditions to be normalized to unit density/velocity/length, freestream cpT is not the usual dimensional value.

That’s why you have to use the relation cpT = gamma/(gamma - 1) * P/rho and scale those values accordingly to what temperature it corresponds to. At this point, setting the flow strictly based on Mach and Reynolds number isn’t enough, it needs to also match with respect to the ratio cpTref/cpTs. For a given Mach and Reynolds number, a flow with cpTref = 10, cpTs = 1 is identical to a flow with cpTref = 100, cpTs = 10 (see the link I referenced before on Sutherland’s law, if you want to keep a consistent scaling, both cpTref and cpTs need to be scaled identically).

You can calculate cpT in the freestream as cpTinf = gamma/(gamma - 1) * Pinf/rhoinf . Then you need to know what temperature the freestream is (dimensional). Call it Tinf*, could be 273K, 500K, 100K. If you set the viscosity mu as the one that corresponds to the freestream temperature, you can set cpTref = cpTinf. If you set the viscosity that corresponds to 273K, then you can set cpTref = cpTinf*273/Tinf*. Same thing with the Sutherland temperature, cpTs = cpTinf*110.4/Tinf*.

cpT is the enthalpy (like cvT is the internal energy).

1 Like

I am simulating the SWBLI in 4th International Workshop on High-Order CFD Methods BL2 - Laminar shock-boundary layer interaction | HiOCFD4.

And I set freestream temperature T = 145.14K to get Reynolds = 1e5 base on sutherland law. It comes out NaNs. Do you know what’s problem with it?

In this condition, is cpTs arbitrary value?

That is a roundabout way of getting it close, but I would recommend not rounding things like freestream pressure as 0.15452368075 ~ 0.15. However, I’m not sure why you would go about it this way, the case setup from HiOCFD tells you the freestream viscosity and temperature, why don’t you set it up like that (mu = 1e-5, Tref = 288.15)?

Unclear, you will have to debug this. I recommend starting with simpler setups like without Sutherland’s law at lower orders to figure out what the issues are (could be improper mesh, time step, case setup, BCs). Also looks like your ICs/BCs don’t match what the case setup mentions for the inlet.

cpTs is never arbitrary if you want to use Sutherlands law, it has to follow the relations I mentioned before.

I set the temperature T equal to 145.14 in order to get the desired viscosity. Okey, I set mu = 1e-5 , Tref = 288.15, then cpTref = cpT = 0.525. And the fractions in sutherland law are all equal to 1, so the value of Ts can’t be determined, should I set cpTs = cpTref / (273.15/110.4)?
That’s why I asked this question.

Second, I have the additional question. When we set freestream with an angle of attack, at subsonic flow, we have [sub-in-ftpttang] boundary condition, but at supersonic flow, is it set like u = Ucos(phi), v = Usin(phi)? (U is freestream velocity.) Becasue I set u,v in this way, the result seems wrong.

I applied Martian atmospheric conditions. (cp = 843.96)

Therefore, I applied the sutherland’s law to CO2.
(Mu0=1.375e-5, T0=273K, S_mu=222, Please refer to the link : Sutherland’s Law )
(0.000137e-5 is my mistake)

Also, R is 191.8 J/(kg*K), gamma=1.2941, so it may be different from what you calculated.

I don’t understand, setting the reference temperature to a certain value shouldn’t have anything to do with being able to determine the Sutherland temperature. It would be whatever fraction 110.4 is of your reference temperature.

We have [sub-in-frv] that is identical to [sup-in-fa] except for setting pressure. [sub-in-ftpttang] is a particular boundary condition used to set total pressure and temperature at the inlet, not sure if that’s what you want to do. That’s usually a BC used in turbomachinery.

My mistake, it looks all good to me now.

Hi, tdzanic
I followed your advice and get cpTref, cpTs value for non-dimensional sutherland’s law.
Can you check that the process is correct? If there’s anything wrong, please point it out.

And I understand that T0 of Sutherland’s law is different from Tref of cpTref, is that right?

Hi Sukyung,

I believe there are some mistakes in the setup. For #1 and #2, it looks like you are setting the freestream density/velocity/pressure correctly so you are getting the right Mach number, but I believe the viscosity is incorrect. Here I think you need to ignore physical reference viscosities (they don’t mean anything in the non-dimensional form) and just set the viscosity that gives you the correct Reynolds number: i.e., mu = rho*U*L/Re = 1/Re = 1/15,000 = 6.667e-5. This is what your non-dimensional value of viscosity should be for #2.

Then, somewhat the same for #3, things like mu_0 and T_0 from the physical perspective don’t mean anything, you need to set these values accordingly to ensure your non-dimensional values are correct. Your cpT that you calculate in #2 looks correct – this is your freestream enthalpy. I am making the assumption here that your Reynolds number is based on the freestream (correct me if I’m wrong there). In that case, your cpTref needs to be set to the value that ensures that the viscosity in the freestream gives you the correct Reynolds number. The way I do that is by ensuring that mu = 1/Re and that cpTref = cpTinf = 6.9392 in your case. That way, when the enthalpy in the flow equals cpTref (i.e., in your freestream), Sutherland’s law gives you a viscosity equal to your reference viscosity mu = 1/Re which recovers the correct Reynolds number in the freestream.

Then, the next step is to ensure your Sutherland temperature is correct. Here, you need to provide what temperature your freestream is supposed to be (in physical units of K). The non-dimensionalized value of Sutherland’s enthalpy cpTs is then just your freestream enthalpy multiplied by the ratio of the physical freestream temperature and the physical Sutherland temperature, i.e., cpTs = cpTref*222/400. Here I’m giving the Sutherland temperature of 222K for CO2 and assuming that the conditions I’m running have a freestream temperature of 400K (randomly chosen value, depends on your case).

Let me know if any of that is unclear.

– Tarik

Hi Tarik

As your assumption, Reynolds number is set based on the freestream

Q1. Is the process of ensuring that Sutherland temperature is correct different from [3. Sutherland’s law for CO2] ?

Q2. Is it correct to use the dimensional value of temperature as shown (3.b) in Figure below?

Q3. Is the final value CpTref = 6.9392, CpTref = 6.90344 correct?
If the setting is correct, the results of dimension and non-dimensional analysis will be compared.

Thank you so much for your answer.