# What does “Mean Wall Shear Stress” mean?

 Register Blogs Members List Search Today's Posts Mark Forums Read

 September 16, 2009, 08:15 What does “Mean Wall Shear Stress” mean? #1 New Member   Join Date: Jun 2009 Posts: 11 Rep Power: 16 Hello, I am running an unsteady simulation and I have a question about unsteady wall statistics. Having already activated the data sampling from the iteration menu I use the Unsteady wall statistics and more specificly the Mean wall shear stress option from Display/Contours../ . And now the question is: How does fluent calculate this “Mean” values?? Is it the mean from the magnitudes of the shear vectors or the magnitude of the mean shear vector?? (Please see the following equations) Mean WSS= or Mean WSS= In some cases it is the same but in my case I have a variable velocity inlet (with positive and negative values) and thus the Shear Vector change direction. Thank you for your answers, Dim

 October 14, 2016, 09:19 hey #2 New Member   armin amindari Join Date: Oct 2013 Posts: 3 Rep Power: 12 HEY dim have you found the answer?

October 14, 2016, 13:16
#3
New Member

Join Date: Jun 2009
Posts: 11
Rep Power: 16
Quote:
 Originally Posted by amindari HEY dim have you found the answer?
Yeap. What Fluent calculates is the average wss magnitude.
The magnitude of the average wall shear stress vector has to be calculated either using a UDF or in a post-processing tool(.e.g Post-CFD, tecplot etc).
regards,
Dimitrios

 October 17, 2016, 01:05 #4 Senior Member   Paritosh Vasava Join Date: Oct 2012 Location: Lappeenranta, Finland Posts: 732 Rep Power: 22 Are you calculating OSI? If so, it would be interesting to know your approach.

November 6, 2016, 20:19
#5
New Member

Join Date: Jun 2009
Posts: 11
Rep Power: 16
Quote:
 Originally Posted by vasava Are you calculating OSI? If so, it would be interesting to know your approach.
I am really sorry for my late answer.
I was traveling and I missed this one.

Well... over the years I have tried both approaches (use of udfs/UDMs vs tecplot/matlab) and I would say that I really prefer the first one, since this way you can avoid problems related to the need of saving huge amount of data over time to avoid introducing errors in the osi/rrt calculations.

Unfortunately, I don't have the code I used while I was working on biofluids because I have moved to another institution but it shouldn't be very different from the following:

Code:
#include "udf.h"          /**** mandatory
#include "math.h"       /**** probably not necessary but I always include it
#include "storage.h"    /**** you need it
#include "sg_udms.h"  /**** you will need this one too

#define domain_ID 1    /***** put here your domain ID (fluid??)
#define zone_ID 7      /****** put here your zone ID (WALL??)

/**** initialize our UDMS
DEFINE_INIT(init,domain)
{
cell_t c;

{
{
C_UDMI(c,c_thread,0)= 0;   /* cumulative wss magnitude
C_UDMI(c,c_thread,1)= 0;    /* cumulative x-component of wss
C_UDMI(c,c_thread,2)= 0;    /* cumulative y-component of wss
C_UDMI(c,c_thread,3)= 0;   /* cumulative z-component of wss
}
}
}

/**** calculate OSI
DEFINE_EXECUTE_AT_END(OSI)
{
Domain *domain;
real AREA;
face_t f;
real A[ND_ND];
cell_t c, c0;
real BEDSHEAR[ND_ND];

domain = Get_Domain(domain_ID);

begin_f_loop(f, t)
{
F_AREA(A,f,t);
AREA = NV_MAG(A);
NV_V(BEDSHEAR,=,F_STORAGE_R_N3V(f,t, SV_WALL_SHEAR));
c0 = F_C0(f,t);
C_UDMI(c0,t0,0) += NV_MAG(BEDSHEAR)/area;
C_UDMI(c0,t0,1) += -BEDSHEAR[0]/area;
C_UDMI(c0,t0,2) += -BEDSHEAR[1]/area;
C_UDMI(c0,t0,3) += -BEDSHEAR[2]/area;
C_UDMI(c0,t0,4) = 0.5*(1.-sqrt(pow(C_UDMI(c0,t0,1), 2) + pow(C_UDMI(c0,t0,2),2) + pow(C_UDMI(c0,t0,3), 2))/C_UDMI(c0,t0,0));
}
end_f_loop(f,t)
}
You can also find more info in the post by khuti from where I found pieces of the code above.

I hope it works for you too.

some more tips:
1. You may want to exclude the initial period(s) from the osi computation as the results will be affected by you initial conditions (u=v=q=p=0??).
2. Keep monitoring OSI/ RRT statistics (max, min, average) to make sure that your results are period independent.

Best regards,
Dimitrios