CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   STAR-CCM+ (http://www.cfd-online.com/Forums/star-ccm/)
-   -   Integrating along a streamline (http://www.cfd-online.com/Forums/star-ccm/93863-integrating-along-streamline.html)

JPBodner October 28, 2011 09:27

Integrating along a streamline
 
Damage to red blood cells in a flow is often evaluated by an equation like this:

damage=a*(shear stress)^b * (time)^c where a,b,c are constants.

Here, time is the time of exposure at the local value of shear stress. In other words, the idea is to integrate this along a streamline to determine how a particular red blood cell would be damaged.

Anyone know how to integrate an expression like this along a streamline in STAR-CCM+?

JB

RobertB October 29, 2011 10:09

Had you considered doing it as a source term. To find out flight time I think you put in a source term of density (it's in one of the examples). Thus you can see how long it takes to get from the inlet to a point.

You should be able to generate a source term which will essentially be the damage incurred while in that cell and the code will integrate it for you.

You can also see where the most damage is done purely by plotting up the source term (you may need to normalize by volume).

The other option is to run tracks, get the track file format from CD, dump the other data you need and write a program to do it externally.

ping November 7, 2011 06:57

on a quick think about this, I dont think you need streamlines or the 'age of flow via density' technique mentioned by robertb as used to measure age of air in buildings. you say the damage is time at a certain shear stress, so it would seem to me that you just need a field function which works out the damage during the current timestep = shear stress * dtime (with your constants included of course). then you need to add this to the current sum of damage to get the new total damage locally everywhere in the field. do the sum using a field monitor of type sum. plot this scalar field function. seems simple to me?

RobertB November 7, 2011 08:49

This would only provide total damage in the domain. It is likely that to design better parts you will need to attribute local damage to specific features which I do not believe this technique will do.

ping November 8, 2011 04:14

1 Attachment(s)
Attachment 9910
...it is not the total sum (that is a simple sum report) but the sum in each cell - this is why field monitors are such wonderful tools. however on second thoughts this is not what you want - it would tell you where the worst cells for creating damage are in fluctuating flow.
Whereas you need the transported damage summed, so you should be using a passive scalar for this: create the field function for your damage variable; add a passive scalar; add a region source for this scalar and use the damage field function as the source for the scalar. to get the units correct your might need to think about it a bit. i did this in a little test and the results are in the image - you can see the local shear stress at the top and the passive scalar below, with high values in the recirculation zone behind as one would expect.

JPBodner November 8, 2011 18:57

Yes, Ping. I think you have the idea that I came upon independently. (Actually, see "Fast three-dimensional numerical hemolysis approximation" by Garon and Farinas, Artificial organs, 2004.) Some people use the streamline approach, but the problem is that it only gives you an answer along the streamlines you happen to select. Also, in order to calculate the residence time, you need to use cell size and the velocity field, and this can be sketchy near the no-slip walls.

So, the preferred approach is to use a passive scalar and then use a source term to generate local damaged protein and then it can convect downstream to other parts of the flow. It's an Eulerian approach vs a Lagrangian approach.

Now the trick of the implementation is to come up with a representative shear stress (tau) for each finite volume cell. The paper suggests a von Mises type of approach. Does anyone know how to extract the stress tensor components in STAR-CCM+? They're not standard outputs.

Thanks for the input!

Quote:

Originally Posted by ping (Post 331142)
Attachment 9910
...it is not the total sum (that is a simple sum report) but the sum in each cell - this is why field monitors are such wonderful tools. however on second thoughts this is not what you want - it would tell you where the worst cells for creating damage are in fluctuating flow.
Whereas you need the transported damage summed, so you should be using a passive scalar for this: create the field function for your damage variable; add a passive scalar; add a region source for this scalar and use the damage field function as the source for the scalar. to get the units correct your might need to think about it a bit. i did this in a little test and the results are in the image - you can see the local shear stress at the top and the passive scalar below, with high values in the recirculation zone behind as one would expect.


JPBodner November 8, 2011 19:05

Now that I think about it, the only problem with the above approach is the conservation of red blood cells/proteins. You can generate an amount that exceeds what comes in potentially. I think I might also define another passive scalar representing the undamaged concentration and link the two such that the total damaged concentration cannot exceed the supply of undamaged entering the system.

ping November 8, 2011 19:44

glad it is looking feasible now. here is a shear stress field function i have used in the past (turn on 'temporary storage retained' in solver):

sqrt( mag2($$U_VelocityGrad) + mag2($$V_VelocityGrad) + mag2($$W_VelocityGrad) ) * $DynamicViscosity


All times are GMT -4. The time now is 02:35.