Conv External

Overview

External forced convection describes heat transfer from a surface to a moving fluid when the flow is imposed by pumps, fans, or free-stream velocity rather than buoyancy. In thermal design, this category is central for estimating surface coefficients on cylinders and flat plates used in heat exchangers, piping, and exposed equipment. The governing behavior is commonly framed through forced convection, where velocity, fluid properties, and geometry determine boundary-layer development. These tools convert Reynolds- and Prandtl-based operating conditions into practical Nusselt-number estimates for rating and preliminary sizing.

The shared framework is dimensionless transport scaling, especially Nu=\frac{hL}{k}, Re=\frac{\rho uL}{\mu}, and Pr=\frac{\nu}{\alpha}. Cylinder and plate correlations in this set are empirical or semi-empirical expressions that span laminar, transitional, and turbulent ranges with different property-evaluation conventions (bulk, film, or wall-corrected forms). Method-selection utilities support robust workflows by exposing valid correlations for a given state before computing a final value.

Implementation is provided by the Python ht library, specifically ht.conv_external, which packages published heat-transfer correlations behind consistent interfaces for engineering calculations.

For crossflow over single cylinders, NU_CYL_CB, NU_CYL_PL62, NU_CYL_PL64, NU_CYL_SG, NU_CYL_WHITAKER, NU_CYL_ZUKAUSKAS, NU_CYLINDER_FAND, and NU_CYLINDER_MCADAMS provide direct correlation choices with different calibration datasets and correction styles. In practice, these are used when a project standard, handbook citation, or validity range requires a specific formula. The first-pass selector NU_EXT_CYL chooses an appropriate cylinder method from inputs, while NU_EXT_CYL_METHODS returns available candidates for traceable method screening.

For external flow over horizontal plates, NU_EXT_HORZ_PLATE serves as the main interface and combines laminar/turbulent handling with a transition Reynolds threshold. NU_EXT_HORZ_METHODS lists applicable options for the specified regime and properties. The explicit laminar correlations NU_HORZ_LAM_BAEHR and NU_HORZ_LAM_COZOE are useful for low-Re boundary layers, while NU_HORZ_TURB_KREITH and NU_HORZ_TURB_SCHL target turbulent plate convection at higher Reynolds numbers. Together, these functions support both quick default estimates and detailed, standards-aligned correlation studies.

NU_CYL_CB

This function computes the average Nusselt number for forced crossflow over a single cylinder using the Churchill-Bernstein correlation. It uses Reynolds and Prandtl numbers evaluated at film temperature and provides a unified expression spanning broad laminar-to-turbulent conditions.

Nu_D = 0.3 + \frac{0.62 Re_D^{1/2} Pr^{1/3}}{\left[1 + (0.4/Pr)^{2/3}\right]^{1/4}}\left[1 + \left(\frac{Re_D}{282000}\right)^{5/8}\right]^{4/5}

Excel Usage

=NU_CYL_CB(Re, Pr)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at film temperature (-).

Returns (float): Nusselt number with respect to cylinder diameter (-).

Example 1: Churchill-Bernstein example case

Inputs:

Re Pr
6071 0.7

Excel formula:

=NU_CYL_CB(6071, 0.7)

Expected output:

40.6371

Example 2: Low Reynolds number in air

Inputs:

Re Pr
120 0.71

Excel formula:

=NU_CYL_CB(120, 0.71)

Expected output:

5.65356

Example 3: Mid Reynolds number in water

Inputs:

Re Pr
25000 4

Excel formula:

=NU_CYL_CB(25000, 4)

Expected output:

174.054

Example 4: High Reynolds number in oil

Inputs:

Re Pr
200000 60

Excel formula:

=NU_CYL_CB(200000, 60)

Expected output:

1727.58

Python Code

Show Code
from ht.conv_external import Nu_cylinder_Churchill_Bernstein as ht_Nu_cylinder_Churchill_Bernstein

def Nu_cyl_CB(Re, Pr):
    """
    Calculate the Nusselt number for crossflow across a single cylinder using the Churchill-Bernstein correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at film temperature (-).

    Returns:
        float: Nusselt number with respect to cylinder diameter (-).
    """
    try:
        return ht_Nu_cylinder_Churchill_Bernstein(Re=Re, Pr=Pr)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at film temperature (-).

NU_CYL_PL62

This function computes the average Nusselt number for forced crossflow over a single cylinder using the 1962 Perkins-Leppert correlation. Reynolds and Prandtl numbers are taken at free-stream conditions, and an optional viscosity-ratio correction is applied when both viscosities are provided.

Nu = \left(0.30Re^{0.5} + 0.10Re^{0.67}\right)Pr^{0.4}\left(\frac{\mu}{\mu_w}\right)^{0.25}

Excel Usage

=NU_CYL_PL62(Re, Pr, mu, muw)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at free stream temperature (-).
  • mu (float, optional, default: null): Viscosity at free stream temperature (Pa*s).
  • muw (float, optional, default: null): Viscosity at wall temperature (Pa*s).

Returns (float): Nusselt number with respect to cylinder diameter (-).

Example 1: Perkins-Leppert 1962 example case

Inputs:

Re Pr
6071 0.7

Excel formula:

=NU_CYL_PL62(6071, 0.7)

Expected output:

49.9716

Example 2: Perkins-Leppert 1962 with viscosity correction

Inputs:

Re Pr mu muw
15000 2.5 0.0011 0.0007

Excel formula:

=NU_CYL_PL62(15000, 2.5, 0.0011, 0.0007)

Expected output:

160.794

Example 3: Perkins-Leppert 1962 at low Reynolds

Inputs:

Re Pr
200 1

Excel formula:

=NU_CYL_PL62(200, 1)

Expected output:

7.72353

Example 4: Perkins-Leppert 1962 at high Prandtl

Inputs:

Re Pr
50000 20

Excel formula:

=NU_CYL_PL62(50000, 20)

Expected output:

688.701

Python Code

Show Code
from ht.conv_external import Nu_cylinder_Perkins_Leppert_1962 as ht_Nu_cylinder_Perkins_Leppert_1962

def Nu_cyl_PL62(Re, Pr, mu=None, muw=None):
    """
    Calculate the Nusselt number for crossflow across a single cylinder using the Perkins-Leppert 1962 correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at free stream temperature (-).
        mu (float, optional): Viscosity at free stream temperature (Pa*s). Default is None.
        muw (float, optional): Viscosity at wall temperature (Pa*s). Default is None.

    Returns:
        float: Nusselt number with respect to cylinder diameter (-).
    """
    try:
        return ht_Nu_cylinder_Perkins_Leppert_1962(Re=Re, Pr=Pr, mu=mu, muw=muw)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at free stream temperature (-).
Viscosity at free stream temperature (Pa*s).
Viscosity at wall temperature (Pa*s).

NU_CYL_PL64

This function computes the average Nusselt number for forced crossflow over a single cylinder using the 1964 Perkins-Leppert update. Reynolds and Prandtl numbers are evaluated at free-stream conditions, with an optional viscosity-ratio wall correction.

Nu = \left(0.31Re^{0.5} + 0.11Re^{0.67}\right)Pr^{0.4}\left(\frac{\mu}{\mu_w}\right)^{0.25}

Excel Usage

=NU_CYL_PL64(Re, Pr, mu, muw)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at free stream temperature (-).
  • mu (float, optional, default: null): Viscosity at free stream temperature (Pa*s).
  • muw (float, optional, default: null): Viscosity at wall temperature (Pa*s).

Returns (float): Nusselt number with respect to cylinder diameter (-).

Example 1: Perkins-Leppert 1964 example case

Inputs:

Re Pr
6071 0.7

Excel formula:

=NU_CYL_PL64(6071, 0.7)

Expected output:

53.6177

Example 2: Perkins-Leppert 1964 with viscosity correction

Inputs:

Re Pr mu muw
22000 3 0.0014 0.0009

Excel formula:

=NU_CYL_PL64(22000, 3, 0.0014, 0.0009)

Expected output:

234.44

Example 3: Perkins-Leppert 1964 at low Reynolds

Inputs:

Re Pr
1500 1.2

Excel formula:

=NU_CYL_PL64(1500, 1.2)

Expected output:

28.8017

Example 4: Perkins-Leppert 1964 at high Prandtl

Inputs:

Re Pr
80000 15

Excel formula:

=NU_CYL_PL64(80000, 15)

Expected output:

885.495

Python Code

Show Code
from ht.conv_external import Nu_cylinder_Perkins_Leppert_1964 as ht_Nu_cylinder_Perkins_Leppert_1964

def Nu_cyl_PL64(Re, Pr, mu=None, muw=None):
    """
    Calculate the Nusselt number for crossflow across a single cylinder using the Perkins-Leppert 1964 correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at free stream temperature (-).
        mu (float, optional): Viscosity at free stream temperature (Pa*s). Default is None.
        muw (float, optional): Viscosity at wall temperature (Pa*s). Default is None.

    Returns:
        float: Nusselt number with respect to cylinder diameter (-).
    """
    try:
        return ht_Nu_cylinder_Perkins_Leppert_1964(Re=Re, Pr=Pr, mu=mu, muw=muw)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at free stream temperature (-).
Viscosity at free stream temperature (Pa*s).
Viscosity at wall temperature (Pa*s).

NU_CYL_SG

This function computes the average Nusselt number for forced crossflow over a single cylinder using the Sanitjai-Goldstein formulation. The correlation combines two Reynolds-number-dependent terms and is intended for Reynolds and Prandtl numbers evaluated at film temperature.

Nu = 0.446Re^{0.5}Pr^{0.35} + 0.528\left[(6.5e^{Re/5000})^{-5} + (0.031Re^{0.8})^{-5}\right]^{-1/5}Pr^{0.42}

Excel Usage

=NU_CYL_SG(Re, Pr)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at film temperature (-).

Returns (float): Nusselt number with respect to cylinder diameter (-).

Example 1: Sanitjai-Goldstein example case

Inputs:

Re Pr
6071 0.7

Excel formula:

=NU_CYL_SG(6071, 0.7)

Expected output:

40.3833

Example 2: Sanitjai-Goldstein in air

Inputs:

Re Pr
15000 0.71

Excel formula:

=NU_CYL_SG(15000, 0.71)

Expected output:

79.2948

Example 3: Sanitjai-Goldstein in water

Inputs:

Re Pr
25000 5

Excel formula:

=NU_CYL_SG(25000, 5)

Expected output:

230.012

Example 4: Sanitjai-Goldstein in glycol mixture

Inputs:

Re Pr
8000 50

Excel formula:

=NU_CYL_SG(8000, 50)

Expected output:

240.333

Python Code

Show Code
from ht.conv_external import Nu_cylinder_Sanitjai_Goldstein as ht_Nu_cylinder_Sanitjai_Goldstein

def Nu_cyl_SG(Re, Pr):
    """
    Calculate the Nusselt number for crossflow across a single cylinder using the Sanitjai-Goldstein correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at film temperature (-).

    Returns:
        float: Nusselt number with respect to cylinder diameter (-).
    """
    try:
        return ht_Nu_cylinder_Sanitjai_Goldstein(Re=Re, Pr=Pr)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at film temperature (-).

NU_CYL_WHITAKER

This function computes the average Nusselt number for forced crossflow over a single cylinder using the Whitaker correlation. Reynolds and Prandtl numbers are evaluated at free-stream conditions, and an optional viscosity-ratio correction is included when viscosities are supplied.

Nu_D = \left(0.4Re_D^{0.5} + 0.06Re_D^{2/3}\right)Pr^{0.4}\left(\frac{\mu}{\mu_w}\right)^{0.25}

Excel Usage

=NU_CYL_WHITAKER(Re, Pr, mu, muw)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at free stream temperature (-).
  • mu (float, optional, default: null): Viscosity at free stream temperature (Pa*s).
  • muw (float, optional, default: null): Viscosity at wall temperature (Pa*s).

Returns (float): Nusselt number with respect to cylinder diameter (-).

Example 1: Whitaker example case

Inputs:

Re Pr
6071 0.7

Excel formula:

=NU_CYL_WHITAKER(6071, 0.7)

Expected output:

45.9453

Example 2: Whitaker with viscosity correction

Inputs:

Re Pr mu muw
18000 2 0.0012 0.0008

Excel formula:

=NU_CYL_WHITAKER(18000, 2, 0.0012, 0.0008)

Expected output:

129.266

Example 3: Whitaker at low Reynolds

Inputs:

Re Pr
50 1

Excel formula:

=NU_CYL_WHITAKER(50, 1)

Expected output:

3.64275

Example 4: Whitaker at high Prandtl

Inputs:

Re Pr
40000 25

Excel formula:

=NU_CYL_WHITAKER(40000, 25)

Expected output:

394.443

Python Code

Show Code
from ht.conv_external import Nu_cylinder_Whitaker as ht_Nu_cylinder_Whitaker

def Nu_cyl_Whitaker(Re, Pr, mu=None, muw=None):
    """
    Calculate the Nusselt number for crossflow across a single cylinder using the Whitaker correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at free stream temperature (-).
        mu (float, optional): Viscosity at free stream temperature (Pa*s). Default is None.
        muw (float, optional): Viscosity at wall temperature (Pa*s). Default is None.

    Returns:
        float: Nusselt number with respect to cylinder diameter (-).
    """
    try:
        return ht_Nu_cylinder_Whitaker(Re=Re, Pr=Pr, mu=mu, muw=muw)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at free stream temperature (-).
Viscosity at free stream temperature (Pa*s).
Viscosity at wall temperature (Pa*s).

NU_CYL_ZUKAUSKAS

This function computes the average Nusselt number for forced crossflow over a single cylinder using the Zukauskas correlation. It selects empirical coefficients by Reynolds-number regime and optionally applies a wall-to-bulk Prandtl correction when wall Prandtl number is provided.

Nu_D = CRe^{m}Pr^{n}\left(\frac{Pr}{Pr_w}\right)^{1/4}

Excel Usage

=NU_CYL_ZUKAUSKAS(Re, Pr, Prw)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at free stream temperature (-).
  • Prw (float, optional, default: null): Prandtl number at wall temperature (-).

Returns (float): Nusselt number with respect to cylinder diameter (-).

Example 1: Zukauskas example case

Inputs:

Re Pr Prw
7992 0.707 0.69

Excel formula:

=NU_CYL_ZUKAUSKAS(7992, 0.707, 0.69)

Expected output:

50.5236

Example 2: Zukauskas without wall Prandtl

Inputs:

Re Pr Prw
6000 0.7

Excel formula:

=NU_CYL_ZUKAUSKAS(6000, 0.7, )

Expected output:

42.126

Example 3: Zukauskas in laminar range

Inputs:

Re Pr
30 1.1

Excel formula:

=NU_CYL_ZUKAUSKAS(30, 1.1)

Expected output:

3.02848

Example 4: Zukauskas in turbulent range

Inputs:

Re Pr
300000 0.9

Excel formula:

=NU_CYL_ZUKAUSKAS(300000, 0.9)

Expected output:

498.733

Python Code

Show Code
from ht.conv_external import Nu_cylinder_Zukauskas as ht_Nu_cylinder_Zukauskas

def Nu_cyl_Zukauskas(Re, Pr, Prw=None):
    """
    Calculate the Nusselt number for crossflow across a single cylinder using the Zukauskas correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at free stream temperature (-).
        Prw (float, optional): Prandtl number at wall temperature (-). Default is None.

    Returns:
        float: Nusselt number with respect to cylinder diameter (-).
    """
    try:
        return ht_Nu_cylinder_Zukauskas(Re=Re, Pr=Pr, Prw=Prw)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at free stream temperature (-).
Prandtl number at wall temperature (-).

NU_CYLINDER_FAND

This function computes the average Nusselt number for forced crossflow over a single cylinder using the Fand empirical correlation. Inputs are Reynolds and Prandtl numbers at film temperature.

Nu = \left(0.35 + 0.34Re^{0.5} + 0.15Re^{0.58}\right)Pr^{0.3}

Excel Usage

=NU_CYLINDER_FAND(Re, Pr)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at film temperature (-).

Returns (float): Nusselt number with respect to cylinder diameter (-).

Example 1: Fand example case

Inputs:

Re Pr
6071 0.7

Excel formula:

=NU_CYLINDER_FAND(6071, 0.7)

Expected output:

45.1998

Example 2: Small Reynolds number in liquid

Inputs:

Re Pr
80 5

Excel formula:

=NU_CYLINDER_FAND(80, 5)

Expected output:

8.583

Example 3: Moderate Reynolds number in gas

Inputs:

Re Pr
12000 0.72

Excel formula:

=NU_CYLINDER_FAND(12000, 0.72)

Expected output:

65.6326

Example 4: High Reynolds number in water

Inputs:

Re Pr
90000 3.2

Excel formula:

=NU_CYLINDER_FAND(90000, 3.2)

Expected output:

303.979

Python Code

Show Code
from ht.conv_external import Nu_cylinder_Fand as ht_Nu_cylinder_Fand

def Nu_cylinder_Fand(Re, Pr):
    """
    Calculate the Nusselt number for crossflow across a single cylinder using the Fand correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at film temperature (-).

    Returns:
        float: Nusselt number with respect to cylinder diameter (-).
    """
    try:
        return ht_Nu_cylinder_Fand(Re=Re, Pr=Pr)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at film temperature (-).

NU_CYLINDER_MCADAMS

This function computes the average Nusselt number for forced crossflow over a single cylinder using the McAdams correlation. It takes Reynolds and Prandtl numbers evaluated at film temperature.

Nu = \left(0.35 + 0.56Re^{0.52}\right)Pr^{0.3}

Excel Usage

=NU_CYLINDER_MCADAMS(Re, Pr)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at film temperature (-).

Returns (float): Nusselt number with respect to cylinder diameter (-).

Example 1: McAdams example case

Inputs:

Re Pr
6071 0.7

Excel formula:

=NU_CYLINDER_MCADAMS(6071, 0.7)

Expected output:

46.9818

Example 2: Low Reynolds number in oil

Inputs:

Re Pr
150 80

Excel formula:

=NU_CYLINDER_MCADAMS(150, 80)

Expected output:

29.5313

Example 3: Mid Reynolds number in air

Inputs:

Re Pr
15000 0.7

Excel formula:

=NU_CYLINDER_MCADAMS(15000, 0.7)

Expected output:

75.0083

Example 4: High Reynolds number in water

Inputs:

Re Pr
75000 4.5

Excel formula:

=NU_CYLINDER_MCADAMS(75000, 4.5)

Expected output:

301.978

Python Code

Show Code
from ht.conv_external import Nu_cylinder_McAdams as ht_Nu_cylinder_McAdams

def Nu_cylinder_McAdams(Re, Pr):
    """
    Calculate the Nusselt number for crossflow across a single cylinder using the McAdams correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at film temperature (-).

    Returns:
        float: Nusselt number with respect to cylinder diameter (-).
    """
    try:
        return ht_Nu_cylinder_McAdams(Re=Re, Pr=Pr)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at film temperature (-).

NU_EXT_CYL

This function evaluates the Nusselt number for forced crossflow over a single cylinder by selecting a specific correlation or automatically choosing a default method. Optional wall Prandtl number and viscosity terms are passed through for methods that support property-ratio corrections.

The computation follows a method-dispatch pattern:

Nu = f_{\text{method}}(Re, Pr, Pr_w, \mu, \mu_w)

Excel Usage

=NU_EXT_CYL(Re, Pr, Prw, mu, muw, Method)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at either free stream or wall temperature (-).
  • Prw (float, optional, default: null): Prandtl number at wall temperature (-).
  • mu (float, optional, default: null): Viscosity at free stream temperature (Pa*s).
  • muw (float, optional, default: null): Viscosity at wall temperature (Pa*s).
  • Method (str, optional, default: null): Correlation method name (-).

Returns (float): Nusselt number with respect to cylinder diameter (-).

Example 1: External cylinder default method

Inputs:

Re Pr
6071 0.7

Excel formula:

=NU_EXT_CYL(6071, 0.7)

Expected output:

40.3833

Example 2: External cylinder with wall Prandtl

Inputs:

Re Pr Prw
7992 0.707 0.69

Excel formula:

=NU_EXT_CYL(7992, 0.707, 0.69)

Expected output:

49.25

Example 3: External cylinder with viscosity correction inputs

Inputs:

Re Pr mu muw
15000 2.5 0.0011 0.0008

Excel formula:

=NU_EXT_CYL(15000, 2.5, 0.0011, 0.0008)

Expected output:

127.606

Example 4: External cylinder with explicit method

Inputs:

Re Pr Method
12000 0.7 Sanitjai-Goldstein

Excel formula:

=NU_EXT_CYL(12000, 0.7, "Sanitjai-Goldstein")

Expected output:

67.5877

Python Code

Show Code
from ht.conv_external import Nu_external_cylinder as ht_Nu_external_cylinder

def Nu_ext_cyl(Re, Pr, Prw=None, mu=None, muw=None, Method=None):
    """
    Calculate the Nusselt number for crossflow across a single cylinder using a selected correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at either free stream or wall temperature (-).
        Prw (float, optional): Prandtl number at wall temperature (-). Default is None.
        mu (float, optional): Viscosity at free stream temperature (Pa*s). Default is None.
        muw (float, optional): Viscosity at wall temperature (Pa*s). Default is None.
        Method (str, optional): Correlation method name (-). Default is None.

    Returns:
        float: Nusselt number with respect to cylinder diameter (-).
    """
    try:
        return ht_Nu_external_cylinder(Re=Re, Pr=Pr, Prw=Prw, mu=mu, muw=muw, Method=Method)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at either free stream or wall temperature (-).
Prandtl number at wall temperature (-).
Viscosity at free stream temperature (Pa*s).
Viscosity at wall temperature (Pa*s).
Correlation method name (-).

NU_EXT_CYL_METHODS

This function returns the available forced-convection cylinder correlations for given Reynolds and Prandtl conditions. When range checking is enabled, only methods applicable to the supplied input domain are returned.

Conceptually, it filters the candidate set of methods:

\mathcal{M}_{\text{valid}} = \{m \in \mathcal{M} \mid \text{constraints}_m(Re, Pr, Pr_w, \mu, \mu_w)\}

Excel Usage

=NU_EXT_CYL_METHODS(Re, Pr, Prw, mu, muw, check_ranges)
  • Re (float, required): Reynolds number with respect to cylinder diameter (-).
  • Pr (float, required): Prandtl number at either free stream or wall temperature (-).
  • Prw (float, optional, default: null): Prandtl number at wall temperature (-).
  • mu (float, optional, default: null): Viscosity at free stream temperature (Pa*s).
  • muw (float, optional, default: null): Viscosity at wall temperature (Pa*s).
  • check_ranges (bool, optional, default: true): Whether to return only correlations suitable for the inputs (-).

Returns (list[list]): 2D array of available correlation method names.

Example 1: Cylinder methods with default inputs

Inputs:

Re Pr
0.72 10000000

Excel formula:

=NU_EXT_CYL_METHODS(0.72, 10000000)

Expected output:

Sanitjai-Goldstein
Churchill-Bernstein
Fand
McAdams
Example 2: Cylinder methods in air

Inputs:

Re Pr
10000 0.71

Excel formula:

=NU_EXT_CYL_METHODS(10000, 0.71)

Expected output:

Sanitjai-Goldstein
Churchill-Bernstein
Fand
McAdams
Example 3: Cylinder methods with wall Prandtl

Inputs:

Re Pr Prw
8000 0.7 0.69

Excel formula:

=NU_EXT_CYL_METHODS(8000, 0.7, 0.69)

Expected output:

Sanitjai-Goldstein
Churchill-Bernstein
Fand
McAdams
Zukauskas
Example 4: Cylinder methods without range checking

Inputs:

Re Pr check_ranges
500000 1.2 false

Excel formula:

=NU_EXT_CYL_METHODS(500000, 1.2, FALSE)

Expected output:

Sanitjai-Goldstein
Churchill-Bernstein
Fand
McAdams

Python Code

Show Code
from ht.conv_external import Nu_external_cylinder_methods as ht_Nu_external_cylinder_methods

def Nu_ext_cyl_methods(Re, Pr, Prw=None, mu=None, muw=None, check_ranges=True):
    """
    List available correlations for external cylinder forced convection.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to cylinder diameter (-).
        Pr (float): Prandtl number at either free stream or wall temperature (-).
        Prw (float, optional): Prandtl number at wall temperature (-). Default is None.
        mu (float, optional): Viscosity at free stream temperature (Pa*s). Default is None.
        muw (float, optional): Viscosity at wall temperature (Pa*s). Default is None.
        check_ranges (bool, optional): Whether to return only correlations suitable for the inputs (-). Default is True.

    Returns:
        list[list]: 2D array of available correlation method names.
    """
    try:
        methods = ht_Nu_external_cylinder_methods(
            Re=Re,
            Pr=Pr,
            Prw=Prw,
            mu=mu,
            muw=muw,
            check_ranges=check_ranges,
        )
        return [[method] for method in methods]
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to cylinder diameter (-).
Prandtl number at either free stream or wall temperature (-).
Prandtl number at wall temperature (-).
Viscosity at free stream temperature (Pa*s).
Viscosity at wall temperature (Pa*s).
Whether to return only correlations suitable for the inputs (-).

NU_EXT_HORZ_METHODS

This function lists candidate correlations for forced convection over a horizontal plate for the provided Reynolds and Prandtl conditions. With range checking enabled, only methods that satisfy input applicability limits are returned.

The output corresponds to a filtered method set:

\mathcal{M}_{\text{valid}} = \{m \in \mathcal{M} \mid \text{range}_m(Re, Pr, L, x)\}

Excel Usage

=NU_EXT_HORZ_METHODS(Re, Pr, L, x, check_ranges)
  • Re (float, required): Reynolds number with respect to plate length (-).
  • Pr (float, required): Prandtl number with respect to bulk properties (-).
  • L (float, optional, default: null): Plate length (m).
  • x (float, optional, default: null): Plate distance for local calculation (m).
  • check_ranges (bool, optional, default: true): Whether to return only correlations suitable for the inputs (-).

Returns (list[list]): 2D array of available correlation method names.

Example 1: Plate methods example case

Inputs:

Re Pr
10000000 0.7

Excel formula:

=NU_EXT_HORZ_METHODS(10000000, 0.7)

Expected output:

Schlichting
Kreith
Example 2: Plate methods in laminar range

Inputs:

Re Pr
10000 0.9

Excel formula:

=NU_EXT_HORZ_METHODS(10000, 0.9)

Expected output:

Baehr
Churchill Ozoe
Example 3: Plate methods with length input

Inputs:

Re Pr L
500000 1.1 2.5

Excel formula:

=NU_EXT_HORZ_METHODS(500000, 1.1, 2.5)

Expected output:

Schlichting
Kreith
Example 4: Plate methods without range checking

Inputs:

Re Pr check_ranges
800000 0.72 false

Excel formula:

=NU_EXT_HORZ_METHODS(800000, 0.72, FALSE)

Expected output:

Baehr
Churchill Ozoe
Schlichting
Kreith

Python Code

Show Code
from ht.conv_external import Nu_external_horizontal_plate_methods as ht_Nu_external_horizontal_plate_methods

def Nu_ext_horz_methods(Re, Pr, L=None, x=None, check_ranges=True):
    """
    List available correlations for forced convection across a horizontal plate.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to plate length (-).
        Pr (float): Prandtl number with respect to bulk properties (-).
        L (float, optional): Plate length (m). Default is None.
        x (float, optional): Plate distance for local calculation (m). Default is None.
        check_ranges (bool, optional): Whether to return only correlations suitable for the inputs (-). Default is True.

    Returns:
        list[list]: 2D array of available correlation method names.
    """
    try:
        methods = ht_Nu_external_horizontal_plate_methods(
            Re=Re,
            Pr=Pr,
            L=L,
            x=x,
            check_ranges=check_ranges,
        )
        return [[method] for method in methods]
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to plate length (-).
Prandtl number with respect to bulk properties (-).
Plate length (m).
Plate distance for local calculation (m).
Whether to return only correlations suitable for the inputs (-).

NU_EXT_HORZ_PLATE

This function computes the Nusselt number for external forced convection along a horizontal flat plate. It can use an explicitly selected correlation or automatically choose a laminar or turbulent method based on a transition Reynolds number.

In automatic mode, a piecewise method selection is used:

Nu = \begin{cases} f_{\text{lam}}(Re, Pr), & Re < Re_{\text{transition}} \\ f_{\text{turb}}(Re, Pr), & Re \ge Re_{\text{transition}} \end{cases}

Excel Usage

=NU_EXT_HORZ_PLATE(Re, Pr, L, x, Method, laminar_method, turbulent_method, Re_transition)
  • Re (float, required): Reynolds number with respect to plate length (-).
  • Pr (float, required): Prandtl number with respect to bulk properties (-).
  • L (float, optional, default: null): Plate length (m).
  • x (float, optional, default: null): Plate distance for local calculation (m).
  • Method (str, optional, default: null): Correlation method name (-).
  • laminar_method (str, optional, default: “Baehr”): Preferred laminar correlation name (-).
  • turbulent_method (str, optional, default: “Schlichting”): Preferred turbulent correlation name (-).
  • Re_transition (float, optional, default: 500000): Reynolds number for laminar-turbulent transition (-).

Returns (float): Nusselt number with respect to plate length (-).

Example 1: Horizontal plate turbulent example

Inputs:

Re Pr
10000000 0.7

Excel formula:

=NU_EXT_HORZ_PLATE(10000000, 0.7)

Expected output:

11497

Example 2: Horizontal plate laminar range

Inputs:

Re Pr
80000 0.71

Excel formula:

=NU_EXT_HORZ_PLATE(80000, 0.71)

Expected output:

167.545

Example 3: Horizontal plate with explicit method

Inputs:

Re Pr Method
300000 0.9 Baehr

Excel formula:

=NU_EXT_HORZ_PLATE(300000, 0.9, "Baehr")

Expected output:

351.137

Example 4: Horizontal plate with custom transition

Inputs:

Re Pr Re_transition
600000 1.1 200000

Excel formula:

=NU_EXT_HORZ_PLATE(600000, 1.1, 200000)

Expected output:

1637.17

Python Code

Show Code
from ht.conv_external import Nu_external_horizontal_plate as ht_Nu_external_horizontal_plate

def Nu_ext_horz_plate(Re, Pr, L=None, x=None, Method=None, laminar_method='Baehr', turbulent_method='Schlichting', Re_transition=500000):
    """
    Calculate the Nusselt number for forced convection across a horizontal plate.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to plate length (-).
        Pr (float): Prandtl number with respect to bulk properties (-).
        L (float, optional): Plate length (m). Default is None.
        x (float, optional): Plate distance for local calculation (m). Default is None.
        Method (str, optional): Correlation method name (-). Default is None.
        laminar_method (str, optional): Preferred laminar correlation name (-). Default is 'Baehr'.
        turbulent_method (str, optional): Preferred turbulent correlation name (-). Default is 'Schlichting'.
        Re_transition (float, optional): Reynolds number for laminar-turbulent transition (-). Default is 500000.

    Returns:
        float: Nusselt number with respect to plate length (-).
    """
    try:
        return ht_Nu_external_horizontal_plate(
            Re=Re,
            Pr=Pr,
            L=L,
            x=x,
            Method=Method,
            laminar_method=laminar_method,
            turbulent_method=turbulent_method,
            Re_transition=Re_transition,
        )
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to plate length (-).
Prandtl number with respect to bulk properties (-).
Plate length (m).
Plate distance for local calculation (m).
Correlation method name (-).
Preferred laminar correlation name (-).
Preferred turbulent correlation name (-).
Reynolds number for laminar-turbulent transition (-).

NU_HORZ_LAM_BAEHR

This function computes the laminar flat-plate Nusselt number using the Baehr formulation for isothermal surfaces. The correlation applies Reynolds and bulk-property Prandtl numbers and switches coefficients across Prandtl regimes.

A commonly used regime form is:

Nu_L = 0.664Re_L^{1/2}Pr^{1/3}

Excel Usage

=NU_HORZ_LAM_BAEHR(Re, Pr)
  • Re (float, required): Reynolds number with respect to plate length (-).
  • Pr (float, required): Prandtl number at bulk temperature (-).

Returns (float): Nusselt number with respect to plate length (-).

Example 1: Baehr example case

Inputs:

Re Pr
100000 0.7

Excel formula:

=NU_HORZ_LAM_BAEHR(100000, 0.7)

Expected output:

186.438

Example 2: Baehr at low Prandtl

Inputs:

Re Pr
50000 0.02

Excel formula:

=NU_HORZ_LAM_BAEHR(50000, 0.02)

Expected output:

31.6228

Example 3: Baehr at mid Prandtl

Inputs:

Re Pr
80000 0.8

Excel formula:

=NU_HORZ_LAM_BAEHR(80000, 0.8)

Expected output:

174.345

Example 4: Baehr at high Prandtl

Inputs:

Re Pr
120000 15

Excel formula:

=NU_HORZ_LAM_BAEHR(120000, 15)

Expected output:

579.23

Python Code

Show Code
from ht.conv_external import Nu_horizontal_plate_laminar_Baehr as ht_Nu_horizontal_plate_laminar_Baehr

def Nu_horz_lam_Baehr(Re, Pr):
    """
    Calculate the Nusselt number for laminar flow across an isothermal flat plate using the Baehr correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to plate length (-).
        Pr (float): Prandtl number at bulk temperature (-).

    Returns:
        float: Nusselt number with respect to plate length (-).
    """
    try:
        return ht_Nu_horizontal_plate_laminar_Baehr(Re=Re, Pr=Pr)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to plate length (-).
Prandtl number at bulk temperature (-).

NU_HORZ_LAM_COZOE

This function computes the laminar flat-plate Nusselt number for an isothermal plate using the Churchill-Ozoe expression. It provides a single smooth relation over a wide Prandtl-number range.

Nu_L = \frac{0.6774Re_L^{1/2}Pr^{1/3}}{\left[1 + (0.0468/Pr)^{2/3}\right]^{1/4}}

Excel Usage

=NU_HORZ_LAM_COZOE(Re, Pr)
  • Re (float, required): Reynolds number with respect to plate length (-).
  • Pr (float, required): Prandtl number at bulk temperature (-).

Returns (float): Nusselt number with respect to plate length (-).

Example 1: Churchill-Ozoe example case

Inputs:

Re Pr
100000 0.7

Excel formula:

=NU_HORZ_LAM_COZOE(100000, 0.7)

Expected output:

183.086

Example 2: Churchill-Ozoe at low Prandtl

Inputs:

Re Pr
60000 0.05

Excel formula:

=NU_HORZ_LAM_COZOE(60000, 0.05)

Expected output:

51.6837

Example 3: Churchill-Ozoe at mid Prandtl

Inputs:

Re Pr
90000 0.9

Excel formula:

=NU_HORZ_LAM_COZOE(90000, 0.9)

Expected output:

189.912

Example 4: Churchill-Ozoe at high Prandtl

Inputs:

Re Pr
110000 12

Excel formula:

=NU_HORZ_LAM_COZOE(110000, 12)

Expected output:

511.224

Python Code

Show Code
from ht.conv_external import Nu_horizontal_plate_laminar_Churchill_Ozoe as ht_Nu_horizontal_plate_laminar_Churchill_Ozoe

def Nu_horz_lam_COzoe(Re, Pr):
    """
    Calculate the Nusselt number for laminar flow across an isothermal flat plate using the Churchill-Ozoe correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to plate length (-).
        Pr (float): Prandtl number at bulk temperature (-).

    Returns:
        float: Nusselt number with respect to plate length (-).
    """
    try:
        return ht_Nu_horizontal_plate_laminar_Churchill_Ozoe(Re=Re, Pr=Pr)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to plate length (-).
Prandtl number at bulk temperature (-).

NU_HORZ_TURB_KREITH

This function computes the turbulent flat-plate Nusselt number for an isothermal plate using the Kreith correlation with Reynolds and bulk Prandtl inputs.

Nu_L = 0.036Re_L^{0.8}Pr^{1/3}

Excel Usage

=NU_HORZ_TURB_KREITH(Re, Pr)
  • Re (float, required): Reynolds number with respect to plate length (-).
  • Pr (float, required): Prandtl number at bulk temperature (-).

Returns (float): Nusselt number with respect to plate length (-).

Example 1: Kreith example case

Inputs:

Re Pr
1030000 0.71

Excel formula:

=NU_HORZ_TURB_KREITH(1030000, 0.71)

Expected output:

2074.87

Example 2: Kreith at mid Reynolds

Inputs:

Re Pr
500000 0.7

Excel formula:

=NU_HORZ_TURB_KREITH(500000, 0.7)

Expected output:

1158.36

Example 3: Kreith at high Prandtl

Inputs:

Re Pr
1500000 10

Excel formula:

=NU_HORZ_TURB_KREITH(1500000, 10)

Expected output:

6768.76

Example 4: Kreith at high Reynolds

Inputs:

Re Pr
3000000 1.2

Excel formula:

=NU_HORZ_TURB_KREITH(3000000, 1.2)

Expected output:

5812.91

Python Code

Show Code
from ht.conv_external import Nu_horizontal_plate_turbulent_Kreith as ht_Nu_horizontal_plate_turbulent_Kreith

def Nu_horz_turb_Kreith(Re, Pr):
    """
    Calculate the Nusselt number for turbulent flow across an isothermal flat plate using the Kreith correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to plate length (-).
        Pr (float): Prandtl number at bulk temperature (-).

    Returns:
        float: Nusselt number with respect to plate length (-).
    """
    try:
        return ht_Nu_horizontal_plate_turbulent_Kreith(Re=Re, Pr=Pr)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to plate length (-).
Prandtl number at bulk temperature (-).

NU_HORZ_TURB_SCHL

This function computes the turbulent flat-plate Nusselt number for an isothermal plate using the Schlichting formulation, which includes a denominator correction term as a function of Reynolds and Prandtl numbers.

Nu_L = \frac{0.037Re_L^{0.8}Pr}{1 + 2.443Re_L^{-0.1}(Pr^{2/3} - 1)}

Excel Usage

=NU_HORZ_TURB_SCHL(Re, Pr)
  • Re (float, required): Reynolds number with respect to plate length (-).
  • Pr (float, required): Prandtl number at bulk temperature (-).

Returns (float): Nusselt number with respect to plate length (-).

Example 1: Schlichting example case

Inputs:

Re Pr
100000 0.7

Excel formula:

=NU_HORZ_TURB_SCHL(100000, 0.7)

Expected output:

309.62

Example 2: Schlichting at mid Reynolds

Inputs:

Re Pr
400000 0.9

Excel formula:

=NU_HORZ_TURB_SCHL(400000, 0.9)

Expected output:

1057.72

Example 3: Schlichting at high Prandtl

Inputs:

Re Pr
900000 8

Excel formula:

=NU_HORZ_TURB_SCHL(900000, 8)

Expected output:

6001.36

Example 4: Schlichting at high Reynolds

Inputs:

Re Pr
2000000 1.1

Excel formula:

=NU_HORZ_TURB_SCHL(2000000, 1.1)

Expected output:

4309.28

Python Code

Show Code
from ht.conv_external import Nu_horizontal_plate_turbulent_Schlichting as ht_Nu_horizontal_plate_turbulent_Schlichting

def Nu_horz_turb_Schl(Re, Pr):
    """
    Calculate the Nusselt number for turbulent flow across an isothermal flat plate using the Schlichting correlation.

    See: https://ht.readthedocs.io/en/latest/ht.conv_external.html

    This example function is provided as-is without any representation of accuracy.

    Args:
        Re (float): Reynolds number with respect to plate length (-).
        Pr (float): Prandtl number at bulk temperature (-).

    Returns:
        float: Nusselt number with respect to plate length (-).
    """
    try:
        return ht_Nu_horizontal_plate_turbulent_Schlichting(Re=Re, Pr=Pr)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator

Reynolds number with respect to plate length (-).
Prandtl number at bulk temperature (-).