LEHRER
This function computes the average jacket-side heat transfer coefficient for a vessel jacket using the Lehrer correlation. It combines forced convection behavior in the jacket channel with optional buoyancy effects depending on inlet orientation and thermal conditions.
The Nusselt-number form used by the correlation can be represented as:
Nu = \left[\frac{0.03Re^{0.75}Pr}{1 + \frac{1.74(Pr-1)}{Re^{0.125}}}\right]\left(\frac{\mu}{\mu_w}\right)^{0.14}
The average heat transfer coefficient is then obtained from:
h = \frac{Nu\,k}{d_g}
Excel Usage
=LEHRER(m, Dtank, Djacket, H, Dinlet, rho, Cp, k, mu, muw, isobaric_expansion, dT, inlettype, inletlocation)
m(float, required): Mass flow rate of fluid (kg/s).Dtank(float, required): Outer diameter of tank or vessel surrounded by jacket (m).Djacket(float, required): Inner diameter of jacket surrounding a vessel or tank (m).H(float, required): Height of the vessel or tank (m).Dinlet(float, required): Inner diameter of inlet into the jacket (m).rho(float, required): Density of the fluid at Tm (kg/m^3).Cp(float, required): Heat capacity of fluid at Tm (J/kg/K).k(float, required): Thermal conductivity of fluid at Tm (W/m/K).mu(float, required): Viscosity of fluid at Tm (Pa*s).muw(float, optional, default: null): Viscosity of fluid at Tw (Pa*s).isobaric_expansion(float, optional, default: null): Constant pressure expansivity of a fluid (m^3/mol/K).dT(float, optional, default: null): Temperature difference of fluid in jacket (K).inlettype(str, optional, default: “tangential”): Inlet type (tangential or radial).inletlocation(str, optional, default: “auto”): Inlet location (top, bottom, or auto).
Returns (float): Average heat transfer coefficient inside the jacket (W/m^2/K).
Example 1: Tangential inlet example from docs
Inputs:
| m | Dtank | Djacket | H | Dinlet | dT | rho | Cp | k | mu | muw |
|---|---|---|---|---|---|---|---|---|---|---|
| 2.5 | 0.6 | 0.65 | 0.6 | 0.025 | 20 | 995.7 | 4178.1 | 0.615 | 0.000798 | 0.000355 |
Excel formula:
=LEHRER(2.5, 0.6, 0.65, 0.6, 0.025, 20, 995.7, 4178.1, 0.615, 0.000798, 0.000355)
Expected output:
2922.13
Example 2: Radial inlet with expansion term
Inputs:
| m | Dtank | Djacket | H | Dinlet | dT | rho | Cp | k | mu | muw | inlettype | isobaric_expansion |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2.5 | 0.6 | 0.65 | 0.6 | 0.025 | 20 | 995.7 | 4178.1 | 0.615 | 0.000798 | 0.000355 | radial | 0.000303 |
Excel formula:
=LEHRER(2.5, 0.6, 0.65, 0.6, 0.025, 20, 995.7, 4178.1, 0.615, 0.000798, 0.000355, "radial", 0.000303)
Expected output:
3269.44
Example 3: Automatic inlet location with bottom entry
Inputs:
| m | Dtank | Djacket | H | Dinlet | dT | rho | Cp | k | mu | muw | inletlocation |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1.8 | 0.5 | 0.56 | 0.7 | 0.03 | 15 | 980 | 4100 | 0.62 | 0.0009 | 0.0006 | bottom |
Excel formula:
=LEHRER(1.8, 0.5, 0.56, 0.7, 0.03, 15, 980, 4100, 0.62, 0.0009, 0.0006, "bottom")
Expected output:
1406.42
Example 4: Tangential inlet with defaults
Inputs:
| m | Dtank | Djacket | H | Dinlet | dT | rho | Cp | k | mu | muw |
|---|---|---|---|---|---|---|---|---|---|---|
| 3.1 | 0.8 | 0.86 | 0.9 | 0.04 | 10 | 990 | 4000 | 0.6 | 0.0011 | 0.0008 |
Excel formula:
=LEHRER(3.1, 0.8, 0.86, 0.9, 0.04, 10, 990, 4000, 0.6, 0.0011, 0.0008)
Expected output:
1303.56
Python Code
Show Code
from ht.conv_jacket import Lehrer as ht_lehrer
def Lehrer(m, Dtank, Djacket, H, Dinlet, rho, Cp, k, mu, muw=None, isobaric_expansion=None, dT=None, inlettype='tangential', inletlocation='auto'):
"""
Calculate the average heat transfer coefficient for a jacket around a vessel.
See: https://ht.readthedocs.io/en/latest/ht.conv_jacket.html
This example function is provided as-is without any representation of accuracy.
Args:
m (float): Mass flow rate of fluid (kg/s).
Dtank (float): Outer diameter of tank or vessel surrounded by jacket (m).
Djacket (float): Inner diameter of jacket surrounding a vessel or tank (m).
H (float): Height of the vessel or tank (m).
Dinlet (float): Inner diameter of inlet into the jacket (m).
rho (float): Density of the fluid at Tm (kg/m^3).
Cp (float): Heat capacity of fluid at Tm (J/kg/K).
k (float): Thermal conductivity of fluid at Tm (W/m/K).
mu (float): Viscosity of fluid at Tm (Pa*s).
muw (float, optional): Viscosity of fluid at Tw (Pa*s). Default is None.
isobaric_expansion (float, optional): Constant pressure expansivity of a fluid (m^3/mol/K). Default is None.
dT (float, optional): Temperature difference of fluid in jacket (K). Default is None.
inlettype (str, optional): Inlet type (tangential or radial). Valid options: Tangential, Radial. Default is 'tangential'.
inletlocation (str, optional): Inlet location (top, bottom, or auto). Valid options: Auto, Top, Bottom. Default is 'auto'.
Returns:
float: Average heat transfer coefficient inside the jacket (W/m^2/K).
"""
try:
return ht_lehrer(
m=m,
Dtank=Dtank,
Djacket=Djacket,
H=H,
Dinlet=Dinlet,
rho=rho,
Cp=Cp,
k=k,
mu=mu,
muw=muw,
isobaric_expansion=isobaric_expansion,
dT=dT,
inlettype=inlettype,
inletlocation=inletlocation,
)
except Exception as e:
return f"Error: {str(e)}"