CFD Online Discussion Forums

CFD Online Discussion Forums (
-   CFX (
-   -   Is CFX incapable of modelling a compression ramp in 2D? (

RossFS October 24, 2010 08:17

Is CFX incapable of modelling a compression ramp in 2D?
1 Attachment(s)
I say this as running a mixed inlet with total temperature and total pressure specified, the simulation will not hold the boundary layer profile at the inlet for any longer than about a tenth of a millimetre. In addition, the air density values in the free stream are ridiculous: > 17,000kg/m^3. Free stream pressure below 0Pa (absolute).

Running an inlet profile of static pressure, static temperature (to avoid specifying the total temperature and total pressure) and inlet velocity allows the boundary layer and characteristics of the flow to be close to correct. Wall shear, density (free stream) and total pressure (free stream) values are crazy (9.9MPa, 2.9e11Pa, 375,000 kg/m^3 respectively). Total temperature, and static pressure appear to be correct in the free stream flow.

The above problems occur across all my meshes (so I guess I should have done the sanity check much earlier…).

20 degree compression ramp at Mach 2.85
Total pressure 671,000 Pa (absolute)
Total temperature 250K

[full details in CCL file attached as a text file]
Turbulence models: RNG k-e or SST k-w both with Kato Launder turbulence production limiter.
Max Continuity Loops = 2
High Speed Numerics on.
Inlet velocity profile specified in all cases using the 1/7 power law but with the power equal to 0.116 to better match the experimental inlet profile. Static Temperature and Pressure determined via equations in the CFX documentation.
Air ideal gas with corrected sutherland law for heat conductivity
Sutherland law for viscosity.
Top wall being run as free slip as no slip just makes the simulation harder to converge.

Meshed area is the same as in this link but with a 20mm extension at the outlet:

Meshed area is 200mm high, 200mm long inlet, 150mm ramp face (on hypotenuse), 20mm long exit area (different from the pictures in the above thread/link).
Mesh being used is structured (unlike in the above thread) with the first cell height ranging from 0.5mm to 1.74e-4mm

I've got experimental data for comparison.


If anyone thinks the software can simulate this sort of flow, can they tell me how they would alter the above settings to get some plausible results?

ghorrocks October 24, 2010 20:26

You will need to fix the meshing issues discussed on the other thread. They will be causing problems. But you mention your mesh is fully structured so maybe you have fixed it (but if you say it is 2 elements thick you still have some work to do).

I do not have time to debug this in detail but CFX should be able to model this type of flow.

I would build this model up step by step. First do a coarse mesh with laminar flow and constant properties ideal gas. When that is working then add a turbulence model, then a finer mesh. The final thing to add is the variable properties for conducitivity and viscosity. These can add lots of instabilities to the numerics are are quite likely to be causing your problems. But you can't be sure until you know the basic solver is running well.

Also, why don't you have variable properties on Cp? That will vary too.

RossFS October 25, 2010 00:27

Thanks Glen, you're a major asset to this forum.

Meshing issues have been fixed as you guessed.

I'll follow your advice and see how I go.

re: variable c_p
I've considered this, but it looks like there would be about a 3% change in this value at most based on the difference between the minimum (~95K) and peak temperature (~250K).

michael_owen October 25, 2010 08:23

Yes, CFX can model this. I agree with Glenn; none of us is really going to be able to debug your model over an internet forum. Build the model up piece by piece, adding complexities individually and making sure the model is behaving at each step along the way.

PS. I see you neglected to include the viscous dissipation term in the total energy equation. I'm not sure that's appropriate; it can be important in high speed compressible flows.

RossFS October 29, 2010 19:30

The flow models without any issues in accuracy if a constant velocity is used at the inlet. As soon as a velocity profile is specified (.csv file of mesh locations and using the 1/7 power law for BL velocity profile with a value of 0.116 for the power to better match the only experimental BL velocity profile i have) I get a shock forming near the inlet and the boundary layer drops off to much less than it should bre (~23-24mm experimentally):
The values for density, total T, Total P, T and P all appear "correct".
Note that if no slip wall is and a boundary layer velocity profile is used at the top wall, I just get another shock at the top coming down akin to the one I shouldn't be getting near the inlet at the bottom LHS of the image.


If a static temperature, static pressure and velocity profile are specified at the inlet I get the results mentioned in the first post: the velocity and temperature field looks correct, but the P, total P and density field is just crazy.
Mach Number field:

Will tinker around today with boundary conditions and see what I can manage on my own.

michael_owen October 29, 2010 21:18

I thought you said that the upper BC was free slip? It clearly isn't. It's no slip. If I read correctly, you are specifying your profile at the bottom, but not the top. You get a spurious shock at the bottom, but not the top, unless you also specify the profile at the top.

It seems pretty clear there is something wrong with your profile. No offense, but have you checked your units, constants and math?

Run a model with a ramp and a constant velocity inlet to eg a filully developed profile and see how it differs from what you are applying.

RossFS October 29, 2010 22:03


re: top wall
You are right, my mistake, but I'm 95% certain that I've run the conditions I've mentioned and had the results I've mentioned. Running with free slip top wall now.

re: Profile
The velocity profile I've specified: Well it matches an experimental BL velocity profile very well, but I'll double check.

The velocity profile generated from a 1.2m inlet only gets to ~15mm in height with 5% turbulence intensity and 0.01m length scale at the inlet (somewhat arbitrarily set). Experimentally it should be 23-24mm in height with 1% turbulence and about 0.025m turbulence length scale at 0.2m from the inlet.

michael_owen October 29, 2010 22:11

Also, I'm doing the numbers in my head, but the static temperature seems very low. Less than 100K? I can't recall, but is gamma = 1.4 even appropriate at those temperatures? The rotational modes of the gas molecules may not be fully excited.

RossFS October 29, 2010 22:20

1.4 was used as the gamma value in my supervisor's published paper (in the AIAA journal).

Static temperature in free stream by my calculations comes out to about 96K. Running no inlet velocity profile with total T= 250K and total P = 671,000Pa (absolute) gives the same free stream static temperature.
The numbers blew me away too, but it is a blowdown tunnel which I guess is akin to what happens in your fridge: let a gas that is highly compressed out into a low pressure region and it gets very cold.

michael_owen October 29, 2010 22:36

I think gamma is closer to 1.5 than 1.4 at that temp.

Also, have you considered roughness effects?

The presence of the inlet shock is clearly due to the disconnect between your inlet profile at the boundary layer than CFX "wants".

What is your turbulence BC?

michael_owen October 29, 2010 22:54

Also, what is the initial condition?

RossFS October 29, 2010 22:54


re: gamma
Will check this.
Doesn't look like the specific heat capacity for air ideal gas can be set dynamically from a table in CFX which is a bummer. Could try and do a curve fit for a c_p graph like this one though:
Although the c_p range is only about 3% over the temperature range in this flow. Can't use NASA polynomials for this as they only apply for >200K

Turbulence is set to: Turbulence and Length Scale
Turbulence = 0.01
Length Scale = 0.025
Both of these as per what was used in the published paper. Used to be using 5% turbulence and intensity and as far as I know haven't had any significant change in any of the results.

RossFS October 29, 2010 23:01

Initial conditions for simulation with constant 557.6m/s inlet velocity across the inlet have been either of these:

u= 550m/s
static T= 96K
static P = -78400Pa (relative to 101,325Pa gauge).

using the inlet velocity, static T and static P profile I have using equations outlined in the CFX documentation: eq 1.22 in xthry.pdf documentation with CFX and eq.1.48 from the same documentation.
Can post up images of both of these equations.

michael_owen October 29, 2010 23:02

Also, just checking: you're running double precision, yes? Probably won't matter, though, in this problem.

RossFS October 29, 2010 23:12

Have considered double precision and ran it for simulations a few weeks ago. Didn't appear to offer much of a difference, although given the velocity range involved in this problem it ought to be appropriate.

A contact of mine suggested that it wasn't worth using double precision in this problem until solving for the final results. i.e. don't run it for the first run of a simulation.

Have been initialising the domain with low turbulence intensity and length scale. Simulation runs with the velocity profile have been initialised with the results from the simulation run with no inlet velocity profile.

RossFS October 30, 2010 05:25

I think I've found the cause of the problem, but have only 2 ideas on how to rectify it.
When specifying a velocity profile I get this weird velocity profile at the inlet within the first cell of my mesh (0.0005m or 5e-4m high). This appears to happen whether specifying the velocity profile via a .csv file or via a user expression (as I've just done, but doesn't change anything it seems).

An issue with the wall function being implemented? Or maybe I need a more refined mesh (doing this now).

michael_owen November 1, 2010 10:27

What is your expression?

RossFS November 1, 2010 11:01

Using a more refined mesh, the same function I had and the SST k-w model (to get a different wall function to be used) seemed to eliminate the problem in the last image I posted. It did however produce another velocity spike higher up, which is probably down to using a power law for the boundary layer velocity profile (which doesn't account for the viscous sublayer in the BL very well).

Currently trying to generate a better velocity profile.

Velocity profile function I was using was:
u = u_inf * (y / delta) ^ 0.116 (0.116 cf 1/7 to match an experimental velocity profile better
BLh = 0.0239 [m]
BLv = if(y>=0 [m],if(y<=BLh, (557.6*(abs(y)^0.116/BLh^0.116)) [m s^-1], \
557.6 [m s^-1] ), 0 [m s^-1] )

Velocity discrepancy at inlet: (done with upwind method, but everything else set to "proper" conditions)

RossFS November 1, 2010 11:06

To go with the previous post (upwind but otherwise "proper" settings):

more zoomed out on the boundary layer at the inlet:

Entire flow domain

michael_owen November 1, 2010 12:09

What the hell.

All times are GMT -4. The time now is 18:31.