Drag and terminal velocity (fluids.drag)

This module contains correlations for the drag coefficient Cd of a particle moving in a fluid. Numerical solvers for terminal velocity and an integrator for particle position over time are included also.

For reporting bugs, adding feature requests, or submitting pull requests, please use the GitHub issue tracker or contact the author at Caleb.Andrew.Bell@gmail.com.

Interfaces to Drag Models

fluids.drag.drag_sphere(Re, Method=None)[source]

This function handles calculation of drag coefficient on spheres. Twenty methods are available, all requiring only the Reynolds number of the sphere. Most methods are valid from Re=0 to Re=200,000. A correlation will be automatically selected if none is specified. If no correlation is selected, the following rules are used:

  • If Re < 0.01, use Stoke’s solution.

  • If 0.01 <= Re < 0.1, linearly combine ‘Barati’ with Stokes’s solution such that at Re = 0.1 the solution is ‘Barati’, and at Re = 0.01 the solution is ‘Stokes’.

  • If 0.1 <= Re <= ~212963, use the ‘Barati’ solution.

  • If ~212963 < Re <= 1E6, use the ‘Barati_high’ solution.

  • For Re > 1E6, raises an exception; no valid results have been found.

Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Other Parameters
Methodstr, optional

A string of the function name to use, as in the dictionary drag_sphere_correlations

Examples

>>> drag_sphere(200)
0.7682237950389874
fluids.drag.v_terminal(D, rhop, rho, mu, Method=None)[source]

Calculates terminal velocity of a falling sphere using any drag coefficient method supported by drag_sphere. The laminar solution for Re < 0.01 is first tried; if the resulting terminal velocity does not put it in the laminar regime, a numerical solution is used.

vt=4gdp(ρpρf)3CDρfv_t = \sqrt{\frac{4 g d_p (\rho_p-\rho_f)}{3 C_D \rho_f }}
Parameters
Dfloat

Diameter of the sphere, [m]

rhopfloat

Particle density, [kg/m^3]

rhofloat

Density of the surrounding fluid, [kg/m^3]

mufloat

Viscosity of the surrounding fluid [Pa*s]

Methodstr, optional

A string of the function name to use, as in the dictionary drag_sphere_correlations

Returns
v_tfloat

Terminal velocity of falling sphere [m/s]

Notes

As there are no correlations implemented for Re > 1E6, an error will be raised if the numerical solver seeks a solution above that limit.

The laminar solution is given in [1] and is:

vt=gdp2(ρpρf)18μfv_t = \frac{g d_p^2 (\rho_p - \rho_f)}{18 \mu_f}

References

1

Green, Don, and Robert Perry. Perry’s Chemical Engineers’ Handbook, Eighth Edition. McGraw-Hill Professional, 2007.

2

Rushton, Albert, Anthony S. Ward, and Richard G. Holdich. Solid-Liquid Filtration and Separation Technology. 1st edition. Weinheim ; New York: Wiley-VCH, 1996.

Examples

>>> v_terminal(D=70E-6, rhop=2600., rho=1000., mu=1E-3)
0.004142497244531304

Example 7-1 in GPSA handbook, 13th edition:

>>> from scipy.constants import *
>>> v_terminal(D=150E-6, rhop=31.2*lb/foot**3, rho=2.07*lb/foot**3,  mu=1.2e-05)/foot
0.4491992020345101

The answer reported there is 0.46 ft/sec.

fluids.drag.integrate_drag_sphere(D, rhop, rho, mu, t, V=0, Method=None, distance=False)[source]

Integrates the velocity and distance traveled by a particle moving at a speed which will converge to its terminal velocity.

Performs an integration of the following expression for acceleration:

a=g(ρpρf)ρp3CDρfu24Dρpa = \frac{g(\rho_p-\rho_f)}{\rho_p} - \frac{3C_D \rho_f u^2}{4D \rho_p}
Parameters
Dfloat

Diameter of the sphere, [m]

rhopfloat

Particle density, [kg/m^3]

rhofloat

Density of the surrounding fluid, [kg/m^3]

mufloat

Viscosity of the surrounding fluid [Pa*s]

tfloat

Time to integrate the particle to, [s]

Vfloat

Initial velocity of the particle, [m/s]

Methodstr, optional

A string of the function name to use, as in the dictionary drag_sphere_correlations

distancebool, optional

Whether or not to calculate the distance traveled and return it as well

Returns
vfloat

Velocity of falling sphere after time t [m/s]

xfloat, returned only if distance == True

Distance traveled by the falling sphere in time t, [m]

Notes

This can be relatively slow as drag correlations can be complex.

There are analytical solutions available for the Stokes law regime (Re < 0.3). They were obtained from Wolfram Alpha. [1] was not used in the derivation, but also describes the derivation fully.

V(t)=exp(at)(V0a+b(exp(at)1))aV(t) = \frac{\exp(-at) (V_0 a + b(\exp(at) - 1))}{a}
x(t)=exp(at)[V0a(exp(at)1)+bexp(at)(at1)+b]a2x(t) = \frac{\exp(-a t)\left[V_0 a(\exp(a t) - 1) + b\exp(a t)(a t-1) + b\right]}{a^2}
a=18μfD2ρpa = \frac{18\mu_f}{D^2\rho_p}
b=g(ρpρf)ρpb = \frac{g(\rho_p-\rho_f)}{\rho_p}

The analytical solution will automatically be used if the initial and terminal velocity is show the particle’s behavior to be laminar. Note that this behavior requires that the terminal velocity of the particle be solved for - this adds slight (1%) overhead for the cases where particles are not laminar.

References

1

Timmerman, Peter, and Jacobus P. van der Weele. “On the Rise and Fall of a Ball with Linear or Quadratic Drag.” American Journal of Physics 67, no. 6 (June 1999): 538-46. https://doi.org/10.1119/1.19320.

Examples

>>> integrate_drag_sphere(D=0.001, rhop=2200., rho=1.2, mu=1.78E-5, t=0.5,
... V=30, distance=True)
(9.68646, 7.82945)
fluids.drag.time_v_terminal_Stokes(D, rhop, rho, mu, V0, tol=1e-14)[source]

Calculates the time required for a particle in Stoke’s regime only to reach terminal velocity (approximately). An infinitely long period is required theoretically, but with floating points, it is possible to calculate the time required to come within a specified tol of that terminal velocity.

tterm=118μln(D2gρD2gρp+18μVtermD2gρD2gρp+18μV0)D2ρpt_{term} = -\frac{1}{18\mu}\ln \left(\frac{D^2g\rho - D^2 g \rho_p + 18\mu V_{term}}{D^2g\rho - D^2 g \rho_p + 18\mu V_0 } \right) D^2 \rho_p
Parameters
Dfloat

Diameter of the sphere, [m]

rhopfloat

Particle density, [kg/m^3]

rhofloat

Density of the surrounding fluid, [kg/m^3]

mufloat

Viscosity of the surrounding fluid [Pa*s]

V0float

Initial velocity of the particle, [m/s]

tolfloat, optional

How closely to approach the terminal velocity - the target velocity is the terminal velocity multiplied by 1 (+/-) this, depending on if the particle is accelerating or decelerating, [-]

Returns
tfloat

Time for the particle to reach the terminal velocity to within the specified or an achievable tolerance, [s]

Notes

The symbolic solution was obtained via Wolfram Alpha.

If a solution cannot be obtained due to floating point error at very high tolerance, an exception is raised - but first, the tolerance is doubled, up to fifty times in an attempt to obtain the highest possible precision while sill giving an answer. If at any point the tolerance is larger than 1%, an exception is also raised.

Examples

>>> time_v_terminal_Stokes(D=1e-7, rhop=2200., rho=1.2, mu=1.78E-5, V0=1)
3.1880031137871528e-06
>>> time_v_terminal_Stokes(D=1e-2, rhop=2200., rho=1.2, mu=1.78E-5, V0=1,
... tol=1e-30)
24800.636391801996
fluids.drag.drag_sphere_methods(Re, check_ranges=True)[source]

This function returns a list of methods that can be used to calculate the drag coefficient of a sphere. Twenty one methods are available, all requiring only the Reynolds number of the sphere. Most methods are valid from Re=0 to Re=200,000.

Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

check_rangesbool, optional

Whether to return only correlations claiming to be valid for the given Re or not, [-]

Returns
methodslist, only returned if AvailableMethods == True

List of methods which can be used to calculate Cd with the given Re

Examples

>>> len(drag_sphere_methods(200))
20
>>> len(drag_sphere_methods(200000, check_ranges=False))
21
>>> len(drag_sphere_methods(200000, check_ranges=True))
5

Drag Correlations

fluids.drag.Stokes(Re)[source]

Calculates drag coefficient of a smooth sphere using Stoke’s law.

CD=24/ReC_D = 24/Re
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 0.3

References

1

Rhodes, Martin J. Introduction to Particle Technology. Wiley, 2013.

Examples

>>> Stokes(0.1)
240.0
fluids.drag.Barati(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1].

CD=5.4856×109tanh(4.3774×109/Re)+0.0709tanh(700.6574/Re)+0.3894tanh(74.1539/Re)0.1198tanh(7429.0843/Re)+1.7174tanh[9.9851/(Re+2.3384)]+0.4744C_D = 5.4856\times10^9\tanh(4.3774\times10^{-9}/Re) + 0.0709\tanh(700.6574/Re) + 0.3894\tanh(74.1539/Re) - 0.1198\tanh(7429.0843/Re) + 1.7174\tanh[9.9851/(Re+2.3384)] + 0.4744
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5

References

1(1,2)

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

Matching example in [1], in a table of calculated values.

>>> Barati(200.)
0.7682237950389874
fluids.drag.Barati_high(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1].

CD=8×106[(Re/6530)2+tanh(Re)8ln(Re)/ln(10)]0.4119exp(2.08×1043/[Re+Re2]4)2.1344exp({[ln(Re2+10.7563)/ln(10)]2+9.9867}/Re)+0.1357exp([(Re/1620)2+10370]/Re)8.5×103{2ln[tanh(tanh(Re))]/ln(10)2825.7162}/Re+2.4795C_D = 8\times 10^{-6}\left[(Re/6530)^2 + \tanh(Re) - 8\ln(Re)/\ln(10)\right] - 0.4119\exp(-2.08\times10^{43}/[Re + Re^2]^4) -2.1344\exp(-\{[\ln(Re^2 + 10.7563)/\ln(10)]^2 + 9.9867\}/Re) +0.1357\exp(-[(Re/1620)^2 + 10370]/Re) - 8.5\times 10^{-3}\{2\ln[\tanh(\tanh(Re))]/\ln(10) - 2825.7162\}/Re + 2.4795
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 1E6 This model is the wider-range model the authors developed. At sufficiently low diameters or Re values, drag is no longer a phenomena.

References

1(1,2)

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

Matching example in [1], in a table of calculated values.

>>> Barati_high(200.)
0.7730544082789523
fluids.drag.Khan_Richardson(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=(2.49Re0.328+0.34Re0.067)3.18C_D = (2.49Re^{-0.328} + 0.34Re^{0.067})^{3.18}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5

References

1

Khan, A. R., and J. F. Richardson. “The Resistance to Motion of a Solid Sphere in a Fluid.” Chemical Engineering Communications 62, no. 1-6 (December 1, 1987): 135-50. doi:10.1080/00986448708912056.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Khan_Richardson(200.)
0.7747572379211097
fluids.drag.Morsi_Alexander(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

If Re < 0.1:

CD=24ReC_D = \frac{24}{Re}

If 0.1 < Re < 1:

CD=22.73Re+0.0903Re2+3.69C_D = \frac{22.73}{Re}+\frac{0.0903}{Re^2} + 3.69

If 1 < Re < 10:

CD=29.1667Re3.8889Re2+1.2220C_D = \frac{29.1667}{Re}-\frac{3.8889}{Re^2} + 1.2220

If 10 < Re < 100:

CD=46.5Re116.67Re2+0.6167C_D =\frac{46.5}{Re}-\frac{116.67}{Re^2} + 0.6167

If 100 < Re < 1000:

CD=98.33Re2778Re2+0.3644C_D = \frac{98.33}{Re}-\frac{2778}{Re^2} + 0.3644

If 1000 < Re < 5000:

CD=148.62Re4.75×104Re2+0.3570C_D = \frac{148.62}{Re}-\frac{4.75\times10^4}{Re^2} + 0.3570

If 5000 < Re < 10000:

CD=490.5460Re+57.87×104Re2+0.46C_D = \frac{-490.5460}{Re}+\frac{57.87\times10^4}{Re^2} + 0.46

If 10000 < Re < 50000:

CD=1662.5Re+5.4167×106Re2+0.5191C_D = \frac{-1662.5}{Re}+\frac{5.4167\times10^6}{Re^2} + 0.5191
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5. Original was reviewed, and confirmed to contain the cited equations.

References

1

Morsi, S. A., and A. J. Alexander. “An Investigation of Particle Trajectories in Two-Phase Flow Systems.” Journal of Fluid Mechanics 55, no. 02 (September 1972): 193-208. doi:10.1017/S0022112072001806.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Morsi_Alexander(200)
0.7866
fluids.drag.Rouse(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=24Re+3Re0.5+0.34C_D = \frac{24}{Re} + \frac{3}{Re^{0.5}} + 0.34
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5

References

1

H. Rouse, Fluid Mechanics for Hydraulic Engineers, Dover, New York, N.Y., 1938

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Rouse(200.)
0.6721320343559642
fluids.drag.Engelund_Hansen(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=24Re+1.5C_D = \frac{24}{Re} + 1.5
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5

References

1

F. Engelund, E. Hansen, Monograph on Sediment Transport in Alluvial Streams, Monograpsh Denmark Technical University, Hydraulic Lab, Denmark, 1967.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Engelund_Hansen(200.)
1.62
fluids.drag.Clift_Gauvin(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=24Re(1+0.152Re0.677)+0.4171+5070Re0.94C_D = \frac{24}{Re}(1 + 0.152Re^{0.677}) + \frac{0.417} {1 + 5070Re^{-0.94}}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5

References

1

R. Clift, W.H. Gauvin, The motion of particles in turbulent gas streams, Proc. Chemeca, 70, 1970, pp. 14-28.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Clift_Gauvin(200.)
0.7905400398000133
fluids.drag.Graf(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=24Re+7.31+Re0.5+0.25C_D = \frac{24}{Re} + \frac{7.3}{1+Re^{0.5}} + 0.25
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5

References

1

W.H. Graf, Hydraulics of Sediment Transport, Water Resources Publications, Littleton, Colorado, 1984.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Graf(200.)
0.8520984424785725
fluids.drag.Flemmer_Banks(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=24Re10EC_D = \frac{24}{Re}10^E
E=0.383Re0.3560.207Re0.3960.1431+(log10Re)2E = 0.383Re^{0.356}-0.207Re^{0.396} - \frac{0.143}{1+(\log_{10} Re)^2}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5

References

1

Flemmer, R. L. C., and C. L. Banks. “On the Drag Coefficient of a Sphere.” Powder Technology 48, no. 3 (November 1986): 217-21. doi:10.1016/0032-5910(86)80044-4.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Flemmer_Banks(200.)
0.7849169609270039
fluids.drag.Swamee_Ojha(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=0.5{16[(24Re)1.6+(130Re)0.72]2.5+[(40000Re)2+1]0.25}0.25C_D = 0.5\left\{16\left[(\frac{24}{Re})^{1.6} + (\frac{130}{Re})^{0.72} \right]^{2.5}+ \left[\left(\frac{40000}{Re}\right)^2 + 1\right]^{-0.25} \right\}^{0.25}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 1.5E5

References

1

Swamee, P. and Ojha, C. (1991). “Drag Coefficient and Fall Velocity of nonspherical particles.” J. Hydraul. Eng., 117(5), 660-667.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Swamee_Ojha(200.)
0.8490012397545713
fluids.drag.Yen(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=24Re(1+0.15Re+0.017Re)0.2081+104Re0.5C_D = \frac{24}{Re}\left(1 + 0.15\sqrt{Re} + 0.017Re\right) - \frac{0.208}{1+10^4Re^{-0.5}}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5

References

1

B.C. Yen, Sediment Fall Velocity in Oscillating Flow, University of Virginia, Department of Civil Engineering, 1992.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Yen(200.)
0.7822647002187014
fluids.drag.Haider_Levenspiel(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=24Re(1+0.1806Re0.6459)+(0.42511+6880.95Re)C_D=\frac{24}{Re}(1+0.1806Re^{0.6459})+\left(\frac{0.4251}{1 +\frac{6880.95}{Re}}\right)
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5 An improved version of this correlation is in Brown and Lawler.

References

1

Haider, A., and O. Levenspiel. “Drag Coefficient and Terminal Velocity of Spherical and Nonspherical Particles.” Powder Technology 58, no. 1 (May 1989): 63-70. doi:10.1016/0032-5910(89)80008-7.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Haider_Levenspiel(200.)
0.7959551680251666
fluids.drag.Cheng(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=24Re(1+0.27Re)0.43+0.47[1exp(0.04Re0.38)]C_D=\frac{24}{Re}(1+0.27Re)^{0.43}+0.47[1-\exp(-0.04Re^{0.38})]
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 2E5

References

1

Cheng, Nian-Sheng. “Comparison of Formulas for Drag Coefficient and Settling Velocity of Spherical Particles.” Powder Technology 189, no. 3 (February 13, 2009): 395-398. doi:10.1016/j.powtec.2008.07.006.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Cheng(200.)
0.7939143028294227
fluids.drag.Terfous(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=2.689+21.683Re+0.131Re210.616Re0.1+12.216Re0.2C_D = 2.689 + \frac{21.683}{Re} + \frac{0.131}{Re^2} - \frac{10.616}{Re^{0.1}} + \frac{12.216}{Re^{0.2}}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is 0.1 < Re <= 5E4

References

1

Terfous, A., A. Hazzab, and A. Ghenaim. “Predicting the Drag Coefficient and Settling Velocity of Spherical Particles.” Powder Technology 239 (May 2013): 12-20. doi:10.1016/j.powtec.2013.01.052.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Terfous(200.)
0.7814651149769638
fluids.drag.Mikhailov_Freire(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=3808[(1617933/2030)+(178861/1063)Re+(1219/1084)Re2]681Re[(77531/422)+(13529/976)Re(1/71154)Re2]C_D = \frac{3808[(1617933/2030) + (178861/1063)Re + (1219/1084)Re^2]} {681Re[(77531/422) + (13529/976)Re - (1/71154)Re^2]}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 118300

References

1

Mikhailov, M. D., and A. P. Silva Freire. “The Drag Coefficient of a Sphere: An Approximation Using Shanks Transform.” Powder Technology 237 (March 2013): 432-35. doi:10.1016/j.powtec.2012.12.033.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Mikhailov_Freire(200.)
0.7514111388018659
fluids.drag.Clift(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

If Re < 0.01:

CD=24Re+316C_D = \frac{24}{Re} + \frac{3}{16}

If 0.01 < Re < 20:

CD=24Re(1+0.1315Re0.820.05log10Re)C_D = \frac{24}{Re}(1 + 0.1315Re^{0.82 - 0.05\log_{10} Re})

If 20 < Re < 260:

CD=24Re(1+0.1935Re0.6305)C_D = \frac{24}{Re}(1 + 0.1935Re^{0.6305})

If 260 < Re < 1500:

CD=10[1.64351.1242log10Re+0.1558[log10Re]2C_D = 10^{[1.6435 - 1.1242\log_{10} Re + 0.1558[\log_{10} Re]^2}

If 1500 < Re < 12000:

CD=10[2.4571+2.5558log10Re0.9295[log10Re]2+0.1049[log10Re]3C_D = 10^{[-2.4571 + 2.5558\log_{10} Re - 0.9295[\log_{10} Re]^2 + 0.1049[\log_{10} Re]^3}

If 12000 < Re < 44000:

CD=10[1.9181+0.6370log10Re0.0636[log10Re]2C_D = 10^{[-1.9181 + 0.6370\log_{10} Re - 0.0636[\log_{10} Re]^2}

If 44000 < Re < 338000:

CD=10[4.3390+1.5809log10Re0.1546[log10Re]2C_D = 10^{[-4.3390 + 1.5809\log_{10} Re - 0.1546[\log_{10} Re]^2}

If 338000 < Re < 400000:

CD=29.785.3log10ReC_D = 29.78 - 5.3\log_{10} Re

If 400000 < Re < 1000000:

CD=0.19log10Re0.49C_D = 0.19\log_{10} Re - 0.49
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 1E6.

References

1

R. Clift, J.R. Grace, M.E. Weber, Bubbles, Drops, and Particles, Academic, New York, 1978.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Clift(200)
0.7756342422322543
fluids.drag.Ceylan(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=10.5exp(0.182)+10.11Re2/3exp(0.952Re1/4)0.03859Re4/3exp(1.30Re1/2)+0.037×104Reexp(0.125×104Re)0.116×1010Re2exp(0.444×105Re)C_D = 1 - 0.5\exp(0.182) + 10.11Re^{-2/3}\exp(0.952Re^{-1/4}) - 0.03859Re^{-4/3}\exp(1.30Re^{-1/2}) + 0.037\times10^{-4}Re\exp(-0.125\times10^{-4}Re) -0.116\times10^{-10}Re^2\exp(-0.444\times10^{-5}Re)
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is 0.1 < Re <= 1E6 Original article reviewed.

References

1

Ceylan, Kadim, Ayşe Altunbaş, and Gudret Kelbaliyev. “A New Model for Estimation of Drag Force in the Flow of Newtonian Fluids around Rigid or Deformable Particles.” Powder Technology 119, no. 2-3 (September 24, 2001): 250-56. doi:10.1016/S0032-5910(01)00261-3.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Ceylan(200.)
0.7816735980280175
fluids.drag.Almedeij(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=[1(ϕ1+ϕ2)1+(ϕ3)1+ϕ4]0.1C_D = \left[\frac{1}{(\phi_1 + \phi_2)^{-1} + (\phi_3)^{-1}} + \phi_4\right]^{0.1}
ϕ1=(24Re1)10+(21Re0.67)10+(4Re0.33)10+0.410\phi_1 = (24Re^{-1})^{10} + (21Re^{-0.67})^{10} + (4Re^{-0.33})^{10} + 0.4^{10}
ϕ2=[(0.148Re0.11)10+(0.5)10]1\phi_2 = \left[(0.148Re^{0.11})^{-10} + (0.5)^{-10}\right]^{-1}
ϕ3=(1.57×108Re1.625)10\phi_3 = (1.57\times10^8Re^{-1.625})^{10}
ϕ4=[(6×1017Re2.63)10+(0.2)10]1\phi_4 = \left[(6\times10^{-17}Re^{2.63})^{-10} + (0.2)^{-10}\right]^{-1}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 1E6. Original work has been reviewed.

References

1

Almedeij, Jaber. “Drag Coefficient of Flow around a Sphere: Matching Asymptotically the Wide Trend.” Powder Technology 186, no. 3 (September 10, 2008): 218-23. doi:10.1016/j.powtec.2007.12.006.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Almedeij(200.)
0.7114768646813396
fluids.drag.Morrison(Re)[source]

Calculates drag coefficient of a smooth sphere using the method in [1] as described in [2].

CD=24Re+2.6Re/51+(Re5)1.52+0.411(Re263000)7.941+(Re263000)8+Re0.8461000C_D = \frac{24}{Re} + \frac{2.6Re/5}{1 + \left(\frac{Re}{5}\right)^{1.52}} + \frac{0.411 \left(\frac{Re}{263000}\right)^{-7.94}}{1 + \left(\frac{Re}{263000}\right)^{-8}} + \frac{Re^{0.8}}{461000}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

Returns
Cdfloat

Drag coefficient [-]

Notes

Range is Re <= 1E6.

References

1

Morrison, Faith A. An Introduction to Fluid Mechanics. Cambridge University Press, 2013.

2

Barati, Reza, Seyed Ali Akbar Salehi Neyshabouri, and Goodarz Ahmadi. “Development of Empirical Models with High Accuracy for Estimation of Drag Coefficient of Flow around a Smooth Sphere: An Evolutionary Approach.” Powder Technology 257 (May 2014): 11-19. doi:10.1016/j.powtec.2014.02.045.

Examples

>>> Morrison(200.)
0.767731559965325
fluids.drag.Song_Xu(Re, sphericity=1.0, S=1.0)[source]

Calculates drag coefficient of a particle using the method in [1]. Developed with data for spheres, cubes, and cylinders. Claims 3.52% relative error for 0.001 < Re < 100 based on 336 tests data.

Cd=24Reϕ0.65S0.3(1+0.35Re)0.44C_d = \frac{24}{Re\phi^{0.65}S^{0.3}}\left(1 + 0.35Re\right)^{0.44}
Parameters
Refloat

Particle Reynolds number of the sphere using the surrounding fluid density and viscosity, [-]

sphericityfloat, optional

Sphericity of the particle

Sfloat, optional

Ratio of equivalent sphere area and the projected area in the particle settling direction [-]

Returns
Cdfloat

Drag coefficient of particle [-]

Notes

Notable as its experimental data and analysis is included in their supporting material.

References

1

Song, Xianzhi, Zhengming Xu, Gensheng Li, Zhaoyu Pang, and Zhaopeng Zhu. “A New Model for Predicting Drag Coefficient and Settling Velocity of Spherical and Non-Spherical Particle in Newtonian Fluid.” Powder Technology 321 (November 2017): 242-50. doi:10.1016/j.powtec.2017.08.017.

Examples

>>> Song_Xu(30.)
2.3431335190092444