|
[Sponsors] |
January 19, 2021, 06:41 |
Multiphase non-Newtonian viscosity of blood
|
#1 |
New Member
Nederland
Join Date: Sep 2020
Posts: 9
Rep Power: 6 |
Dear users,
I am working on multiphase blood simulations in patient-specific aortas using ansys FLUENT (version 19.1). I have succesfully implemented a two-phase model on different geometries, but am struggling with the interpretation of some results. I model the blood as being non-Newtonian using a modified Carreau-Yasuda model with two phases: plasma + RBC (as a granular phase). The UDF uses the shear rate of the RBCs and RBC volume fraction to calculate the RBC viscosity and this is then implemented in FLUENT under the specific settings for the RBCs in the granular phase. The bulk viscosity is assumed to be zero. The mixture viscosity is then (when post-processing) calculated according to: mu_mix = mu_rbc*VOF_rbc + mu_plasma*VOF_plasma. The plasma viscosity is assumed to be constant. To compare and verify my results, I did a single phase non-Newtonian simulation with the same UDF, but using a fixed VOF of 0.45 (therefore, the viscosity is only dependent on the strain rate magnitude. When I compare the mixture viscosities for the single and multiphase model, I encounter lower viscosity magnitude values for the multiphase model. I have trouble finding a reason why this is the case, since (for as far as I know), the strain rate magnitude is only dependent on the velocity of the particles. There are no differences in the velocity contour plots, so I would expect the viscosity contours to be the same as well (at least during steady state). I listed the differences between the simulations below: 1. Single phase has overall plasma viscosity of 0.0037 Pa s, whereas the two-phase has a plasma viscosity of 0.001 Pa s and the RBC viscosity is determined by the UDF. 2. The single phase model has an overall density of 1080 kg/m3 and the two phase model uses 1025 kg/m3 for the plasma + 1125 kg/m3 for the RBCs. 3. Obviously, the two-phase model has the granular euler-euler multiphase approach enabled. Here, RBCs are assumed to be the granular phase with a diameter of 8e-6 m. Granular bulk viscosity is assumed to be zero, only drag is enabled (Gidaspow model). All other convergence settings are similar, and the results presented below are from converged steady state solutions. Also, the UDF for 1) the single phase non-Newtonian model: DEFINE_PROPERTY(cy_viscosity_singlephase, c, t) { float mu_plasma = 0.001; float eps_RBC = 0.45; float lambda = 0.110; float n = (0.8092 * pow(eps_RBC,3)) - (0.8246 * pow(eps_RBC,2)) - (0.3503 * eps_RBC) + 1; float m = (122.28 * pow(eps_RBC,3)) - (51.213 *pow(eps_RBC,3)) + (16.305 * eps_RBC) + 1; float exp = (n-1)/2; double gamma; double mu; gamma = C_STRAIN_RATE_MAG(c, t); mu = mu_plasma*m*pow((1+ pow((lambda*gamma),2)),exp); return mu; } And the UDF for the two-phase model: #include "udf.h" DEFINE_PROPERTY(granular_viscosity_rbc , cell , thread_rbc) { int phase_domain_index , ID=9; Thread *mixthread; Thread *subthread; Domain *mixture_domain; mixture_domain = Get_Domain(1); mixthread = Lookup_Thread(mixture_domain ,ID); /* predefine variables */ real muplasma=0.001; real murbc; real mumix; real eps_rbc; real lambda=0.110; real m; real n; real sr; Domain *plasma_domain; Domain *rbc_domain; /* get domain numbers of plasma and rbc */ plasma_domain = Get_Domain(2); rbc_domain = Get_Domain(3); /* loop over all threads */ sub_thread_loop(subthread , mixthread , phase_domain_index) { /* viscosity in plasma thread is muplasma */ if ( subthread == Lookup_Thread(plasma_domain ,ID) ) { muplasma = C_MU_L(cell , subthread); } else if ( subthread == Lookup_Thread(rbc_domain ,ID) ) { sr = C_STRAIN_RATE_MAG(cell ,subthread); /* shear rate from rbc, could be the wrong one */ eps_rbc = C_VOF(cell , subthread); } } n = 0.8092*pow(eps_rbc ,3.) - 0.8246*pow(eps_rbc ,2.) - 0.3503*eps_rbc + 1.; m = 122.28*pow(eps_rbc ,3.) - 51.213*pow(eps_rbc ,2.) + 16.305*eps_rbc + 1.; mumix = m* pow( (1.+ pow((lambda*sr) ,2.) ),((n-1.)/2.) ); murbc = (mumix*muplasma -(1.-eps_rbc)*muplasma)/eps_rbc; /*if (cell %50000==0) { Message("muplasma = %f\n", muplasma); Message("strainrate = %f\n",sr); Message("vof = %f\n",eps_rbc); Message("n = %f\n",n); Message("m = %f\n",m); Message("mumix %f\n",mumix); Message("murbc %f\n",murbc); Message(" %f\n",); }*/ return murbc; } Furthermore, I investigated the effect of taking the strain rate magnitude for the two phase model from the plasma phase / from the plasma + rbc phase. However, this gave no different viscosity magntide if deducted from the plasma phase, and if it was deducted from the plasma + rbc phase, the mixture viscosity was even lower (due to the shear thinning effect). Therefore, I was wondering: what exactly are all the parameters effecting the shear rate magnitude (and this the mixture viscosity) in a multiphase model? Since everything I read / research leads to the conclusion that it's only a function of the velocity field, whereas those are similar for the different simulations. I included images of the different Velocity Fields + RBC viscosities + mixture viscosities. Thanks in advance! Mixture_Viscosity.jpg RBC_Viscosity.PNG Velocity Magnitude.jpg |
|
January 20, 2021, 13:05 |
Multiphase blood
|
#2 | |||
Member
Sebi
Join Date: Mar 2019
Posts: 49
Rep Power: 7 |
As well as having a few issues with your implementation, I think there are some simple mistakes in you udf's which may result in different viscous predictions.You are using inconsistent definitions of mixture viscosity in your UDF's
Quote:
Furthermore you are trying to derive an expression for rbc viscosity from the weighted average of volume fractions given as: Quote:
Quote:
murbc = (mumix -(1-rps_rbc)*muplasma)/(eps_rbc); In terms of general strategy, it is unnecessary (and slow) to include your plasma definition in the multiphase code. You are giving it a newtonian viscosity - define this simply in fluent without a UDF. This reduces the work you have to do looping in your UDF. You are correct that shear in Fluent is a function of viscosity filed and hence each phase will have (similar) but slightly different shear rates and you should be using the rbc shear in all your multiphase codes. As a side note, I have a personal preference for the Quemada-Das and MKM5 approaches to multiphase rheology as they are more widely used than the C-Y hematocrit model that Yilmaz et al. presented. I hope this helped. |
||||
January 21, 2021, 09:12 |
Multiphase blood rheology
|
#3 |
New Member
Nederland
Join Date: Sep 2020
Posts: 9
Rep Power: 6 |
Thank you for your elaborate answer! It helps a lot.
The reason I multiply the mixture viscosity with the plasma viscosity is because the definition in the paper itself is dimensionless, and for proper implementation in fluent it should be dimensionless (to my knowlegde). That's also why it's rearranged to: murbc = (mumix*muplasma -(1.-eps_rbc)*muplasma)/eps_rbc; since mumix*muplasma is de dimensional definition vs mumix being dimenionsless I'm running new simulations atm but your answer has already been very useful, so thanks! |
|
January 22, 2021, 07:09 |
|
#4 | |||
Member
Sebi
Join Date: Mar 2019
Posts: 49
Rep Power: 7 |
I don't quite understand what you mean, Fluent uses S.I units by default and so the number you are returning should be in Pa.s or N.s/m^2 etc. The equation's in Yilmaz paper may be fitted to data which uses non-SI units and therefore requires adjusting by a constant factor - but implying this is the viscosity of plasma is misleading I guess?
As an idea, I think it is easier to specify your phase threads as: Quote:
Quote:
Quote:
|
||||
Tags |
blood, granular phase, multiphase, shear rate, shear-thinning |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Viscosity of Mixture multiphase modeling | rezaamininiaki | FLUENT | 0 | June 29, 2020 03:53 |
Running in batch mode and in GUI | hocon | FLUENT | 0 | July 23, 2019 08:53 |
non newtonian viscosity | mina.p | CFX | 3 | October 10, 2014 02:40 |
Multiphase and Non Newtonian fluid | wanna88 | FLUENT | 0 | May 27, 2013 01:09 |
Multiphase Non-Newtonian Viscosity | vagaikwa | FLUENT | 0 | April 17, 2013 21:46 |