Boiling Flow
Overview
Flow boiling describes heat transfer in internal passages where liquid and vapor coexist, typically under forced convection and strong phase-change effects. In design practice, flow boiling models are used to estimate wall heat transfer coefficients, assess operating envelopes, and avoid dryout or unstable thermal behavior. Because boiling coefficients can vary by orders of magnitude across quality, mass flux, and channel size, correlation-based screening is a core part of thermal engineering workflows for evaporators, boilers, and electronics cooling loops.
Core Concepts: The category combines nucleate boiling, convective boiling, and two-phase scaling into practical prediction tools. Many models use a composite structure where a nucleate contribution and a liquid-convective contribution are blended through suppression/enhancement factors, while others are tuned for mini/microchannels using dimensionless groups such as Reynolds, Boiling, and Weber numbers. A useful framing is to separate direct coefficient prediction from support calculations: h_{tp} = f(\text{quality},\; \text{mass flux},\; \text{properties},\; q\;\text{or}\;\Delta T_e), \qquad ext{auxiliary terms} = g(x, \rho, \mu, f_D, \ldots). This helps practitioners choose whether they need a primary heat-transfer estimate, a two-phase intermediate parameter, or a helper equation for an implicit solve.
Implementation: These functions are implemented from the ht library, specifically ht.boiling_flow. The ht package aggregates literature correlations for process and thermal engineering with consistent units and callable APIs, making it well suited for calculator-style evaluation, early-stage sizing, and sensitivity studies.
Composite convective+nucleate formulations include CHEN_BENNETT, CHEN_EDELSTEIN, and LIU_WINTERTON. These methods are commonly selected for saturated tube-flow cases where both forced convection and bubble-driven transfer are important, and where input data is rich enough to evaluate fluid properties, quality, and operating state. CHEN_BENNETT and CHEN_EDELSTEIN follow the classic additive framework with empirical suppression/enhancement factors, while LIU_WINTERTON uses a combined form that balances convective and nucleate terms differently. In practice, engineers often compare these three to bracket expected performance before detailed experimental calibration.
Nucleate and channel-focused empirical correlations are provided by COOPER, FORSTER_ZUBER, LAZAREK_BLACK, LI_WU, SUN_MISHIMA, and YUN_HEO_KIM. COOPER and FORSTER_ZUBER are foundational nucleate-boiling relations and frequently appear as components inside broader flow-boiling models, while LAZAREK_BLACK, LI_WU, SUN_MISHIMA, and YUN_HEO_KIM target mini/microchannel behavior with stronger dependence on compact-geometry scaling. These are useful for refrigerant circuits, compact evaporators, and high heat-flux thermal management where channel size and phase distribution strongly influence h_{tp}. Together, they provide a practical range from classical pool/flow nucleate behavior to modern microscale evaporation fitting.
Two-phase auxiliary and mechanistic tools include LOCKHART_XTT, THOME, TO_SOLVE_Q_THOME, TURBULENT_DITTUS, and TURBULENT_GNIEL. LOCKHART_XTT supplies the Lockhart–Martinelli parameter used as an intermediate variable in many two-phase closure relations, while TURBULENT_DITTUS and TURBULENT_GNIEL provide single-phase turbulent convection baselines often embedded within boiling frameworks. THOME offers a more detailed slug/film microchannel model for direct coefficient prediction, and TO_SOLVE_Q_THOME supports the implicit residual calculation needed when solving for heat flux from a specified wall superheat. This combination supports both quick empirical screening and deeper iterative modeling in the same workflow.
CHEN_BENNETT
This function estimates the two-phase flow boiling heat transfer coefficient using the Chen-Bennett correlation for saturated flow in tubes. It combines a convective contribution with a nucleate-boiling contribution through suppression and enhancement factors.
The combined form is:
h_{tp} = S h_{nb} + F h_{sp,l}
where h_{sp,l} is commonly modeled with a Dittus-Boelter style relation and h_{nb} with a Forster-Zuber style relation. The approach is widely used for engineering estimation of boiling heat transfer in internal flows.
Excel Usage
=CHEN_BENNETT(m, x, D, rhol, rhog, mul, mug, kl, Cpl, Hvap, sigma, dPsat, Te)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (dimensionless).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).mul(float, required): Liquid viscosity (Pa*s).mug(float, required): Gas viscosity (Pa*s).kl(float, required): Liquid thermal conductivity (W/m/K).Cpl(float, required): Liquid heat capacity (J/kg/K).Hvap(float, required): Heat of vaporization (J/kg).sigma(float, required): Surface tension (N/m).dPsat(float, required): Saturation pressure difference (Pa).Te(float, required): Excess wall temperature (K).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example from reference
Inputs:
| m | x | D | rhol | rhog | mul | mug | kl | Cpl | Hvap | sigma | dPsat | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.106 | 0.2 | 0.0212 | 567 | 18.09 | 0.000156 | 0.00000711 | 0.086 | 2730 | 200000 | 0.02 | 100000 | 3 |
Excel formula:
=CHEN_BENNETT(0.106, 0.2, 0.0212, 567, 18.09, 0.000156, 0.00000711, 0.086, 2730, 200000, 0.02, 100000, 3)
Expected output:
4938.28
Example 2: Higher quality with larger diameter
Inputs:
| m | x | D | rhol | rhog | mul | mug | kl | Cpl | Hvap | sigma | dPsat | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.2 | 0.4 | 0.03 | 900 | 15 | 0.0002 | 0.00001 | 0.12 | 3200 | 180000 | 0.025 | 80000 | 5 |
Excel formula:
=CHEN_BENNETT(0.2, 0.4, 0.03, 900, 15, 0.0002, 0.00001, 0.12, 3200, 180000, 0.025, 80000, 5)
Expected output:
7946.77
Example 3: Low quality at small diameter
Inputs:
| m | x | D | rhol | rhog | mul | mug | kl | Cpl | Hvap | sigma | dPsat | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.05 | 0.1 | 0.015 | 950 | 8 | 0.0003 | 0.000012 | 0.14 | 3500 | 220000 | 0.03 | 60000 | 2 |
Excel formula:
=CHEN_BENNETT(0.05, 0.1, 0.015, 950, 8, 0.0003, 0.000012, 0.14, 3500, 220000, 0.03, 60000, 2)
Expected output:
7020.18
Example 4: Mid-range inputs
Inputs:
| m | x | D | rhol | rhog | mul | mug | kl | Cpl | Hvap | sigma | dPsat | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.12 | 0.3 | 0.025 | 700 | 12 | 0.00018 | 0.000008 | 0.1 | 2600 | 190000 | 0.018 | 90000 | 4 |
Excel formula:
=CHEN_BENNETT(0.12, 0.3, 0.025, 700, 12, 0.00018, 0.000008, 0.1, 2600, 190000, 0.018, 90000, 4)
Expected output:
5751.45
Python Code
Show Code
from ht.boiling_flow import Chen_Bennett as ht_Chen_Bennett
def Chen_Bennett(m, x, D, rhol, rhog, mul, mug, kl, Cpl, Hvap, sigma, dPsat, Te):
"""
Compute the Chen-Bennett boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
m (float): Mass flow rate (kg/s).
x (float): Quality at the tube interval (dimensionless).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
mul (float): Liquid viscosity (Pa*s).
mug (float): Gas viscosity (Pa*s).
kl (float): Liquid thermal conductivity (W/m/K).
Cpl (float): Liquid heat capacity (J/kg/K).
Hvap (float): Heat of vaporization (J/kg).
sigma (float): Surface tension (N/m).
dPsat (float): Saturation pressure difference (Pa).
Te (float): Excess wall temperature (K).
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
return ht_Chen_Bennett(m=m, x=x, D=D, rhol=rhol, rhog=rhog, mul=mul, mug=mug,
kl=kl, Cpl=Cpl, Hvap=Hvap, sigma=sigma, dPsat=dPsat, Te=Te)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
CHEN_EDELSTEIN
This function estimates the two-phase flow boiling heat transfer coefficient using the Chen-Edelstein correlation for saturated tube flow. It blends nucleate-boiling and convective mechanisms using empirical enhancement and suppression factors.
The model structure is:
h_{tp} = S h_{nb} + F h_{sp,l}
where the single-phase liquid term and nucleate-boiling term are combined to represent mixed boiling behavior across a range of flow conditions.
Excel Usage
=CHEN_EDELSTEIN(m, x, D, rhol, rhog, mul, mug, kl, Cpl, Hvap, sigma, dPsat, Te)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (dimensionless).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).mul(float, required): Liquid viscosity (Pa*s).mug(float, required): Gas viscosity (Pa*s).kl(float, required): Liquid thermal conductivity (W/m/K).Cpl(float, required): Liquid heat capacity (J/kg/K).Hvap(float, required): Heat of vaporization (J/kg).sigma(float, required): Surface tension (N/m).dPsat(float, required): Saturation pressure difference (Pa).Te(float, required): Excess wall temperature (K).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example from reference
Inputs:
| m | x | D | rhol | rhog | mul | mug | kl | Cpl | Hvap | sigma | dPsat | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.106 | 0.2 | 0.0212 | 567 | 18.09 | 0.000156 | 0.00000711 | 0.086 | 2730 | 200000 | 0.02 | 100000 | 3 |
Excel formula:
=CHEN_EDELSTEIN(0.106, 0.2, 0.0212, 567, 18.09, 0.000156, 0.00000711, 0.086, 2730, 200000, 0.02, 100000, 3)
Expected output:
3289.06
Example 2: Higher quality with larger diameter
Inputs:
| m | x | D | rhol | rhog | mul | mug | kl | Cpl | Hvap | sigma | dPsat | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.18 | 0.45 | 0.03 | 820 | 12 | 0.00021 | 0.000011 | 0.11 | 3000 | 210000 | 0.022 | 90000 | 6 |
Excel formula:
=CHEN_EDELSTEIN(0.18, 0.45, 0.03, 820, 12, 0.00021, 0.000011, 0.11, 3000, 210000, 0.022, 90000, 6)
Expected output:
4517.15
Example 3: Low quality at small diameter
Inputs:
| m | x | D | rhol | rhog | mul | mug | kl | Cpl | Hvap | sigma | dPsat | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.08 | 0.15 | 0.018 | 930 | 7.5 | 0.00025 | 0.000013 | 0.13 | 3400 | 230000 | 0.028 | 70000 | 2.5 |
Excel formula:
=CHEN_EDELSTEIN(0.08, 0.15, 0.018, 930, 7.5, 0.00025, 0.000013, 0.13, 3400, 230000, 0.028, 70000, 2.5)
Expected output:
5167.53
Example 4: Mid-range inputs
Inputs:
| m | x | D | rhol | rhog | mul | mug | kl | Cpl | Hvap | sigma | dPsat | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.12 | 0.3 | 0.024 | 740 | 10 | 0.00019 | 0.000009 | 0.095 | 2600 | 195000 | 0.019 | 85000 | 4.5 |
Excel formula:
=CHEN_EDELSTEIN(0.12, 0.3, 0.024, 740, 10, 0.00019, 0.000009, 0.095, 2600, 195000, 0.019, 85000, 4.5)
Expected output:
3944.98
Python Code
Show Code
from ht.boiling_flow import Chen_Edelstein as ht_Chen_Edelstein
def Chen_Edelstein(m, x, D, rhol, rhog, mul, mug, kl, Cpl, Hvap, sigma, dPsat, Te):
"""
Compute the Chen-Edelstein boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
m (float): Mass flow rate (kg/s).
x (float): Quality at the tube interval (dimensionless).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
mul (float): Liquid viscosity (Pa*s).
mug (float): Gas viscosity (Pa*s).
kl (float): Liquid thermal conductivity (W/m/K).
Cpl (float): Liquid heat capacity (J/kg/K).
Hvap (float): Heat of vaporization (J/kg).
sigma (float): Surface tension (N/m).
dPsat (float): Saturation pressure difference (Pa).
Te (float): Excess wall temperature (K).
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
return ht_Chen_Edelstein(m=m, x=x, D=D, rhol=rhol, rhog=rhog, mul=mul, mug=mug,
kl=kl, Cpl=Cpl, Hvap=Hvap, sigma=sigma, dPsat=dPsat, Te=Te)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
COOPER
This function computes a nucleate pool-boiling heat transfer coefficient using the Cooper correlation. The method requires either excess wall temperature or heat flux and incorporates reduced pressure, molecular weight, and a roughness term.
In common form, the relation scales as:
h \propto q^{0.67}\left(\frac{P}{P_c}\right)^{a}\left[-\log_{10}\left(\frac{P}{P_c}\right)\right]^{-0.55}MW^{-0.5}
where the exponent a depends on the roughness parameter. This is a standard empirical approach for nucleate boiling estimation.
Excel Usage
=COOPER(P, Pc, MW, Te, q, Rp)
P(float, required): Saturation pressure (Pa).Pc(float, required): Critical pressure (Pa).MW(float, required): Molecular weight (g/mol).Te(float, optional, default: null): Excess wall temperature (K).q(float, optional, default: null): Heat flux (W/m^2).Rp(float, optional, default: 0.000001): Surface roughness parameter (m).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example with excess temperature
Inputs:
| P | Pc | MW | Te |
|---|---|---|---|
| 101325 | 22048321 | 18.02 | 4.3 |
Excel formula:
=COOPER(101325, 22048321, 18.02, 4.3)
Expected output:
1558.14
Example 2: Using heat flux input
Inputs:
| P | Pc | MW | q |
|---|---|---|---|
| 101325 | 22048321 | 18.02 | 100000 |
Excel formula:
=COOPER(101325, 22048321, 18.02, 100000)
Expected output:
9530.96
Example 3: Rough surface with higher pressure
Inputs:
| P | Pc | MW | Te | Rp |
|---|---|---|---|---|
| 500000 | 4000000 | 44 | 10 | 0.000002 |
Excel formula:
=COOPER(500000, 4000000, 44, 10, 0.000002)
Expected output:
52990.3
Example 4: Alternate fluid with heat flux
Inputs:
| P | Pc | MW | q | Rp |
|---|---|---|---|---|
| 200000 | 5000000 | 30 | 50000 | 0.000005 |
Excel formula:
=COOPER(200000, 5000000, 30, 50000, 0.000005)
Expected output:
12524.6
Python Code
Show Code
from ht.boiling_flow import Cooper as ht_Cooper
def Cooper(P, Pc, MW, Te=None, q=None, Rp=1e-06):
"""
Compute the Cooper nucleate boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
P (float): Saturation pressure (Pa).
Pc (float): Critical pressure (Pa).
MW (float): Molecular weight (g/mol).
Te (float, optional): Excess wall temperature (K). Default is None.
q (float, optional): Heat flux (W/m^2). Default is None.
Rp (float, optional): Surface roughness parameter (m). Default is 1e-06.
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
if Te is None and q is None:
return "Error: Te or q must be provided"
return ht_Cooper(P=P, Pc=Pc, MW=MW, Te=Te, q=q, Rp=Rp)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
FORSTER_ZUBER
This function calculates nucleate boiling heat transfer using the Forster-Zuber correlation. It supports either excess wall temperature or heat flux as the driving input and uses thermophysical properties of the liquid-vapor system.
A representative expression is:
h \propto \left(\frac{k_l^{0.79} c_{p,l}^{0.45} \rho_l^{0.49}}{\sigma^{0.5} \mu_l^{0.29} H_{vap}^{0.24} \rho_g^{0.24}}\right) \Delta T_e^{0.24} \Delta P_{sat}^{0.75}
The correlation is frequently used as a nucleate-boiling component in broader flow-boiling models.
Excel Usage
=FORSTER_ZUBER(rhol, rhog, mul, kl, Cpl, Hvap, sigma, dPsat, Te, q)
rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).mul(float, required): Liquid viscosity (Pa*s).kl(float, required): Liquid thermal conductivity (W/m/K).Cpl(float, required): Liquid heat capacity (J/kg/K).Hvap(float, required): Heat of vaporization (J/kg).sigma(float, required): Surface tension (N/m).dPsat(float, required): Saturation pressure difference (Pa).Te(float, optional, default: null): Excess wall temperature (K).q(float, optional, default: null): Heat flux (W/m^2).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example with excess temperature
Inputs:
| Te | dPsat | Cpl | kl | mul | sigma | Hvap | rhol | rhog |
|---|---|---|---|---|---|---|---|---|
| 4.3 | 16885.8 | 4180 | 0.688 | 0.000275 | 0.0588 | 2250000 | 958 | 0.597 |
Excel formula:
=FORSTER_ZUBER(4.3, 16885.8, 4180, 0.688, 0.000275, 0.0588, 2250000, 958, 0.597)
Expected output:
3534.06
Example 2: Using heat flux input
Inputs:
| q | dPsat | Cpl | kl | mul | sigma | Hvap | rhol | rhog |
|---|---|---|---|---|---|---|---|---|
| 120000 | 15000 | 3500 | 0.12 | 0.0003 | 0.025 | 200000 | 900 | 10 |
Excel formula:
=FORSTER_ZUBER(120000, 15000, 3500, 0.12, 0.0003, 0.025, 200000, 900, 10)
Expected output:
1890
Example 3: Alternate fluid properties with Te
Inputs:
| Te | dPsat | Cpl | kl | mul | sigma | Hvap | rhol | rhog |
|---|---|---|---|---|---|---|---|---|
| 6 | 20000 | 3000 | 0.1 | 0.00022 | 0.02 | 180000 | 850 | 12 |
Excel formula:
=FORSTER_ZUBER(6, 20000, 3000, 0.1, 0.00022, 0.02, 180000, 850, 12)
Expected output:
1255.8
Example 4: Higher heat flux case
Inputs:
| q | dPsat | Cpl | kl | mul | sigma | Hvap | rhol | rhog |
|---|---|---|---|---|---|---|---|---|
| 200000 | 25000 | 3800 | 0.15 | 0.00028 | 0.03 | 210000 | 920 | 8 |
Excel formula:
=FORSTER_ZUBER(200000, 25000, 3800, 0.15, 0.00028, 0.03, 210000, 920, 8)
Expected output:
3325
Python Code
Show Code
from ht.boiling_flow import Forster_Zuber as ht_Forster_Zuber
def Forster_Zuber(rhol, rhog, mul, kl, Cpl, Hvap, sigma, dPsat, Te=None, q=None):
"""
Compute the Forster-Zuber nucleate boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
mul (float): Liquid viscosity (Pa*s).
kl (float): Liquid thermal conductivity (W/m/K).
Cpl (float): Liquid heat capacity (J/kg/K).
Hvap (float): Heat of vaporization (J/kg).
sigma (float): Surface tension (N/m).
dPsat (float): Saturation pressure difference (Pa).
Te (float, optional): Excess wall temperature (K). Default is None.
q (float, optional): Heat flux (W/m^2). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
if Te is None and q is None:
return "Error: Te or q must be provided"
return ht_Forster_Zuber(rhol=rhol, rhog=rhog, mul=mul, kl=kl, Cpl=Cpl,
Hvap=Hvap, sigma=sigma, dPsat=dPsat, Te=Te, q=q)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
LAZAREK_BLACK
This function estimates flow-boiling heat transfer with the Lazarek-Black correlation for small channels. The method is commonly applied when either wall heat flux or excess wall temperature is known.
The correlation is commonly written as:
h_{tp} = 30\,Re_{lo}^{0.857} Bg^{0.714}\frac{k_l}{D}
where Re_{lo} is a liquid-only Reynolds number and Bg is a boiling group containing heat flux and latent heat effects.
Excel Usage
=LAZAREK_BLACK(m, D, mul, kl, Hvap, q, Te)
m(float, required): Mass flow rate (kg/s).D(float, required): Channel diameter (m).mul(float, required): Liquid viscosity (Pa*s).kl(float, required): Liquid thermal conductivity (W/m/K).Hvap(float, required): Heat of vaporization (J/kg).q(float, optional, default: null): Heat flux (W/m^2).Te(float, optional, default: null): Excess wall temperature (K).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example with excess temperature
Inputs:
| m | D | mul | kl | Hvap | Te |
|---|---|---|---|---|---|
| 10 | 0.3 | 0.001 | 0.6 | 2000000 | 100 |
Excel formula:
=LAZAREK_BLACK(10, 0.3, 0.001, 0.6, 2000000, 100)
Expected output:
9501.93
Example 2: Using heat flux input
Inputs:
| m | D | mul | kl | Hvap | q |
|---|---|---|---|---|---|
| 5 | 0.02 | 0.0002 | 0.12 | 180000 | 80000 |
Excel formula:
=LAZAREK_BLACK(5, 0.02, 0.0002, 0.12, 180000, 80000)
Expected output:
20829.3
Example 3: Small channel with low temperature rise
Inputs:
| m | D | mul | kl | Hvap | Te |
|---|---|---|---|---|---|
| 2 | 0.01 | 0.00015 | 0.1 | 200000 | 8 |
Excel formula:
=LAZAREK_BLACK(2, 0.01, 0.00015, 0.1, 200000, 8)
Expected output:
223929
Example 4: Higher heat flux at larger diameter
Inputs:
| m | D | mul | kl | Hvap | q |
|---|---|---|---|---|---|
| 8 | 0.04 | 0.00025 | 0.15 | 220000 | 120000 |
Excel formula:
=LAZAREK_BLACK(8, 0.04, 0.00025, 0.15, 220000, 120000)
Expected output:
19773.5
Python Code
Show Code
from ht.boiling_flow import Lazarek_Black as ht_Lazarek_Black
def Lazarek_Black(m, D, mul, kl, Hvap, q=None, Te=None):
"""
Compute the Lazarek-Black boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
m (float): Mass flow rate (kg/s).
D (float): Channel diameter (m).
mul (float): Liquid viscosity (Pa*s).
kl (float): Liquid thermal conductivity (W/m/K).
Hvap (float): Heat of vaporization (J/kg).
q (float, optional): Heat flux (W/m^2). Default is None.
Te (float, optional): Excess wall temperature (K). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
if Te is None and q is None:
return "Error: Te or q must be provided"
return ht_Lazarek_Black(m=m, D=D, mul=mul, kl=kl, Hvap=Hvap, q=q, Te=Te)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
LI_WU
This function estimates saturated flow-boiling heat transfer using the Li-Wu correlation, developed for mini and microchannel applications. It requires either heat flux or excess wall temperature.
A common representation is:
h_{tp} = 334\,Bg^{0.3}(Bo\,Re_l^{0.36})^{0.4}\frac{k_l}{D}
where Re_l is based on the liquid-phase flow, and Bg and Bo capture boiling intensity effects.
Excel Usage
=LI_WU(m, x, D, rhol, rhog, mul, kl, Hvap, sigma, q, Te)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (dimensionless).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).mul(float, required): Liquid viscosity (Pa*s).kl(float, required): Liquid thermal conductivity (W/m/K).Hvap(float, required): Heat of vaporization (J/kg).sigma(float, required): Surface tension (N/m).q(float, optional, default: null): Heat flux (W/m^2).Te(float, optional, default: null): Excess wall temperature (K).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example with heat flux
Inputs:
| m | x | D | rhol | rhog | kl | mul | sigma | Hvap | q |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.2 | 0.3 | 567 | 18.09 | 0.086 | 0.000156 | 0.02 | 900000 | 100000 |
Excel formula:
=LI_WU(1, 0.2, 0.3, 567, 18.09, 0.086, 0.000156, 0.02, 900000, 100000)
Expected output:
5345.41
Example 2: Using excess wall temperature
Inputs:
| m | x | D | rhol | rhog | kl | mul | sigma | Hvap | Te |
|---|---|---|---|---|---|---|---|---|---|
| 0.8 | 0.3 | 0.02 | 850 | 10 | 0.12 | 0.0002 | 0.025 | 180000 | 6 |
Excel formula:
=LI_WU(0.8, 0.3, 0.02, 850, 10, 0.12, 0.0002, 0.025, 180000, 6)
Expected output:
4267.15
Example 3: Small diameter with moderate quality
Inputs:
| m | x | D | rhol | rhog | kl | mul | sigma | Hvap | q |
|---|---|---|---|---|---|---|---|---|---|
| 0.5 | 0.4 | 0.01 | 900 | 12 | 0.1 | 0.00018 | 0.03 | 200000 | 60000 |
Excel formula:
=LI_WU(0.5, 0.4, 0.01, 900, 12, 0.1, 0.00018, 0.03, 200000, 60000)
Expected output:
3783.53
Example 4: Mid-range properties with Te
Inputs:
| m | x | D | rhol | rhog | kl | mul | sigma | Hvap | Te |
|---|---|---|---|---|---|---|---|---|---|
| 1.2 | 0.25 | 0.05 | 700 | 15 | 0.09 | 0.00022 | 0.018 | 160000 | 5 |
Excel formula:
=LI_WU(1.2, 0.25, 0.05, 700, 15, 0.09, 0.00022, 0.018, 160000, 5)
Expected output:
3753.9
Python Code
Show Code
from ht.boiling_flow import Li_Wu as ht_Li_Wu
def Li_Wu(m, x, D, rhol, rhog, mul, kl, Hvap, sigma, q=None, Te=None):
"""
Compute the Li-Wu boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
m (float): Mass flow rate (kg/s).
x (float): Quality at the tube interval (dimensionless).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
mul (float): Liquid viscosity (Pa*s).
kl (float): Liquid thermal conductivity (W/m/K).
Hvap (float): Heat of vaporization (J/kg).
sigma (float): Surface tension (N/m).
q (float, optional): Heat flux (W/m^2). Default is None.
Te (float, optional): Excess wall temperature (K). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
if Te is None and q is None:
return "Error: Te or q must be provided"
return ht_Li_Wu(m=m, x=x, D=D, rhol=rhol, rhog=rhog, mul=mul, kl=kl,
Hvap=Hvap, sigma=sigma, q=q, Te=Te)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
LIU_WINTERTON
This function computes the Liu-Winterton flow-boiling heat transfer coefficient for saturated boiling in tubes. The method combines a convective liquid term and a nucleate-boiling term into a single composite prediction.
The combined form is:
h_{tp} = \sqrt{(F h_l)^2 + (S h_{nb})^2}
where F and S are empirical factors and h_{nb} is typically linked to Cooper-type nucleate boiling behavior.
Excel Usage
=LIU_WINTERTON(m, x, D, rhol, rhog, mul, kl, Cpl, MW, P, Pc, Te)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (dimensionless).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).mul(float, required): Liquid viscosity (Pa*s).kl(float, required): Liquid thermal conductivity (W/m/K).Cpl(float, required): Liquid heat capacity (J/kg/K).MW(float, required): Molecular weight (g/mol).P(float, required): Pressure (Pa).Pc(float, required): Critical pressure (Pa).Te(float, required): Excess wall temperature (K).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example from reference
Inputs:
| m | x | D | rhol | rhog | kl | mul | Cpl | P | Pc | MW | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.4 | 0.3 | 567 | 18.09 | 0.086 | 0.000156 | 2300 | 1000000 | 22000000 | 44.02 | 7 |
Excel formula:
=LIU_WINTERTON(1, 0.4, 0.3, 567, 18.09, 0.086, 0.000156, 2300, 1000000, 22000000, 44.02, 7)
Expected output:
4747.75
Example 2: Lower quality with higher pressure
Inputs:
| m | x | D | rhol | rhog | kl | mul | Cpl | P | Pc | MW | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.6 | 0.2 | 0.02 | 820 | 10 | 0.12 | 0.0002 | 3000 | 1500000 | 4000000 | 30 | 5 |
Excel formula:
=LIU_WINTERTON(0.6, 0.2, 0.02, 820, 10, 0.12, 0.0002, 3000, 1500000, 4000000, 30, 5)
Expected output:
60702.1
Example 3: Higher quality in small tube
Inputs:
| m | x | D | rhol | rhog | kl | mul | Cpl | P | Pc | MW | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.8 | 0.6 | 0.015 | 900 | 12 | 0.1 | 0.00018 | 2800 | 800000 | 3000000 | 18 | 6 |
Excel formula:
=LIU_WINTERTON(0.8, 0.6, 0.015, 900, 12, 0.1, 0.00018, 2800, 800000, 3000000, 18, 6)
Expected output:
107814
Example 4: Mid-range properties
Inputs:
| m | x | D | rhol | rhog | kl | mul | Cpl | P | Pc | MW | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1.2 | 0.35 | 0.05 | 700 | 15 | 0.09 | 0.00022 | 2600 | 1200000 | 6000000 | 40 | 8 |
Excel formula:
=LIU_WINTERTON(1.2, 0.35, 0.05, 700, 15, 0.09, 0.00022, 2600, 1200000, 6000000, 40, 8)
Expected output:
34338.6
Python Code
Show Code
from ht.boiling_flow import Liu_Winterton as ht_Liu_Winterton
def Liu_Winterton(m, x, D, rhol, rhog, mul, kl, Cpl, MW, P, Pc, Te):
"""
Compute the Liu-Winterton boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
m (float): Mass flow rate (kg/s).
x (float): Quality at the tube interval (dimensionless).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
mul (float): Liquid viscosity (Pa*s).
kl (float): Liquid thermal conductivity (W/m/K).
Cpl (float): Liquid heat capacity (J/kg/K).
MW (float): Molecular weight (g/mol).
P (float): Pressure (Pa).
Pc (float): Critical pressure (Pa).
Te (float): Excess wall temperature (K).
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
return ht_Liu_Winterton(m=m, x=x, D=D, rhol=rhol, rhog=rhog, mul=mul,
kl=kl, Cpl=Cpl, MW=MW, P=P, Pc=Pc, Te=Te)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
LOCKHART_XTT
This function calculates the Lockhart-Martinelli two-phase parameter X_{tt}, an empirical ratio used in flow-boiling and two-phase pressure-drop modeling. It supports default exponents or deriving selected exponents from an input n value.
The standard form is:
X_{tt} = \left(\frac{1-x}{x}\right)^{0.9}\left(\frac{\rho_g}{\rho_l}\right)^{0.5}\left(\frac{\mu_l}{\mu_g}\right)^{0.1}
This parameter is dimensionless and is often used as an intermediate term in two-phase correlations.
Excel Usage
=LOCKHART_XTT(x, rhol, rhog, mul, mug, pow_x, pow_rho, pow_mu, n)
x(float, required): Quality at the tube interval (dimensionless).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).mul(float, required): Liquid viscosity (Pa*s).mug(float, required): Gas viscosity (Pa*s).pow_x(float, optional, default: 0.9): Power for phase ratio (dimensionless).pow_rho(float, optional, default: 0.5): Power for density ratio (dimensionless).pow_mu(float, optional, default: 0.1): Power for viscosity ratio (dimensionless).n(float, optional, default: null): Exponent parameter to derive powers (dimensionless).
Returns (float): Lockhart-Martinelli parameter (dimensionless), or an error message if invalid.
Example 1: Example with default powers
Inputs:
| x | rhol | rhog | mul | mug |
|---|---|---|---|---|
| 0.4 | 800 | 2.5 | 0.001 | 0.00001 |
Excel formula:
=LOCKHART_XTT(0.4, 800, 2.5, 0.001, 0.00001)
Expected output:
0.127617
Example 2: Using n to derive powers
Inputs:
| x | rhol | rhog | mul | mug | n |
|---|---|---|---|---|---|
| 0.3 | 900 | 8 | 0.0002 | 0.00002 | 0.2 |
Excel formula:
=LOCKHART_XTT(0.3, 900, 8, 0.0002, 0.00002, 0.2)
Expected output:
0.25445
Example 3: Custom power values
Inputs:
| x | rhol | rhog | mul | mug | pow_x | pow_rho | pow_mu |
|---|---|---|---|---|---|---|---|
| 0.6 | 700 | 20 | 0.0003 | 0.000015 | 0.8 | 0.6 | 0.2 |
Excel formula:
=LOCKHART_XTT(0.6, 700, 20, 0.0003, 0.000015, 0.8, 0.6, 0.2)
Expected output:
0.155917
Example 4: Higher quality with default powers
Inputs:
| x | rhol | rhog | mul | mug |
|---|---|---|---|---|
| 0.7 | 950 | 12 | 0.00025 | 0.00002 |
Excel formula:
=LOCKHART_XTT(0.7, 950, 12, 0.00025, 0.00002)
Expected output:
0.0674902
Python Code
Show Code
from ht.boiling_flow import Lockhart_Martinelli_Xtt as ht_Lockhart_Martinelli_Xtt
def Lockhart_Xtt(x, rhol, rhog, mul, mug, pow_x=0.9, pow_rho=0.5, pow_mu=0.1, n=None):
"""
Compute the Lockhart-Martinelli Xtt two-phase flow parameter.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
x (float): Quality at the tube interval (dimensionless).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
mul (float): Liquid viscosity (Pa*s).
mug (float): Gas viscosity (Pa*s).
pow_x (float, optional): Power for phase ratio (dimensionless). Default is 0.9.
pow_rho (float, optional): Power for density ratio (dimensionless). Default is 0.5.
pow_mu (float, optional): Power for viscosity ratio (dimensionless). Default is 0.1.
n (float, optional): Exponent parameter to derive powers (dimensionless). Default is None.
Returns:
float: Lockhart-Martinelli parameter (dimensionless), or an error message if invalid.
"""
try:
return ht_Lockhart_Martinelli_Xtt(x=x, rhol=rhol, rhog=rhog, mul=mul, mug=mug,
pow_x=pow_x, pow_rho=pow_rho, pow_mu=pow_mu, n=n)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
SUN_MISHIMA
This function estimates saturated flow-boiling heat transfer using the Sun-Mishima correlation, which is often applied to mini-channel conditions. The model requires either heat flux or excess wall temperature.
A representative relation is:
h_{tp} = \frac{6\,Re_{lo}^{1.05}Bg^{0.54}}{We_l^{0.191}(\rho_l/\rho_g)^{0.142}}\frac{k_l}{D}
It combines liquid-only Reynolds effects with boiling and Weber-number scaling for empirical prediction.
Excel Usage
=SUN_MISHIMA(m, D, rhol, rhog, mul, kl, Hvap, sigma, q, Te)
m(float, required): Mass flow rate (kg/s).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).mul(float, required): Liquid viscosity (Pa*s).kl(float, required): Liquid thermal conductivity (W/m/K).Hvap(float, required): Heat of vaporization (J/kg).sigma(float, required): Surface tension (N/m).q(float, optional, default: null): Heat flux (W/m^2).Te(float, optional, default: null): Excess wall temperature (K).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example with excess temperature
Inputs:
| m | D | rhol | rhog | kl | mul | sigma | Hvap | Te |
|---|---|---|---|---|---|---|---|---|
| 1 | 0.3 | 567 | 18.09 | 0.086 | 0.000156 | 0.02 | 900000 | 10 |
Excel formula:
=SUN_MISHIMA(1, 0.3, 567, 18.09, 0.086, 0.000156, 0.02, 900000, 10)
Expected output:
507.671
Example 2: Using heat flux input
Inputs:
| m | D | rhol | rhog | kl | mul | sigma | Hvap | q |
|---|---|---|---|---|---|---|---|---|
| 0.8 | 0.02 | 900 | 12 | 0.12 | 0.0002 | 0.025 | 180000 | 70000 |
Excel formula:
=SUN_MISHIMA(0.8, 0.02, 900, 12, 0.12, 0.0002, 0.025, 180000, 70000)
Expected output:
15391.5
Example 3: Small diameter with higher heat flux
Inputs:
| m | D | rhol | rhog | kl | mul | sigma | Hvap | q |
|---|---|---|---|---|---|---|---|---|
| 0.6 | 0.01 | 850 | 9 | 0.11 | 0.00018 | 0.03 | 200000 | 90000 |
Excel formula:
=SUN_MISHIMA(0.6, 0.01, 850, 9, 0.11, 0.00018, 0.03, 200000, 90000)
Expected output:
21451
Example 4: Mid-range properties with Te
Inputs:
| m | D | rhol | rhog | kl | mul | sigma | Hvap | Te |
|---|---|---|---|---|---|---|---|---|
| 1.2 | 0.04 | 700 | 15 | 0.09 | 0.00022 | 0.018 | 160000 | 6 |
Excel formula:
=SUN_MISHIMA(1.2, 0.04, 700, 15, 0.09, 0.00022, 0.018, 160000, 6)
Expected output:
5898.6
Python Code
Show Code
from ht.boiling_flow import Sun_Mishima as ht_Sun_Mishima
def Sun_Mishima(m, D, rhol, rhog, mul, kl, Hvap, sigma, q=None, Te=None):
"""
Compute the Sun-Mishima boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
m (float): Mass flow rate (kg/s).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
mul (float): Liquid viscosity (Pa*s).
kl (float): Liquid thermal conductivity (W/m/K).
Hvap (float): Heat of vaporization (J/kg).
sigma (float): Surface tension (N/m).
q (float, optional): Heat flux (W/m^2). Default is None.
Te (float, optional): Excess wall temperature (K). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
if Te is None and q is None:
return "Error: Te or q must be provided"
return ht_Sun_Mishima(m=m, D=D, rhol=rhol, rhog=rhog, mul=mul, kl=kl,
Hvap=Hvap, sigma=sigma, q=q, Te=Te)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
THOME
This function computes flow-boiling heat transfer using the Thome microchannel model, a detailed slug/film-based approach for saturated evaporation in small channels. It accepts either heat flux directly or excess wall temperature for an implicit solution.
The model forms a weighted average of regime-specific contributions:
h(z) = \frac{t_l}{\tau}h_l(z) + \frac{t_{film}}{\tau}h_{film}(z) + \frac{t_{dry}}{\tau}h_g(z)
where time fractions and local film behavior are estimated from flow properties, boiling intensity, and fluid thermophysical data.
Excel Usage
=THOME(m, x, D, rhol, rhog, mul, mug, kl, kg, Cpl, Cpg, Hvap, sigma, Psat, Pc, q, Te)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (dimensionless).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).mul(float, required): Liquid viscosity (Pa*s).mug(float, required): Gas viscosity (Pa*s).kl(float, required): Liquid thermal conductivity (W/m/K).kg(float, required): Gas thermal conductivity (W/m/K).Cpl(float, required): Liquid heat capacity (J/kg/K).Cpg(float, required): Gas heat capacity (J/kg/K).Hvap(float, required): Heat of vaporization (J/kg).sigma(float, required): Surface tension (N/m).Psat(float, required): Saturation pressure (Pa).Pc(float, required): Critical pressure (Pa).q(float, optional, default: null): Heat flux (W/m^2).Te(float, optional, default: null): Excess wall temperature (K).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example with heat flux
Inputs:
| m | x | D | rhol | rhog | kl | kg | mul | mug | Cpl | Cpg | sigma | Hvap | Psat | Pc | q |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.4 | 0.3 | 567 | 18.09 | 0.086 | 0.2 | 0.000156 | 0.00001 | 2300 | 1400 | 0.02 | 900000 | 100000 | 22000000 | 100000 |
Excel formula:
=THOME(1, 0.4, 0.3, 567, 18.09, 0.086, 0.2, 0.000156, 0.00001, 2300, 1400, 0.02, 900000, 100000, 22000000, 100000)
Expected output:
1633.01
Example 2: Using excess wall temperature
Inputs:
| m | x | D | rhol | rhog | kl | kg | mul | mug | Cpl | Cpg | sigma | Hvap | Psat | Pc | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.8 | 0.3 | 0.02 | 850 | 12 | 0.12 | 0.18 | 0.0002 | 0.000012 | 3000 | 1500 | 0.025 | 180000 | 900000 | 4000000 | 6 |
Excel formula:
=THOME(0.8, 0.3, 0.02, 850, 12, 0.12, 0.18, 0.0002, 0.000012, 3000, 1500, 0.025, 180000, 900000, 4000000, 6)
Expected output:
96633.1
Example 3: Small diameter with higher heat flux
Inputs:
| m | x | D | rhol | rhog | kl | kg | mul | mug | Cpl | Cpg | sigma | Hvap | Psat | Pc | q |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.6 | 0.5 | 0.01 | 900 | 9 | 0.1 | 0.16 | 0.00018 | 0.000011 | 2800 | 1400 | 0.03 | 200000 | 800000 | 3000000 | 70000 |
Excel formula:
=THOME(0.6, 0.5, 0.01, 900, 9, 0.1, 0.16, 0.00018, 0.000011, 2800, 1400, 0.03, 200000, 800000, 3000000, 70000)
Expected output:
20435
Example 4: Mid-range properties with Te
Inputs:
| m | x | D | rhol | rhog | kl | kg | mul | mug | Cpl | Cpg | sigma | Hvap | Psat | Pc | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1.2 | 0.35 | 0.04 | 700 | 15 | 0.09 | 0.19 | 0.00022 | 0.000013 | 2600 | 1450 | 0.018 | 160000 | 1200000 | 6000000 | 7 |
Excel formula:
=THOME(1.2, 0.35, 0.04, 700, 15, 0.09, 0.19, 0.00022, 0.000013, 2600, 1450, 0.018, 160000, 1200000, 6000000, 7)
Expected output:
28555.1
Python Code
Show Code
from ht.boiling_flow import Thome as ht_Thome
def Thome(m, x, D, rhol, rhog, mul, mug, kl, kg, Cpl, Cpg, Hvap, sigma, Psat, Pc, q=None, Te=None):
"""
Compute the Thome microchannel boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
m (float): Mass flow rate (kg/s).
x (float): Quality at the tube interval (dimensionless).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
mul (float): Liquid viscosity (Pa*s).
mug (float): Gas viscosity (Pa*s).
kl (float): Liquid thermal conductivity (W/m/K).
kg (float): Gas thermal conductivity (W/m/K).
Cpl (float): Liquid heat capacity (J/kg/K).
Cpg (float): Gas heat capacity (J/kg/K).
Hvap (float): Heat of vaporization (J/kg).
sigma (float): Surface tension (N/m).
Psat (float): Saturation pressure (Pa).
Pc (float): Critical pressure (Pa).
q (float, optional): Heat flux (W/m^2). Default is None.
Te (float, optional): Excess wall temperature (K). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
if Te is None and q is None:
return "Error: Te or q must be provided"
return ht_Thome(m=m, x=x, D=D, rhol=rhol, rhog=rhog, mul=mul, mug=mug,
kl=kl, kg=kg, Cpl=Cpl, Cpg=Cpg, Hvap=Hvap, sigma=sigma, Psat=Psat,
Pc=Pc, q=q, Te=Te)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
TO_SOLVE_Q_THOME
This function evaluates the residual equation used to solve for heat flux in the Thome flow-boiling model when excess wall temperature is prescribed. It is primarily an internal numerical helper for implicit root-finding workflows.
Conceptually, it evaluates:
R(q) = T_{e,model}(q,\ldots) - T_{e,target}
A root at R(q)=0 indicates the heat flux that is consistent with the specified operating state and target excess wall temperature.
Excel Usage
=TO_SOLVE_Q_THOME(q, m, x, D, rhol, rhog, kl, kg, mul, mug, Cpl, Cpg, sigma, Hvap, Psat, Pc, Te)
q(float, required): Heat flux (W/m^2).m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (dimensionless).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).kl(float, required): Liquid thermal conductivity (W/m/K).kg(float, required): Gas thermal conductivity (W/m/K).mul(float, required): Liquid viscosity (Pa*s).mug(float, required): Gas viscosity (Pa*s).Cpl(float, required): Liquid heat capacity (J/kg/K).Cpg(float, required): Gas heat capacity (J/kg/K).sigma(float, required): Surface tension (N/m).Hvap(float, required): Heat of vaporization (J/kg).Psat(float, required): Saturation pressure (Pa).Pc(float, required): Critical pressure (Pa).Te(float, required): Excess wall temperature (K).
Returns (float): Heat flux residual value (W/m^2), or an error message if invalid.
Example 1: Baseline residual calculation
Inputs:
| q | m | x | D | rhol | rhog | kl | kg | mul | mug | Cpl | Cpg | sigma | Hvap | Psat | Pc | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 100000 | 1 | 0.4 | 0.3 | 567 | 18.09 | 0.086 | 0.2 | 0.000156 | 0.00001 | 2300 | 1400 | 0.02 | 900000 | 100000 | 22000000 | 7 |
Excel formula:
=TO_SOLVE_Q_THOME(100000, 1, 0.4, 0.3, 567, 18.09, 0.086, 0.2, 0.000156, 0.00001, 2300, 1400, 0.02, 900000, 100000, 22000000, 7)
Expected output:
54.2367
Example 2: Lower quality with smaller diameter
Inputs:
| q | m | x | D | rhol | rhog | kl | kg | mul | mug | Cpl | Cpg | sigma | Hvap | Psat | Pc | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 70000 | 0.8 | 0.25 | 0.02 | 850 | 12 | 0.12 | 0.18 | 0.0002 | 0.000012 | 3000 | 1500 | 0.025 | 180000 | 900000 | 4000000 | 6 |
Excel formula:
=TO_SOLVE_Q_THOME(70000, 0.8, 0.25, 0.02, 850, 12, 0.12, 0.18, 0.0002, 0.000012, 3000, 1500, 0.025, 180000, 900000, 4000000, 6)
Expected output:
-3.1047
Example 3: Higher quality with higher heat flux
Inputs:
| q | m | x | D | rhol | rhog | kl | kg | mul | mug | Cpl | Cpg | sigma | Hvap | Psat | Pc | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 120000 | 0.6 | 0.6 | 0.01 | 900 | 9 | 0.1 | 0.16 | 0.00018 | 0.000011 | 2800 | 1400 | 0.03 | 200000 | 800000 | 3000000 | 8 |
Excel formula:
=TO_SOLVE_Q_THOME(120000, 0.6, 0.6, 0.01, 900, 9, 0.1, 0.16, 0.00018, 0.000011, 2800, 1400, 0.03, 200000, 800000, 3000000, 8)
Expected output:
-3.31727
Example 4: Mid-range properties
Inputs:
| q | m | x | D | rhol | rhog | kl | kg | mul | mug | Cpl | Cpg | sigma | Hvap | Psat | Pc | Te |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 90000 | 1.2 | 0.35 | 0.04 | 700 | 15 | 0.09 | 0.19 | 0.00022 | 0.000013 | 2600 | 1450 | 0.018 | 160000 | 1200000 | 6000000 | 7 |
Excel formula:
=TO_SOLVE_Q_THOME(90000, 1.2, 0.35, 0.04, 700, 15, 0.09, 0.19, 0.00022, 0.000013, 2600, 1450, 0.018, 160000, 1200000, 6000000, 7)
Expected output:
-1.49611
Python Code
Show Code
from ht.boiling_flow import to_solve_q_Thome as ht_to_solve_q_Thome
def to_solve_q_Thome(q, m, x, D, rhol, rhog, kl, kg, mul, mug, Cpl, Cpg, sigma, Hvap, Psat, Pc, Te):
"""
Compute the Thome heat flux residual for a specified wall temperature.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
q (float): Heat flux (W/m^2).
m (float): Mass flow rate (kg/s).
x (float): Quality at the tube interval (dimensionless).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
kl (float): Liquid thermal conductivity (W/m/K).
kg (float): Gas thermal conductivity (W/m/K).
mul (float): Liquid viscosity (Pa*s).
mug (float): Gas viscosity (Pa*s).
Cpl (float): Liquid heat capacity (J/kg/K).
Cpg (float): Gas heat capacity (J/kg/K).
sigma (float): Surface tension (N/m).
Hvap (float): Heat of vaporization (J/kg).
Psat (float): Saturation pressure (Pa).
Pc (float): Critical pressure (Pa).
Te (float): Excess wall temperature (K).
Returns:
float: Heat flux residual value (W/m^2), or an error message if invalid.
"""
try:
return ht_to_solve_q_Thome(q=q, m=m, x=x, D=D, rhol=rhol, rhog=rhog, kl=kl,
kg=kg, mul=mul, mug=mug, Cpl=Cpl, Cpg=Cpg, sigma=sigma, Hvap=Hvap,
Psat=Psat, Pc=Pc, Te=Te)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
TURBULENT_DITTUS
This function calculates turbulent internal-flow Nusselt number using the Dittus-Boelter correlation. It supports heating or cooling mode and either revised or original coefficient conventions.
The relation has the form:
Nu = m\,Re^{0.8}Pr^n
where m and n depend on mode and coefficient convention. The result is a dimensionless convective heat-transfer indicator.
Excel Usage
=TURBULENT_DITTUS(Re, Pr, heating, revised)
Re(float, required): Reynolds number (dimensionless).Pr(float, required): Prandtl number (dimensionless).heating(bool, optional, default: true): Whether the process is heating.revised(bool, optional, default: true): Whether to use revised coefficients.
Returns (float): Nusselt number (dimensionless), or an error message if invalid.
Example 1: Example with heating
Inputs:
| Re | Pr |
|---|---|
| 100000 | 1.2 |
Excel formula:
=TURBULENT_DITTUS(100000, 1.2)
Expected output:
247.4
Example 2: Example with cooling
Inputs:
| Re | Pr | heating |
|---|---|---|
| 100000 | 1.2 | false |
Excel formula:
=TURBULENT_DITTUS(100000, 1.2, FALSE)
Expected output:
242.931
Example 3: Using unrevised coefficients
Inputs:
| Re | Pr | revised |
|---|---|---|
| 50000 | 0.8 | false |
Excel formula:
=TURBULENT_DITTUS(50000, 0.8, FALSE)
Expected output:
127.649
Example 4: Cooling with unrevised coefficients
Inputs:
| Re | Pr | heating | revised |
|---|---|---|---|
| 200000 | 1.5 | false | false |
Excel formula:
=TURBULENT_DITTUS(200000, 1.5, FALSE, FALSE)
Expected output:
521.071
Python Code
Show Code
from ht.boiling_flow import turbulent_Dittus_Boelter as ht_turbulent_Dittus_Boelter
def turbulent_Dittus(Re, Pr, heating=True, revised=True):
"""
Compute the Dittus-Boelter turbulent Nusselt number.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
Re (float): Reynolds number (dimensionless).
Pr (float): Prandtl number (dimensionless).
heating (bool, optional): Whether the process is heating. Default is True.
revised (bool, optional): Whether to use revised coefficients. Default is True.
Returns:
float: Nusselt number (dimensionless), or an error message if invalid.
"""
try:
return ht_turbulent_Dittus_Boelter(Re=Re, Pr=Pr, heating=heating, revised=revised)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
TURBULENT_GNIEL
This function computes turbulent internal-flow Nusselt number with the Gnielinski correlation, which links heat transfer to Reynolds number, Prandtl number, and Darcy friction factor.
The equation is:
Nu = \frac{(f/8)(Re-1000)Pr}{1+12.7(f/8)^{1/2}(Pr^{2/3}-1)}
This correlation is broadly used for turbulent pipe and channel convection over a wide operating range.
Excel Usage
=TURBULENT_GNIEL(Re, Pr, fd)
Re(float, required): Reynolds number (dimensionless).Pr(float, required): Prandtl number (dimensionless).fd(float, required): Darcy friction factor (dimensionless).
Returns (float): Nusselt number (dimensionless), or an error message if invalid.
Example 1: Example with standard inputs
Inputs:
| Re | Pr | fd |
|---|---|---|
| 100000 | 1.2 | 0.0185 |
Excel formula:
=TURBULENT_GNIEL(100000, 1.2, 0.0185)
Expected output:
254.627
Example 2: Higher Reynolds number
Inputs:
| Re | Pr | fd |
|---|---|---|
| 200000 | 1.5 | 0.02 |
Excel formula:
=TURBULENT_GNIEL(200000, 1.5, 0.02)
Expected output:
623.389
Example 3: Lower Reynolds number
Inputs:
| Re | Pr | fd |
|---|---|---|
| 50000 | 0.9 | 0.025 |
Excel formula:
=TURBULENT_GNIEL(50000, 0.9, 0.025)
Expected output:
144.785
Example 4: Higher Prandtl number
Inputs:
| Re | Pr | fd |
|---|---|---|
| 150000 | 5 | 0.017 |
Excel formula:
=TURBULENT_GNIEL(150000, 5, 0.017)
Expected output:
744.51
Python Code
Show Code
from ht.boiling_flow import turbulent_Gnielinski as ht_turbulent_Gnielinski
def turbulent_Gniel(Re, Pr, fd):
"""
Compute the Gnielinski turbulent Nusselt number.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
Re (float): Reynolds number (dimensionless).
Pr (float): Prandtl number (dimensionless).
fd (float): Darcy friction factor (dimensionless).
Returns:
float: Nusselt number (dimensionless), or an error message if invalid.
"""
try:
return ht_turbulent_Gnielinski(Re=Re, Pr=Pr, fd=fd)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
YUN_HEO_KIM
This function estimates saturated flow-boiling heat transfer with the Yun-Heo-Kim correlation, developed for microchannel evaporation. It accepts either heat flux or excess wall temperature as the driving input.
The correlation can be expressed as:
h_{tp} = 136876\,(Bg\,We_l)^{0.1993}Re_l^{-0.1626}
where Re_l and We_l are liquid-based dimensionless groups and Bg captures boiling intensity.
Excel Usage
=YUN_HEO_KIM(m, x, D, rhol, mul, Hvap, sigma, q, Te)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (dimensionless).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).mul(float, required): Liquid viscosity (Pa*s).Hvap(float, required): Heat of vaporization (J/kg).sigma(float, required): Surface tension (N/m).q(float, optional, default: null): Heat flux (W/m^2).Te(float, optional, default: null): Excess wall temperature (K).
Returns (float): Heat transfer coefficient (W/m^2/K), or an error message if invalid.
Example 1: Example with heat flux
Inputs:
| m | x | D | rhol | mul | sigma | Hvap | q |
|---|---|---|---|---|---|---|---|
| 1 | 0.4 | 0.3 | 567 | 0.000156 | 0.02 | 900000 | 10000 |
Excel formula:
=YUN_HEO_KIM(1, 0.4, 0.3, 567, 0.000156, 0.02, 900000, 10000)
Expected output:
9479.31
Example 2: Using excess wall temperature
Inputs:
| m | x | D | rhol | mul | sigma | Hvap | Te |
|---|---|---|---|---|---|---|---|
| 0.8 | 0.3 | 0.02 | 850 | 0.0002 | 0.025 | 180000 | 6 |
Excel formula:
=YUN_HEO_KIM(0.8, 0.3, 0.02, 850, 0.0002, 0.025, 180000, 6)
Expected output:
21308.7
Example 3: Small diameter with higher heat flux
Inputs:
| m | x | D | rhol | mul | sigma | Hvap | q |
|---|---|---|---|---|---|---|---|
| 0.6 | 0.5 | 0.01 | 900 | 0.00018 | 0.03 | 200000 | 15000 |
Excel formula:
=YUN_HEO_KIM(0.6, 0.5, 0.01, 900, 0.00018, 0.03, 200000, 15000)
Expected output:
13677.9
Example 4: Mid-range properties with Te
Inputs:
| m | x | D | rhol | mul | sigma | Hvap | Te |
|---|---|---|---|---|---|---|---|
| 1.2 | 0.35 | 0.04 | 700 | 0.00022 | 0.018 | 160000 | 7 |
Excel formula:
=YUN_HEO_KIM(1.2, 0.35, 0.04, 700, 0.00022, 0.018, 160000, 7)
Expected output:
26525.6
Python Code
Show Code
from ht.boiling_flow import Yun_Heo_Kim as ht_Yun_Heo_Kim
def Yun_Heo_Kim(m, x, D, rhol, mul, Hvap, sigma, q=None, Te=None):
"""
Compute the Yun-Heo-Kim boiling heat transfer coefficient.
See: https://ht.readthedocs.io/en/latest/ht.boiling_flow.html
This example function is provided as-is without any representation of accuracy.
Args:
m (float): Mass flow rate (kg/s).
x (float): Quality at the tube interval (dimensionless).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
mul (float): Liquid viscosity (Pa*s).
Hvap (float): Heat of vaporization (J/kg).
sigma (float): Surface tension (N/m).
q (float, optional): Heat flux (W/m^2). Default is None.
Te (float, optional): Excess wall temperature (K). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K), or an error message if invalid.
"""
try:
if Te is None and q is None:
return "Error: Te or q must be provided"
return ht_Yun_Heo_Kim(m=m, x=x, D=D, rhol=rhol, mul=mul, Hvap=Hvap,
sigma=sigma, q=q, Te=Te)
except Exception as e:
return f"Error: {str(e)}"Online Calculator