Conv Two Phase
Overview
Two-phase flow heat transfer describes convection when liquid and gas move together in the same conduit without phase change in the modeled section. In this regime, interfacial structure, void fraction, and slip between phases strongly affect the wall coefficient, so single-phase correlations are often unreliable. This category focuses on non-boiling, non-condensing two-phase convection in tubes, where empirical correlations map measurable operating conditions to practical design coefficients. These tools are widely used for exchanger rating, process line thermal checks, and sensitivity studies across flow patterns.
The shared framework is the Nusselt-number formulation with conversion to wall coefficient, h = \frac{Nu\,k_l}{D}, combined with mixture descriptors such as quality x, void fraction \alpha, superficial velocity ratios, and liquid/gas property ratios. Several methods include viscosity correction terms like (\mu_b/\mu_w)^{0.14}, while others scale a two-phase coefficient from a liquid-only baseline. Together, these ideas let engineers compare candidate correlations while preserving dimensional consistency and physical trend checks.
Implementation uses the Python ht library, specifically ht.conv_two_phase, which collects literature correlations and method-selection utilities for thermal engineering calculations. The module is designed for applied modeling: it exposes individual named correlations, a dispatcher, and a method-discovery helper so workflows can be both explicit and automatable.
The direct empirical correlations include AGGOUR, DAVIS_DAVID, ELAMVALUTHI_SRIN, and GROOTHUIS_HENDAL. These functions estimate two-phase tube-side convection directly from mass flow, quality, geometry, and liquid/gas properties, with optional wall-viscosity corrections in methods where they are supported. They are useful when users need faithful reproduction of classic published equations or want to benchmark multiple legacy formulations on the same duty case. In practice, this group is often the first pass for vertical and mixed-regime data screening.
The liquid-baseline scaling methods KNOTT and MARTIN_SIMS compute two-phase coefficients from a liquid-only reference h_l, either supplied directly or inferred from entry-length-style assumptions. LAMINAR_ENTRY_ST provides that supporting liquid-side entry correlation and is therefore a key building block in these workflows. This trio is valuable for scenarios where liquid-side behavior is better characterized than two-phase structure, enabling a controlled uplift from known single-phase behavior to mixed-flow estimates.
The gas-liquid interaction emphasis methods KUDIRKA_GROSH_MCF and RAVIPUDI_GODBOLD use forms that prominently weight superficial velocity and viscosity ratios, while HUGHMARK targets laminar slug-style behavior with explicit dependence on void fraction and length effects. These are practical when analysts want to probe sensitivity to regime indicators (e.g., froth/slug tendencies) rather than rely on a single generalized formula. Cross-checking these methods against the direct and liquid-baseline groups helps bound uncertainty in design margins.
For orchestration, H_TWO_PHASE_METHODS returns applicable method names for a given input set, and H_TWO_PHASE evaluates a selected correlation through a unified interface. This pairing supports programmatic method selection, reproducible comparison studies, and streamlined spreadsheet-to-Python migration. A common workflow is to query available methods, evaluate several candidates, and then document a final selection based on expected flow regime and validation history.
AGGOUR
Computes the two-phase convective heat transfer coefficient for liquid-gas flow in a tube using the Aggour correlation. The model supports laminar and turbulent behavior and can include viscosity correction effects when wall viscosity is supplied.
The correlation is represented in Nusselt-form and converted to heat transfer coefficient form:
h = \frac{Nu\,k_l}{D}
where Nu is computed from flow regime-dependent expressions using liquid properties, geometry, and two-phase flow descriptors.
Excel Usage
=AGGOUR(m, x, alpha, D, rhol, Cpl, kl, mu_b, mu_w, L, turbulent)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).alpha(float, required): Void fraction in the tube (-).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).Cpl(float, required): Liquid heat capacity at constant pressure (J/kg/K).kl(float, required): Liquid thermal conductivity (W/m/K).mu_b(float, required): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).L(float, optional, default: null): Tube length (m).turbulent(bool, optional, default: null): Force turbulent correlation selection (-).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Aggour example
Inputs:
| m | x | alpha | D | rhol | Cpl | kl | mu_b |
|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.9 | 0.3 | 1000 | 2300 | 0.6 | 0.001 |
Excel formula:
=AGGOUR(1, 0.9, 0.9, 0.3, 1000, 2300, 0.6, 0.001)
Expected output:
420.935
Example 2: Laminar with viscosity correction
Inputs:
| m | x | alpha | D | rhol | Cpl | kl | mu_b | mu_w | L |
|---|---|---|---|---|---|---|---|---|---|
| 0.2 | 0.1 | 0.2 | 0.02 | 998 | 4180 | 0.6 | 0.001 | 0.0012 | 2 |
Excel formula:
=AGGOUR(0.2, 0.1, 0.2, 0.02, 998, 4180, 0.6, 0.001, 0.0012, 2)
Expected output:
4158.46
Example 3: Forced turbulent regime
Inputs:
| m | x | alpha | D | rhol | Cpl | kl | mu_b | turbulent |
|---|---|---|---|---|---|---|---|---|
| 2 | 0.5 | 0.7 | 0.05 | 950 | 3900 | 0.55 | 0.0008 | true |
Excel formula:
=AGGOUR(2, 0.5, 0.7, 0.05, 950, 3900, 0.55, 0.0008, TRUE)
Expected output:
16366.8
Example 4: Longer tube length
Inputs:
| m | x | alpha | D | rhol | Cpl | kl | mu_b | L |
|---|---|---|---|---|---|---|---|---|
| 0.5 | 0.2 | 0.3 | 0.03 | 990 | 4100 | 0.58 | 0.0011 | 5 |
Excel formula:
=AGGOUR(0.5, 0.2, 0.3, 0.03, 990, 4100, 0.58, 0.0011, 5)
Expected output:
4524.48
Python Code
Show Code
from ht.conv_two_phase import Aggour as ht_Aggour
def Aggour(m, x, alpha, D, rhol, Cpl, kl, mu_b, mu_w=None, L=None, turbulent=None):
"""
Calculate two-phase heat transfer coefficient using the Aggour correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
alpha (float): Void fraction in the tube (-).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
Cpl (float): Liquid heat capacity at constant pressure (J/kg/K).
kl (float): Liquid thermal conductivity (W/m/K).
mu_b (float): Liquid viscosity at bulk conditions (Pa*s).
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
L (float, optional): Tube length (m). Default is None.
turbulent (bool, optional): Force turbulent correlation selection (-). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_Aggour(
m=m,
x=x,
alpha=alpha,
D=D,
rhol=rhol,
Cpl=Cpl,
kl=kl,
mu_b=mu_b,
mu_w=mu_w,
L=L,
turbulent=turbulent,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
DAVIS_DAVID
Computes the two-phase convective heat transfer coefficient inside a tube using the Davis-David correlation for liquid-gas mixtures. The method combines density ratio, mixture flow effects, and liquid thermal properties to estimate convection intensity.
The heat transfer coefficient follows the standard relation:
h = \frac{Nu\,k_l}{D}
with Nu evaluated from the Davis-David empirical expression based on mass flow, quality, and fluid properties.
Excel Usage
=DAVIS_DAVID(m, x, D, rhol, rhog, Cpl, kl, mul)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).Cpl(float, required): Liquid heat capacity at constant pressure (J/kg/K).kl(float, required): Liquid thermal conductivity (W/m/K).mul(float, required): Liquid viscosity (Pa*s).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Davis-David example
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mul |
|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 1000 | 2.5 | 2300 | 0.6 | 0.001 |
Excel formula:
=DAVIS_DAVID(1, 0.9, 0.3, 1000, 2.5, 2300, 0.6, 0.001)
Expected output:
1437.33
Example 2: Lower quality flow
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mul |
|---|---|---|---|---|---|---|---|
| 0.8 | 0.2 | 0.05 | 980 | 3 | 4100 | 0.58 | 0.0012 |
Excel formula:
=DAVIS_DAVID(0.8, 0.2, 0.05, 980, 3, 4100, 0.58, 0.0012)
Expected output:
9768.73
Example 3: Small diameter tube
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mul |
|---|---|---|---|---|---|---|---|
| 0.4 | 0.7 | 0.02 | 1005 | 1.8 | 3900 | 0.62 | 0.0009 |
Excel formula:
=DAVIS_DAVID(0.4, 0.7, 0.02, 1005, 1.8, 3900, 0.62, 0.0009)
Expected output:
119680
Example 4: Higher liquid viscosity
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mul |
|---|---|---|---|---|---|---|---|
| 1.2 | 0.6 | 0.08 | 900 | 2 | 3500 | 0.5 | 0.003 |
Excel formula:
=DAVIS_DAVID(1.2, 0.6, 0.08, 900, 2, 3500, 0.5, 0.003)
Expected output:
9166.13
Python Code
Show Code
from ht.conv_two_phase import Davis_David as ht_Davis_David
def Davis_David(m, x, D, rhol, rhog, Cpl, kl, mul):
"""
Calculate two-phase heat transfer coefficient using the Davis-David correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
Cpl (float): Liquid heat capacity at constant pressure (J/kg/K).
kl (float): Liquid thermal conductivity (W/m/K).
mul (float): Liquid viscosity (Pa*s).
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_Davis_David(
m=m,
x=x,
D=D,
rhol=rhol,
rhog=rhog,
Cpl=Cpl,
kl=kl,
mul=mul,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
ELAMVALUTHI_SRIN
Calculates the two-phase tube-side heat transfer coefficient using the Elamvaluthi-Srinivas correlation. This model uses a mixture Reynolds-number concept and includes optional viscosity correction using bulk and wall liquid viscosities.
The returned coefficient is obtained from:
h = \frac{Nu\,k_l}{D}
where Nu is determined from empirical dependence on mixture flow dynamics, liquid Prandtl behavior, and gas-to-liquid viscosity effects.
Excel Usage
=ELAMVALUTHI_SRIN(m, x, D, rhol, rhog, Cpl, kl, mug, mu_b, mu_w)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).Cpl(float, required): Liquid heat capacity at constant pressure (J/kg/K).kl(float, required): Liquid thermal conductivity (W/m/K).mug(float, required): Gas viscosity (Pa*s).mu_b(float, required): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Elamvaluthi-Srinivas example
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 1000 | 2.5 | 2300 | 0.6 | 0.00001 | 0.001 | 0.0012 |
Excel formula:
=ELAMVALUTHI_SRIN(1, 0.9, 0.3, 1000, 2.5, 2300, 0.6, 0.00001, 0.001, 0.0012)
Expected output:
3901.21
Example 2: Without wall viscosity correction
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b |
|---|---|---|---|---|---|---|---|---|
| 0.7 | 0.4 | 0.05 | 980 | 2 | 4180 | 0.6 | 0.00002 | 0.001 |
Excel formula:
=ELAMVALUTHI_SRIN(0.7, 0.4, 0.05, 980, 2, 4180, 0.6, 0.00002, 0.001)
Expected output:
33872.8
Example 3: Higher gas viscosity
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 1.5 | 0.6 | 0.04 | 950 | 3.5 | 3600 | 0.5 | 0.00005 | 0.0015 | 0.0018 |
Excel formula:
=ELAMVALUTHI_SRIN(1.5, 0.6, 0.04, 950, 3.5, 3600, 0.5, 0.00005, 0.0015, 0.0018)
Expected output:
62712.8
Example 4: Small tube diameter
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 0.3 | 0.2 | 0.015 | 1020 | 1.6 | 4000 | 0.62 | 0.000012 | 0.0009 | 0.0011 |
Excel formula:
=ELAMVALUTHI_SRIN(0.3, 0.2, 0.015, 1020, 1.6, 4000, 0.62, 0.000012, 0.0009, 0.0011)
Expected output:
110711
Python Code
Show Code
from ht.conv_two_phase import Elamvaluthi_Srinivas as ht_Elamvaluthi_Srinivas
def Elamvaluthi_Srin(m, x, D, rhol, rhog, Cpl, kl, mug, mu_b, mu_w=None):
"""
Calculate two-phase heat transfer coefficient using the Elamvaluthi-Srinivas correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
Cpl (float): Liquid heat capacity at constant pressure (J/kg/K).
kl (float): Liquid thermal conductivity (W/m/K).
mug (float): Gas viscosity (Pa*s).
mu_b (float): Liquid viscosity at bulk conditions (Pa*s).
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_Elamvaluthi_Srinivas(
m=m,
x=x,
D=D,
rhol=rhol,
rhog=rhog,
Cpl=Cpl,
kl=kl,
mug=mug,
mu_b=mu_b,
mu_w=mu_w,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
GROOTHUIS_HENDAL
Estimates the two-phase convective heat transfer coefficient for gas-liquid flow in tubes using the Groothuis-Hendal correlation. The model supports two calibration forms, including a dedicated option for water-air systems.
The coefficient is returned via the Nusselt conversion:
h = \frac{Nu\,k_l}{D}
where Nu is computed from empirical powers of a mixture Reynolds term, liquid Prandtl number, and optional viscosity correction factor.
Excel Usage
=GROOTHUIS_HENDAL(m, x, D, rhol, rhog, Cpl, kl, mug, mu_b, mu_w, water)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).Cpl(float, required): Liquid heat capacity at constant pressure (J/kg/K).kl(float, required): Liquid thermal conductivity (W/m/K).mug(float, required): Gas viscosity (Pa*s).mu_b(float, required): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).water(bool, optional, default: false): Use the water-air correlation instead of gas-oil (-).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Groothuis-Hendal example
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 1000 | 2.5 | 2300 | 0.6 | 0.00001 | 0.001 | 0.0012 |
Excel formula:
=GROOTHUIS_HENDAL(1, 0.9, 0.3, 1000, 2.5, 2300, 0.6, 0.00001, 0.001, 0.0012)
Expected output:
1192.95
Example 2: Water-air correlation
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w | water |
|---|---|---|---|---|---|---|---|---|---|---|
| 0.6 | 0.5 | 0.04 | 998 | 1.2 | 4180 | 0.6 | 0.000018 | 0.001 | 0.0011 | true |
Excel formula:
=GROOTHUIS_HENDAL(0.6, 0.5, 0.04, 998, 1.2, 4180, 0.6, 0.000018, 0.001, 0.0011, TRUE)
Expected output:
79603.3
Example 3: Without wall viscosity correction
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b |
|---|---|---|---|---|---|---|---|---|
| 0.8 | 0.3 | 0.05 | 900 | 2 | 3500 | 0.5 | 0.00002 | 0.002 |
Excel formula:
=GROOTHUIS_HENDAL(0.8, 0.3, 0.05, 900, 2, 3500, 0.5, 0.00002, 0.002)
Expected output:
8712.04
Example 4: Lower quality flow
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 0.4 | 0.1 | 0.02 | 970 | 3 | 3800 | 0.55 | 0.000015 | 0.0013 | 0.0015 |
Excel formula:
=GROOTHUIS_HENDAL(0.4, 0.1, 0.02, 970, 3, 3800, 0.55, 0.000015, 0.0013, 0.0015)
Expected output:
16587
Python Code
Show Code
from ht.conv_two_phase import Groothuis_Hendal as ht_Groothuis_Hendal
def Groothuis_Hendal(m, x, D, rhol, rhog, Cpl, kl, mug, mu_b, mu_w=None, water=False):
"""
Calculate two-phase heat transfer coefficient using the Groothuis-Hendal correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
Cpl (float): Liquid heat capacity at constant pressure (J/kg/K).
kl (float): Liquid thermal conductivity (W/m/K).
mug (float): Gas viscosity (Pa*s).
mu_b (float): Liquid viscosity at bulk conditions (Pa*s).
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
water (bool, optional): Use the water-air correlation instead of gas-oil (-). Default is False.
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_Groothuis_Hendal(
m=m,
x=x,
D=D,
rhol=rhol,
rhog=rhog,
Cpl=Cpl,
kl=kl,
mug=mug,
mu_b=mu_b,
mu_w=mu_w,
water=water,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
H_TWO_PHASE
Calculates a two-phase convective heat transfer coefficient for internal tube flow by dispatching to one of several supported empirical correlations. The selected method controls which property set is required and how flow behavior is modeled.
For all methods, the coefficient is interpreted through:
h = \frac{Nu\,k_l}{D}
where Nu comes from the chosen correlation and may depend on mass quality, densities, viscosities, tube length, and void fraction.
Excel Usage
=H_TWO_PHASE(m, x, D, Cpl, kl, rhol, rhog, mul, mu_b, mu_w, mug, L, alpha, method)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).D(float, required): Tube diameter (m).Cpl(float, required): Liquid heat capacity at constant pressure (J/kg/K).kl(float, required): Liquid thermal conductivity (W/m/K).rhol(float, optional, default: null): Liquid density (kg/m^3).rhog(float, optional, default: null): Gas density (kg/m^3).mul(float, optional, default: null): Liquid viscosity (Pa*s).mu_b(float, optional, default: null): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).mug(float, optional, default: null): Gas viscosity (Pa*s).L(float, optional, default: null): Tube length (m).alpha(float, optional, default: null): Void fraction in the tube (-).method(str, optional, default: null): Correlation method name (-).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Aggour method
Inputs:
| m | x | D | alpha | rhol | Cpl | kl | mu_b | mu_w | L | method |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 0.9 | 1000 | 2300 | 0.6 | 0.001 | 0.0012 | 5 | Aggour |
Excel formula:
=H_TWO_PHASE(1, 0.9, 0.3, 0.9, 1000, 2300, 0.6, 0.001, 0.0012, 5, "Aggour")
Expected output:
420.935
Example 2: Davis-David method
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mul | method |
|---|---|---|---|---|---|---|---|---|
| 0.8 | 0.7 | 0.05 | 980 | 2.5 | 4180 | 0.6 | 0.001 | Davis-David |
Excel formula:
=H_TWO_PHASE(0.8, 0.7, 0.05, 980, 2.5, 4180, 0.6, 0.001, "Davis-David")
Expected output:
34257.4
Example 3: Groothuis-Hendal method
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w | method |
|---|---|---|---|---|---|---|---|---|---|---|
| 0.6 | 0.4 | 0.04 | 998 | 1.8 | 3900 | 0.55 | 0.00002 | 0.001 | 0.0011 | Groothuis_Hendal |
Excel formula:
=H_TWO_PHASE(0.6, 0.4, 0.04, 998, 1.8, 3900, 0.55, 0.00002, 0.001, 0.0011, "Groothuis_Hendal")
Expected output:
10305
Example 4: Hughmark method
Inputs:
| m | x | D | alpha | Cpl | kl | L | mu_b | mu_w | method |
|---|---|---|---|---|---|---|---|---|---|
| 0.5 | 0.3 | 0.03 | 0.6 | 3600 | 0.52 | 1.5 | 0.0011 | 0.0013 | Hughmark |
Excel formula:
=H_TWO_PHASE(0.5, 0.3, 0.03, 0.6, 3600, 0.52, 1.5, 0.0011, 0.0013, "Hughmark")
Expected output:
746.114
Python Code
Show Code
from ht.conv_two_phase import h_two_phase as ht_h_two_phase
def h_two_phase(m, x, D, Cpl, kl, rhol=None, rhog=None, mul=None, mu_b=None, mu_w=None, mug=None, L=None, alpha=None, method=None):
"""
Calculate two-phase heat transfer coefficient using a selected correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
D (float): Tube diameter (m).
Cpl (float): Liquid heat capacity at constant pressure (J/kg/K).
kl (float): Liquid thermal conductivity (W/m/K).
rhol (float, optional): Liquid density (kg/m^3). Default is None.
rhog (float, optional): Gas density (kg/m^3). Default is None.
mul (float, optional): Liquid viscosity (Pa*s). Default is None.
mu_b (float, optional): Liquid viscosity at bulk conditions (Pa*s). Default is None.
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
mug (float, optional): Gas viscosity (Pa*s). Default is None.
L (float, optional): Tube length (m). Default is None.
alpha (float, optional): Void fraction in the tube (-). Default is None.
method (str, optional): Correlation method name (-). Valid options: Aggour, Davis-David, Elamvaluthi-Srinivas, Groothuis-Hendal, Hughmark, Knott, Kudirka-Grosh-McFadden, Martin-Sims, Ravipudi-Godbold. Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_h_two_phase(
m=m,
x=x,
D=D,
Cpl=Cpl,
kl=kl,
rhol=rhol,
rhog=rhog,
mul=mul,
mu_b=mu_b,
mu_w=mu_w,
mug=mug,
L=L,
alpha=alpha,
method=method,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
H_TWO_PHASE_METHODS
Returns the set of available two-phase tube-flow heat transfer correlations for the provided inputs. The function can optionally filter methods by validity ranges so only applicable correlations are returned.
This utility is typically used before coefficient evaluation to choose a method compatible with the supplied thermophysical and geometric inputs.
The returned structure is a single-column 2D array of method names suitable for Excel spill output.
Excel Usage
=H_TWO_PHASE_METHODS(m, x, D, Cpl, kl, rhol, rhog, mul, mu_b, mu_w, mug, L, alpha, check_ranges)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).D(float, required): Tube diameter (m).Cpl(float, required): Liquid heat capacity at constant pressure (J/kg/K).kl(float, required): Liquid thermal conductivity (W/m/K).rhol(float, optional, default: null): Liquid density (kg/m^3).rhog(float, optional, default: null): Gas density (kg/m^3).mul(float, optional, default: null): Liquid viscosity (Pa*s).mu_b(float, optional, default: null): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).mug(float, optional, default: null): Gas viscosity (Pa*s).L(float, optional, default: null): Tube length (m).alpha(float, optional, default: null): Void fraction in the tube (-).check_ranges(bool, optional, default: true): Whether to return only applicable correlations (-).
Returns (list[list]): 2D array of available correlation method names.
Example 1: Methods list example
Inputs:
| m | x | D | alpha | rhol | Cpl | kl | mu_b | mu_w | L |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 0.9 | 1000 | 2300 | 0.6 | 0.001 | 0.0012 | 5 |
Excel formula:
=H_TWO_PHASE_METHODS(1, 0.9, 0.3, 0.9, 1000, 2300, 0.6, 0.001, 0.0012, 5)
Expected output:
| Aggour |
|---|
| Hughmark |
Example 2: Methods without range checking
Inputs:
| m | x | D | alpha | rhol | Cpl | kl | mu_b | mu_w | L | check_ranges |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 0.9 | 1000 | 2300 | 0.6 | 0.001 | 0.0012 | 5 | false |
Excel formula:
=H_TWO_PHASE_METHODS(1, 0.9, 0.3, 0.9, 1000, 2300, 0.6, 0.001, 0.0012, 5, FALSE)
Expected output:
| Aggour |
|---|
| Hughmark |
Example 3: Methods with gas properties
Inputs:
| m | x | D | alpha | rhol | rhog | Cpl | kl | mug | mu_b | mu_w | L | check_ranges |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 0.9 | 1000 | 1.8 | 2300 | 0.6 | 0.00002 | 0.001 | 0.0012 | 5 | false |
Excel formula:
=H_TWO_PHASE_METHODS(1, 0.9, 0.3, 0.9, 1000, 1.8, 2300, 0.6, 0.00002, 0.001, 0.0012, 5, FALSE)
Expected output:
| Knott |
|---|
| Martin_Sims |
| Kudirka_Grosh_McFadden |
| Groothuis_Hendal |
| Aggour |
| Hughmark |
| Elamvaluthi_Srinivas |
| Ravipudi_Godbold |
Example 4: Methods for low quality flow
Inputs:
| m | x | D | alpha | rhol | Cpl | kl | mu_b | mu_w | L | check_ranges |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.1 | 0.3 | 0.9 | 1000 | 2300 | 0.6 | 0.001 | 0.0012 | 5 | false |
Excel formula:
=H_TWO_PHASE_METHODS(1, 0.1, 0.3, 0.9, 1000, 2300, 0.6, 0.001, 0.0012, 5, FALSE)
Expected output:
| Aggour |
|---|
| Hughmark |
Python Code
Show Code
from ht.conv_two_phase import h_two_phase_methods as ht_h_two_phase_methods
def h_two_phase_methods(m, x, D, Cpl, kl, rhol=None, rhog=None, mul=None, mu_b=None, mu_w=None, mug=None, L=None, alpha=None, check_ranges=True):
"""
List available two-phase heat transfer correlations for a tube.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
D (float): Tube diameter (m).
Cpl (float): Liquid heat capacity at constant pressure (J/kg/K).
kl (float): Liquid thermal conductivity (W/m/K).
rhol (float, optional): Liquid density (kg/m^3). Default is None.
rhog (float, optional): Gas density (kg/m^3). Default is None.
mul (float, optional): Liquid viscosity (Pa*s). Default is None.
mu_b (float, optional): Liquid viscosity at bulk conditions (Pa*s). Default is None.
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
mug (float, optional): Gas viscosity (Pa*s). Default is None.
L (float, optional): Tube length (m). Default is None.
alpha (float, optional): Void fraction in the tube (-). Default is None.
check_ranges (bool, optional): Whether to return only applicable correlations (-). Default is True.
Returns:
list[list]: 2D array of available correlation method names.
"""
try:
methods = ht_h_two_phase_methods(
m=m,
x=x,
D=D,
Cpl=Cpl,
kl=kl,
rhol=rhol,
rhog=rhog,
mul=mul,
mu_b=mu_b,
mu_w=mu_w,
mug=mug,
L=L,
alpha=alpha,
check_ranges=check_ranges,
)
if not methods:
return "Error: No applicable correlations found for the given parameters."
return [[method] for method in methods]
except Exception as e:
return f"Error: {str(e)}"Online Calculator
HUGHMARK
Computes a laminar two-phase heat transfer coefficient in tube flow using the Hughmark correlation, which is based on entry-region behavior and void-fraction-adjusted liquid contribution.
The model returns heat transfer coefficient from the Nusselt relationship:
h = \frac{Nu\,k_l}{D}
with Nu formed from empirical dependence on mass flow, liquid thermal properties, tube length, and optional viscosity correction.
Excel Usage
=HUGHMARK(m, x, alpha, D, L, Cpl, kl, mu_b, mu_w)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).alpha(float, required): Void fraction in the tube (-).D(float, required): Tube diameter (m).L(float, required): Tube length (m).Cpl(float, required): Liquid heat capacity at constant pressure (J/kg/K).kl(float, required): Liquid thermal conductivity (W/m/K).mu_b(float, optional, default: null): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Hughmark example
Inputs:
| m | x | alpha | D | L | Cpl | kl | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.9 | 0.3 | 0.5 | 2300 | 0.6 | 0.001 | 0.0012 |
Excel formula:
=HUGHMARK(1, 0.9, 0.9, 0.3, 0.5, 2300, 0.6, 0.001, 0.0012)
Expected output:
212.741
Example 2: Without wall viscosity correction
Inputs:
| m | x | alpha | D | L | Cpl | kl | mu_b |
|---|---|---|---|---|---|---|---|
| 0.6 | 0.4 | 0.7 | 0.05 | 1 | 4180 | 0.6 | 0.001 |
Excel formula:
=HUGHMARK(0.6, 0.4, 0.7, 0.05, 1, 4180, 0.6, 0.001)
Expected output:
778.145
Example 3: Lower void fraction
Inputs:
| m | x | alpha | D | L | Cpl | kl | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|
| 0.4 | 0.2 | 0.4 | 0.04 | 0.8 | 3900 | 0.55 | 0.0011 | 0.0013 |
Excel formula:
=HUGHMARK(0.4, 0.2, 0.4, 0.04, 0.8, 3900, 0.55, 0.0011, 0.0013)
Expected output:
509.305
Example 4: Longer tube length
Inputs:
| m | x | alpha | D | L | Cpl | kl | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|
| 0.8 | 0.6 | 0.8 | 0.06 | 2 | 3600 | 0.52 | 0.0009 | 0.001 |
Excel formula:
=HUGHMARK(0.8, 0.6, 0.8, 0.06, 2, 3600, 0.52, 0.0009, 0.001)
Expected output:
591.242
Python Code
Show Code
from ht.conv_two_phase import Hughmark as ht_Hughmark
def Hughmark(m, x, alpha, D, L, Cpl, kl, mu_b=None, mu_w=None):
"""
Calculate two-phase laminar heat transfer coefficient using the Hughmark correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
alpha (float): Void fraction in the tube (-).
D (float): Tube diameter (m).
L (float): Tube length (m).
Cpl (float): Liquid heat capacity at constant pressure (J/kg/K).
kl (float): Liquid thermal conductivity (W/m/K).
mu_b (float, optional): Liquid viscosity at bulk conditions (Pa*s). Default is None.
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_Hughmark(
m=m,
x=x,
alpha=alpha,
D=D,
L=L,
Cpl=Cpl,
kl=kl,
mu_b=mu_b,
mu_w=mu_w,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
KNOTT
Calculates two-phase convective heat transfer in tube flow using the Knott correlation. The method can use a supplied liquid-only coefficient or estimate it from liquid properties and tube geometry.
The two-phase enhancement is based on scaling the liquid-only coefficient:
h_{TP} = h_l\,\phi
where \phi is an empirical two-phase multiplier derived from gas-liquid flow rate effects.
Excel Usage
=KNOTT(m, x, D, rhol, rhog, Cpl, kl, mu_b, mu_w, L, hl)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).Cpl(float, optional, default: null): Liquid heat capacity at constant pressure (J/kg/K).kl(float, optional, default: null): Liquid thermal conductivity (W/m/K).mu_b(float, optional, default: null): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).L(float, optional, default: null): Tube length (m).hl(float, optional, default: null): Liquid-only heat transfer coefficient (W/m^2/K).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Knott example
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mu_b | mu_w | L |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 1000 | 2.5 | 2300 | 0.6 | 0.001 | 0.0012 | 4 |
Excel formula:
=KNOTT(1, 0.9, 0.3, 1000, 2.5, 2300, 0.6, 0.001, 0.0012, 4)
Expected output:
4225.54
Example 2: Using a provided liquid coefficient
Inputs:
| m | x | D | rhol | rhog | hl |
|---|---|---|---|---|---|
| 0.7 | 0.4 | 0.05 | 980 | 2 | 500 |
Excel formula:
=KNOTT(0.7, 0.4, 0.05, 980, 2, 500)
Expected output:
3447.05
Example 3: Without wall viscosity correction
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mu_b | L |
|---|---|---|---|---|---|---|---|---|
| 0.6 | 0.3 | 0.04 | 990 | 1.8 | 4180 | 0.6 | 0.001 | 2 |
Excel formula:
=KNOTT(0.6, 0.3, 0.04, 990, 1.8, 4180, 0.6, 0.001, 2)
Expected output:
13136.3
Example 4: Higher quality flow
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mu_b | mu_w | L |
|---|---|---|---|---|---|---|---|---|---|
| 1.4 | 0.8 | 0.06 | 950 | 2.8 | 3600 | 0.52 | 0.0014 | 0.0016 | 3 |
Excel formula:
=KNOTT(1.4, 0.8, 0.06, 950, 2.8, 3600, 0.52, 0.0014, 0.0016, 3)
Expected output:
18181.3
Python Code
Show Code
from ht.conv_two_phase import Knott as ht_Knott
def Knott(m, x, D, rhol, rhog, Cpl=None, kl=None, mu_b=None, mu_w=None, L=None, hl=None):
"""
Calculate two-phase heat transfer coefficient using the Knott correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
Cpl (float, optional): Liquid heat capacity at constant pressure (J/kg/K). Default is None.
kl (float, optional): Liquid thermal conductivity (W/m/K). Default is None.
mu_b (float, optional): Liquid viscosity at bulk conditions (Pa*s). Default is None.
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
L (float, optional): Tube length (m). Default is None.
hl (float, optional): Liquid-only heat transfer coefficient (W/m^2/K). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_Knott(
m=m,
x=x,
D=D,
rhol=rhol,
rhog=rhog,
Cpl=Cpl,
kl=kl,
mu_b=mu_b,
mu_w=mu_w,
L=L,
hl=hl,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
KUDIRKA_GROSH_MCF
Computes the two-phase tube-flow heat transfer coefficient using the Kudirka-Grosh-McFadden empirical correlation. The model combines gas-liquid velocity ratio effects, viscosity ratio effects, and liquid thermal scaling.
The output coefficient is formed through:
h = \frac{Nu\,k_l}{D}
with Nu determined by the correlation’s empirical exponents and optional viscosity correction using bulk and wall liquid viscosities.
Excel Usage
=KUDIRKA_GROSH_MCF(m, x, D, rhol, rhog, Cpl, kl, mug, mu_b, mu_w)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).Cpl(float, required): Liquid heat capacity at constant pressure (J/kg/K).kl(float, required): Liquid thermal conductivity (W/m/K).mug(float, required): Gas viscosity (Pa*s).mu_b(float, required): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Kudirka-Grosh-McFadden example
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 1000 | 2.5 | 2300 | 0.6 | 0.00001 | 0.001 | 0.0012 |
Excel formula:
=KUDIRKA_GROSH_MCF(1, 0.9, 0.3, 1000, 2.5, 2300, 0.6, 0.00001, 0.001, 0.0012)
Expected output:
303.994
Example 2: Without wall viscosity correction
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b |
|---|---|---|---|---|---|---|---|---|
| 0.7 | 0.3 | 0.05 | 980 | 2.2 | 4180 | 0.6 | 0.00002 | 0.001 |
Excel formula:
=KUDIRKA_GROSH_MCF(0.7, 0.3, 0.05, 980, 2.2, 4180, 0.6, 0.00002, 0.001)
Expected output:
5582.84
Example 3: Small diameter tube
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 0.4 | 0.6 | 0.02 | 990 | 1.8 | 3800 | 0.55 | 0.000015 | 0.0011 | 0.0013 |
Excel formula:
=KUDIRKA_GROSH_MCF(0.4, 0.6, 0.02, 990, 1.8, 3800, 0.55, 0.000015, 0.0011, 0.0013)
Expected output:
11395.1
Example 4: Lower quality flow
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 0.9 | 0.15 | 0.04 | 970 | 2.7 | 3600 | 0.5 | 0.000012 | 0.0014 | 0.0016 |
Excel formula:
=KUDIRKA_GROSH_MCF(0.9, 0.15, 0.04, 970, 2.7, 3600, 0.5, 0.000012, 0.0014, 0.0016)
Expected output:
3676
Python Code
Show Code
from ht.conv_two_phase import Kudirka_Grosh_McFadden as ht_Kudirka_Grosh_McFadden
def Kudirka_Grosh_McF(m, x, D, rhol, rhog, Cpl, kl, mug, mu_b, mu_w=None):
"""
Calculate two-phase heat transfer coefficient using the Kudirka-Grosh-McFadden correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
Cpl (float): Liquid heat capacity at constant pressure (J/kg/K).
kl (float): Liquid thermal conductivity (W/m/K).
mug (float): Gas viscosity (Pa*s).
mu_b (float): Liquid viscosity at bulk conditions (Pa*s).
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_Kudirka_Grosh_McFadden(
m=m,
x=x,
D=D,
rhol=rhol,
rhog=rhog,
Cpl=Cpl,
kl=kl,
mug=mug,
mu_b=mu_b,
mu_w=mu_w,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
LAMINAR_ENTRY_ST
Calculates the average Nusselt number for laminar internal flow in the thermal entry region using the Seider-Tate correlation. Optional bulk-to-wall viscosity correction can be applied when both viscosities are provided.
The correlation has the form:
Nu = 1.86\left(\frac{D}{L}Re\,Pr\right)^{1/3}\left(\frac{\mu}{\mu_w}\right)^{0.14}
and returns a dimensionless Nusselt number for use in convection calculations.
Excel Usage
=LAMINAR_ENTRY_ST(Re, Pr, L, Di, mu, mu_w)
Re(float, required): Reynolds number (-).Pr(float, required): Prandtl number (-).L(float, required): Pipe length (m).Di(float, required): Pipe diameter (m).mu(float, optional, default: null): Bulk viscosity (Pa*s).mu_w(float, optional, default: null): Wall viscosity (Pa*s).
Returns (float): Laminar entry-region Nusselt number (-).
Example 1: Seider-Tate example
Inputs:
| Re | Pr | L | Di |
|---|---|---|---|
| 100000 | 1.1 | 5 | 0.5 |
Excel formula:
=LAMINAR_ENTRY_ST(100000, 1.1, 5, 0.5)
Expected output:
41.366
Example 2: Seider-Tate with viscosity correction
Inputs:
| Re | Pr | L | Di | mu | mu_w |
|---|---|---|---|---|---|
| 8000 | 5 | 1 | 0.05 | 0.003 | 0.004 |
Excel formula:
=LAMINAR_ENTRY_ST(8000, 5, 1, 0.05, 0.003, 0.004)
Expected output:
22.5094
Example 3: Mid Reynolds number
Inputs:
| Re | Pr | L | Di |
|---|---|---|---|
| 20000 | 0.9 | 2 | 0.1 |
Excel formula:
=LAMINAR_ENTRY_ST(20000, 0.9, 2, 0.1)
Expected output:
17.9581
Example 4: Short pipe length
Inputs:
| Re | Pr | L | Di |
|---|---|---|---|
| 5000 | 7 | 0.5 | 0.02 |
Excel formula:
=LAMINAR_ENTRY_ST(5000, 7, 0.5, 0.02)
Expected output:
20.8076
Python Code
Show Code
from ht.conv_two_phase import laminar_entry_Seider_Tate as ht_laminar_entry_Seider_Tate
def laminar_entry_ST(Re, Pr, L, Di, mu=None, mu_w=None):
"""
Calculate laminar entry-region Nusselt number using Seider-Tate.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.html
This example function is provided as-is without any representation of accuracy.
Args:
Re (float): Reynolds number (-).
Pr (float): Prandtl number (-).
L (float): Pipe length (m).
Di (float): Pipe diameter (m).
mu (float, optional): Bulk viscosity (Pa*s). Default is None.
mu_w (float, optional): Wall viscosity (Pa*s). Default is None.
Returns:
float: Laminar entry-region Nusselt number (-).
"""
try:
return ht_laminar_entry_Seider_Tate(Re=Re, Pr=Pr, L=L, Di=Di, mu=mu, mu_w=mu_w)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
MARTIN_SIMS
Estimates two-phase convective heat transfer in tube flow using the Martin-Sims correlation. This approach scales a liquid-only heat transfer coefficient by an empirical factor based on phase velocity effects.
The functional structure is:
h_{TP} = h_l\,\phi
where h_l may be supplied directly or computed from provided liquid properties and tube dimensions.
Excel Usage
=MARTIN_SIMS(m, x, D, rhol, rhog, hl, Cpl, kl, mu_b, mu_w, L)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).hl(float, optional, default: null): Liquid-only heat transfer coefficient (W/m^2/K).Cpl(float, optional, default: null): Liquid heat capacity at constant pressure (J/kg/K).kl(float, optional, default: null): Liquid thermal conductivity (W/m/K).mu_b(float, optional, default: null): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).L(float, optional, default: null): Tube length (m).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Martin-Sims with provided hl
Inputs:
| m | x | D | rhol | rhog | hl |
|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 1000 | 2.5 | 141.2 |
Excel formula:
=MARTIN_SIMS(1, 0.9, 0.3, 1000, 2.5, 141.2)
Expected output:
5563.28
Example 2: Martin-Sims with computed hl
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mu_b | mu_w | L |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 1000 | 2.5 | 2300 | 0.6 | 0.001 | 0.0012 | 24 |
Excel formula:
=MARTIN_SIMS(1, 0.9, 0.3, 1000, 2.5, 2300, 0.6, 0.001, 0.0012, 24)
Expected output:
5977.51
Example 3: Without wall viscosity correction
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mu_b | L |
|---|---|---|---|---|---|---|---|---|
| 0.7 | 0.4 | 0.05 | 980 | 2 | 4180 | 0.6 | 0.001 | 3 |
Excel formula:
=MARTIN_SIMS(0.7, 0.4, 0.05, 980, 2, 4180, 0.6, 0.001, 3)
Expected output:
20785.9
Example 4: Higher quality flow
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mu_b | mu_w | L |
|---|---|---|---|---|---|---|---|---|---|
| 1.4 | 0.8 | 0.06 | 950 | 2.8 | 3600 | 0.52 | 0.0014 | 0.0016 | 4 |
Excel formula:
=MARTIN_SIMS(1.4, 0.8, 0.06, 950, 2.8, 3600, 0.52, 0.0014, 0.0016, 4)
Expected output:
36660.4
Python Code
Show Code
from ht.conv_two_phase import Martin_Sims as ht_Martin_Sims
def Martin_Sims(m, x, D, rhol, rhog, hl=None, Cpl=None, kl=None, mu_b=None, mu_w=None, L=None):
"""
Calculate two-phase heat transfer coefficient using the Martin-Sims correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
hl (float, optional): Liquid-only heat transfer coefficient (W/m^2/K). Default is None.
Cpl (float, optional): Liquid heat capacity at constant pressure (J/kg/K). Default is None.
kl (float, optional): Liquid thermal conductivity (W/m/K). Default is None.
mu_b (float, optional): Liquid viscosity at bulk conditions (Pa*s). Default is None.
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
L (float, optional): Tube length (m). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_Martin_Sims(
m=m,
x=x,
D=D,
rhol=rhol,
rhog=rhog,
hl=hl,
Cpl=Cpl,
kl=kl,
mu_b=mu_b,
mu_w=mu_w,
L=L,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator
RAVIPUDI_GODBOLD
Computes two-phase convective heat transfer in internal tube flow using the Ravipudi-Godbold correlation. The formulation captures effects of gas-liquid flow ratio, viscosity ratio, and liquid-side transport behavior.
The heat transfer coefficient is returned through:
h = \frac{Nu\,k_l}{D}
where Nu is evaluated from the correlation and may include a liquid viscosity correction term when wall viscosity is available.
Excel Usage
=RAVIPUDI_GODBOLD(m, x, D, rhol, rhog, Cpl, kl, mug, mu_b, mu_w)
m(float, required): Mass flow rate (kg/s).x(float, required): Quality at the tube interval (-).D(float, required): Tube diameter (m).rhol(float, required): Liquid density (kg/m^3).rhog(float, required): Gas density (kg/m^3).Cpl(float, required): Liquid heat capacity at constant pressure (J/kg/K).kl(float, required): Liquid thermal conductivity (W/m/K).mug(float, required): Gas viscosity (Pa*s).mu_b(float, required): Liquid viscosity at bulk conditions (Pa*s).mu_w(float, optional, default: null): Liquid viscosity at wall temperature (Pa*s).
Returns (float): Heat transfer coefficient (W/m^2/K).
Example 1: Ravipudi-Godbold example
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.9 | 0.3 | 1000 | 2.5 | 2300 | 0.6 | 0.00001 | 0.001 | 0.0012 |
Excel formula:
=RAVIPUDI_GODBOLD(1, 0.9, 0.3, 1000, 2.5, 2300, 0.6, 0.00001, 0.001, 0.0012)
Expected output:
299.38
Example 2: Without wall viscosity correction
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b |
|---|---|---|---|---|---|---|---|---|
| 0.7 | 0.4 | 0.05 | 980 | 2.2 | 4180 | 0.6 | 0.00002 | 0.001 |
Excel formula:
=RAVIPUDI_GODBOLD(0.7, 0.4, 0.05, 980, 2.2, 4180, 0.6, 0.00002, 0.001)
Expected output:
8470.54
Example 3: Small diameter tube
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 0.4 | 0.6 | 0.02 | 990 | 1.8 | 3800 | 0.55 | 0.000015 | 0.0011 | 0.0013 |
Excel formula:
=RAVIPUDI_GODBOLD(0.4, 0.6, 0.02, 990, 1.8, 3800, 0.55, 0.000015, 0.0011, 0.0013)
Expected output:
22532.5
Example 4: Lower quality flow
Inputs:
| m | x | D | rhol | rhog | Cpl | kl | mug | mu_b | mu_w |
|---|---|---|---|---|---|---|---|---|---|
| 0.9 | 0.15 | 0.04 | 970 | 2.7 | 3600 | 0.5 | 0.000012 | 0.0014 | 0.0016 |
Excel formula:
=RAVIPUDI_GODBOLD(0.9, 0.15, 0.04, 970, 2.7, 3600, 0.5, 0.000012, 0.0014, 0.0016)
Expected output:
6965.16
Python Code
Show Code
from ht.conv_two_phase import Ravipudi_Godbold as ht_Ravipudi_Godbold
def Ravipudi_Godbold(m, x, D, rhol, rhog, Cpl, kl, mug, mu_b, mu_w=None):
"""
Calculate two-phase heat transfer coefficient using the Ravipudi-Godbold correlation.
See: https://ht.readthedocs.io/en/latest/ht.conv_two_phase.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 (-).
D (float): Tube diameter (m).
rhol (float): Liquid density (kg/m^3).
rhog (float): Gas density (kg/m^3).
Cpl (float): Liquid heat capacity at constant pressure (J/kg/K).
kl (float): Liquid thermal conductivity (W/m/K).
mug (float): Gas viscosity (Pa*s).
mu_b (float): Liquid viscosity at bulk conditions (Pa*s).
mu_w (float, optional): Liquid viscosity at wall temperature (Pa*s). Default is None.
Returns:
float: Heat transfer coefficient (W/m^2/K).
"""
try:
return ht_Ravipudi_Godbold(
m=m,
x=x,
D=D,
rhol=rhol,
rhog=rhog,
Cpl=Cpl,
kl=kl,
mug=mug,
mu_b=mu_b,
mu_w=mu_w,
)
except Exception as e:
return f"Error: {str(e)}"Online Calculator