diff --git a/fluids/__init__.py b/fluids/__init__.py index 6425b5eb..af63789f 100644 --- a/fluids/__init__.py +++ b/fluids/__init__.py @@ -72,4 +72,4 @@ __all__.extend(two_phase_voidage.__all__) -__version__ = '0.1.48' +__version__ = '0.1.49' diff --git a/fluids/compressible.py b/fluids/compressible.py index 550221ae..2edd7fad 100644 --- a/fluids/compressible.py +++ b/fluids/compressible.py @@ -111,9 +111,9 @@ def is_critical_flow(P1, P2, k): Parameters ---------- - P1: float + P1 : float Higher, source pressure [Pa] - P2: float + P2 : float Lower, downstream pressure [Pa] k : float Isentropic coefficient [] diff --git a/fluids/core.py b/fluids/core.py index a62af84d..5be335d6 100644 --- a/fluids/core.py +++ b/fluids/core.py @@ -23,7 +23,7 @@ 'Schmidt', 'Peclet_heat', 'Peclet_mass', 'Fourier_heat', 'Fourier_mass', 'Graetz_heat', 'Lewis', 'Weber', 'Mach', 'Knudsen', 'Bond', 'Froude', 'Strouhal', 'Biot', 'Stanton', 'Euler', 'Cavitation', 'Eckert', -'Jakob', 'Power_number', 'Drag', 'Capillary', 'Bejan_L', 'Bejan_p', +'Jakob', 'Power_number', 'Drag', 'Capillary', 'Bejan_L', 'Bejan_p', 'Boiling', 'Archimedes', 'Ohnesorge', 'thermal_diffusivity', 'c_ideal_gas', 'relative_roughness', 'nu_mu_converter', 'gravity', 'K_from_f', 'K_from_L_equiv', 'dP_from_K', 'head_from_K', 'head_from_P', @@ -1715,6 +1715,60 @@ def Bejan_p(dP, K, mu, alpha): return Be_p +def Boiling(G, q, Hvap): + r'''Calculates Boiling number or `Bg` using heat flux, two-phase mass flux, + and heat of vaporization of the fluid flowing. Used in two-phase heat + transfer calculations. + + .. math:: + \text{Bg} = \frac{q}{G_{tp} \Delta H_{vap}} + + Parameters + ---------- + G : float + Two-phase mass flux in a channel (combined liquid and vapor) [kg/m^2/s] + q : float + Heat flux [W/m^2] + Hvap : float + Heat of vaporization of the fluid [J/kg] + + Returns + ------- + Bg : float + Boiling number [-] + + Notes + ----- + Most often uses the symbol `Bo` instead of `Bg`, but this conflicts with + Bond number. + + .. math:: + \text{Bg} = \frac{\text{mass liquid evaporated / area heat transfer + surface}}{\text{mass flow rate fluid / flow cross sectional area}} + + First defined in [4]_, though not named. + + Examples + -------- + >>> Boiling(300, 3000, 800000) + 1.25e-05 + + References + ---------- + .. [1] Winterton, Richard H.S. BOILING NUMBER. Thermopedia. Hemisphere, + 2011. 10.1615/AtoZ.b.boiling_number + .. [2] Collier, John G., and John R. Thome. Convective Boiling and + Condensation. 3rd edition. Clarendon Press, 1996. + .. [3] Stephan, Karl. Heat Transfer in Condensation and Boiling. Translated + by C. V. Green.. 1992 edition. Berlin; New York: Springer, 2013. + .. [4] W. F. Davidson, P. H. Hardie, C. G. R. Humphreys, A. A. Markson, + A. R. Mumford and T. Ravese "Studies of heat transmission through boiler + tubing at pressures from 500 to 3300 pounds" Trans. ASME, Vol. 65, 9, + February 1943, pp. 553-591. + ''' + return q/(G*Hvap) + + def relative_roughness(D, roughness=1.52e-06): r'''Calculates relative roughness `eD` using a diameter and the roughness of the material of the wall. Default roughness is that of steel. diff --git a/fluids/friction.py b/fluids/friction.py index d90322a9..121d8c70 100644 --- a/fluids/friction.py +++ b/fluids/friction.py @@ -29,7 +29,7 @@ def Colebrook(Re, eD): r'''Calculates Darcy friction factor using an exact solution to the - Colebrook equation, derived with a CAS system. Relatively slow despite its + Colebrook equation, derived with a CAS. Relatively slow despite its explicit form. .. math:: diff --git a/fluids/piping.py b/fluids/piping.py index 2a0a76cb..2845f392 100644 --- a/fluids/piping.py +++ b/fluids/piping.py @@ -152,11 +152,11 @@ def nearest_pipe(Do=None, Di=None, NPS=None, schedule='40'): ------- NPS : float Nominal pipe size, [] - _di : float + Di : float Pipe inner diameter, [m] - _do : float + Do : float Pipe outer diameter, [m] - _t : float + t : float Pipe wall thickness, [m] Notes diff --git a/setup.py b/setup.py index 0107c6c5..0e7849e6 100644 --- a/setup.py +++ b/setup.py @@ -51,8 +51,8 @@ name = 'fluids', packages = ['fluids'], license='GPL3', - version = '0.1.48', - download_url = 'https://github.com/CalebBell/fluids/tarball/0.1.48', + version = '0.1.49', + download_url = 'https://github.com/CalebBell/fluids/tarball/0.1.49', description = 'Fluid dynamics component of Chemical Engineering Design Library (ChEDL)', long_description=open('README.rst').read(), extras_require = { diff --git a/tests/test_core.py b/tests/test_core.py index 78feb0fe..5f244e94 100644 --- a/tests/test_core.py +++ b/tests/test_core.py @@ -155,6 +155,9 @@ def test_core_dimensionless(): Bep1 = Bejan_p(1E4, 1, 1E-3, 1E-6) assert_allclose(Bep1, 10000000000000) + + Bo = Boiling(300, 3000, 800000) + assert_allclose(Bo, 1.25e-05) e_D1 = relative_roughness(0.0254) e_D2 = relative_roughness(0.5, 1E-4)