Surface Roughness

Hello to all.

I am trying to accurately simulate fluid flow through a "real" pipe fitting and surface roughness is part of that.

I am given from the pipe manufacturer a single value for roughness of different pipes in dimensions of distance. i.e 0.0028 inches.

I see that there are several options for surface roughness of materials but units are now shown which complicates matters since there is more than one value I can enter. Where do I go to get full definitions and units of these input options so I can correctly enter the data?


Ken Martin

Surface Rougness

I am running the latest version of Caedium and re-reviewing the subject of surface roughness effects. For the "U Rough Wall" surface function it has two adjustable values Cs and Ks. Cs shows no units of measure and Ks shows units of "ft". (Hard to change SI at my age and with my industry)

Anyway, I need to better understand the significance of these to values. Where can I look to get a clear understanding of them?

I toyed around with a funny duct elbow with small inlet and a large outlet. ASHRAE gives pressure loss values for this fitting that are quite a bit higher (4 times higher) than the stardard non-slip wall that Caedium uses. I changed the surface type to U Rough Wall and fiddled with the Cs and Ks values until I got an answer the matched ASHRAE but that is obviously not the right thing to do since there are two parameters involved and I am not sure what they represent. We are given a single surface roughness value so I would think that Ks is the one to vary with material type and Cs should be fixed.

1. Does Ks represent the absolute surface roughness of the material?

Is Ks still in mm or is it really now in ft as showing on the screen. To make the elbow calculate the same as the given information I left the Cs value at 0.5 and set the Ks value at 0.965 (ft) (not sure if that is really ft or mm)

2. What does Cs represent?

Thanks again.


Focus on the smooth wall simulation first

I think you need to concentrate on the smooth wall simulation before trying a rough wall simulation, especially if the pressure loss is off by a factor of 4. The rough wall simulation should only add a marginal increase in pressure loss.

A value of nearly 1 ft for the roughness is another indication that something is a miss, assuming it is larger than the pipe diameter.

If you haven't already I suggest you create a 3 volume flow domain. You need to extend the inlet and outlet to be far away from pressure gradients (say about 6 elbow lengths away):

  1. Extrude the elbow inlet and outlet using the Others->Extrude tool, with the Keep Operands enabled (to preserve your original faces) to produce 2 new volumes
  2. Use the Face->Connect tool to connect all faces - it will only connect those faces that are near identical, i.e., the inlet and outlet faces for the elbow to the extended volumes
  3. Create a new group of all 3 volumes
  4. Assign the substance to the new group and set up your simulation as usual, e.g., reference velocity, boundary conditions. The only thing to watch is to make sure you do not assign a boundary condition to the 2 internal faces at the inlet and outlet to the elbow, respectively

Make sure the geometry is reasonably resolved by the mesh using the Conditions->Accuracy tool. Look at the Scalar Field->y+ on the walls. You want the majority of values to be in the range 30-300 otherwise your results will be compromised. You may have to use the Accuracy tool on the walls to get the y+ values within this range. y+ for a given flow configuration is directly proportional to the surface cell size.

To determine the pressure loss you need to create a new Result for the average pressure on a face as described in the comment "Create new Caedium Results". Then apply the pAverage monitor to the inlet and outlet faces of your elbow.

Assuming you are going to run a steady-state (default) simulation you want to see the residual monitor with all the residuals below 1e-3 and the pAverage monitors should converge to a single value with increasing time.

If you don't get within a factor of 2 for the pressure loss using this approach then there is no point trying the rough wall variant.

In answer to your questions:

The rough wall functions are configured by:

  • Cs - Tuning parameter (0-1) - leave it at 0.5 unless your calibration implies otherwise
  • Ks - Sand-grain roughness height, where smooth = 0 - units are as indicated, in your case ft

As a reference for sand-grain roughness related to measured surface roughness try:
"A Simple Algorithm to Relate Measured Surface Roughness to Equivalent Sand-grain Roughness"


Thanks for the important information. I believe I had created a model as you described with a long inlet and outlet to the elbow with those extensions being smooth while the elbow is of standard roughness.

I wonder if the base information I am working from is false. (not unusual for ASHRAE) I will try a simple model of standard equal dimension elbow to see how things shake out.

If the units of Ks are in fact feet then clearly there is a problem.

I will send some data to you once I do a little more experimenting.

Thanks again.


Rough wall functions

Configuring the rough wall functions is not a precise procedure.

First I would suggest you run your simulation with smooth (default) walls as a baseline for comparisons. In doing so you need to ensure that your y+ values on your walls are within the limits 30-300 (assuming you are using wall functions, default). y+ is a function of the flow conditions (primarily the Reynolds number) and the distance of the first mesh cell center to the wall. For a given flow condition you will need to run a simulation to generate the y+ values and then use the Accuracy tool to control the cell sizes at the walls to get your y+ values within bounds.

The rough wall functions are configured by:
Cs - Tuning parameter (0-1)
Ks - Sand-grain roughness height (m), where smooth = 0m

To calibrate your simulation you will need well regarded results or experimental data for rough walls.
Assuming your pipe roughness value to be equivalent to sand-grain roughness (it may not be, you will have to check with the original data) then you will need to convert it to meters and set Ks. Then use Cs to tune your simulation against your rough wall baseline data.

Between a smooth wall and rough wall simulation you should see only second order differences, i.e., there should only be fractional differences (if any) in your results.

Surface Roughness

Thanks for the very helpful points. I had opted to using the kABL wall function for the surface roughness. It asks for a single dimension in inches (since I have converted using the to the IP system since the values make more sense to me)

I did as you recommended. There is pressure drop data for a 12 inch round radius "smooth" elbow posted by ASHRAE for which gives a C value for various turn radii.

I generated a 12 inch round 90 degree elbow with 6 feet of ducting on both ends so as to take into account inflow and outflow effects created by the elbow in the turn. Using the pressure result I can see down the duct on both sides of the 90 degree elbow where it was no longer making an effect and narrowed the results bars to just so show the pressure drop associated with the elbow (a small amount went up the inlet duct and a larger amount when down the outlet duct as would be expected)

The program results were slightly lower than the given measured values so I adjusted the kABL wall function dimension to a larger value until the calculated and the given values where the same for pressure drop across the elbow. The duct surface kABL value that worked was found to be 0.005 inches. (which makes sense as a smooth metal surface roughness value)

I am hoping that now that I have established a roughness factor for the kABL wall function that I can use the same value for any kind of ducting arrangement of the same material.

I haven't yet but will model some other types of given duct fittings to see if the surface roughness of 0.007 inches will work in other conditions.



Use U Rough Wall Function

Your geometry configuration sounds good with the positioning of your inlet and outlet.

However, I would recommend you use the U Rough Wall Function, rather than the k ABL Wall Function. The reason being is that ABL stands for Atmospheric Boundary Layer. The roughness lengths for ABL are generally of the order of 1-10 meters. Also it is intended for use in conjunction with the Inlet->Type = ABL.

The next version of Caedium will cater for the U Rough Wall Function using units dependent length scales, so you will be able to enter values directly in inches. In the mean time multiple your inches value by 0.0254 to convert to meters.

To make sure your results are accurate you also need to control the Scalar Fields->y+ values on your walls to be between 30-300. y+ is dependent on the flow conditions and the first cell height spacing. You will need to run a series of iterations for these values to settle down. Once they do will get an idea of how much smaller your cells closest to the walls need to be. Use the Accuracy tool to control the size of elements on your walls. I suggest you focus only on the values in the region locally around the elbow.