r'''Calculates internal convection Nusselt number for turbulent flows
    in pipe according to [2]_ as developed in [1]_. Has yet to obtain
    popularity.

    .. math::
        Nu = \left\{\left(\frac{Pr_T}{Pr}\right)\frac{1}{Nu_{di}} +
        \left[1-\left(\frac{Pr_T}{Pr}\right)^{2/3}\right]\frac{1}{Nu_{D\infty}}
        \right\}^{-1}

        Nu_{di} = \frac{Re(f/8)}{1 + 145(8/f)^{-5/4}}

        Nu_{D\infty} = 0.07343Re\left(\frac{Pr}{Pr_T}\right)^{1/3}(f/8)^{0.5}

        Pr_T = 0.85 + \frac{0.015}{Pr}

    Parameters
    ----------
    Re : float
        Reynolds number, [-]
    Pr : float
        Prandtl number, [-]
    fd : float
        Darcy friction factor [-]

    Returns
    -------
    Nu : float
        Nusselt number, [-]

    Notes
    -----
    No restrictions on range. This is equation is developed with more
    theoretical work than others.

    Examples
    --------
    >>> turbulent_Churchill_Zajic(Re=1E5, Pr=1.2, fd=0.0185)
    260.5564907817961

    References
    ----------
    .. [1] Churchill, Stuart W., and Stefan C. Zajic. “Prediction of Fully
       Developed Turbulent Convection with Minimal Explicit Empiricism.”
       AIChE Journal 48, no. 5 (May 1, 2002): 927–40. doi:10.1002/aic.690480503.
    .. [2] Plawsky, Joel L. Transport Phenomena Fundamentals, Third Edition.
       CRC Press, 2014.

def turbulent_Churchill_Zajic(Re, Pr, fd):
    r'''Calculates internal convection Nusselt number for turbulent flows
    in pipe according to [2]_ as developed in [1]_. Has yet to obtain
    popularity.

    .. math::
        Nu = \left\{\left(\frac{Pr_T}{Pr}\right)\frac{1}{Nu_{di}} +
        \left[1-\left(\frac{Pr_T}{Pr}\right)^{2/3}\right]\frac{1}{Nu_{D\infty}}
        \right\}^{-1}

        Nu_{di} = \frac{Re(f/8)}{1 + 145(8/f)^{-5/4}}

        Nu_{D\infty} = 0.07343Re\left(\frac{Pr}{Pr_T}\right)^{1/3}(f/8)^{0.5}

        Pr_T = 0.85 + \frac{0.015}{Pr}

    Parameters
    ----------
    Re : float
        Reynolds number, [-]
    Pr : float
        Prandtl number, [-]
    fd : float
        Darcy friction factor [-]

    Returns
    -------
    Nu : float
        Nusselt number, [-]

    Notes
    -----
    No restrictions on range. This is equation is developed with more
    theoretical work than others.

    Examples
    --------
    >>> turbulent_Churchill_Zajic(Re=1E5, Pr=1.2, fd=0.0185)
    260.5564907817961

    References
    ----------
    .. [1] Churchill, Stuart W., and Stefan C. Zajic. “Prediction of Fully
       Developed Turbulent Convection with Minimal Explicit Empiricism.”
       AIChE Journal 48, no. 5 (May 1, 2002): 927–40. doi:10.1002/aic.690480503.
    .. [2] Plawsky, Joel L. Transport Phenomena Fundamentals, Third Edition.
       CRC Press, 2014.
    '''
    Pr_T = 0.85 + 0.015/Pr
    Nu_di = Re*(fd/8.)/(1. + 145*(8./fd)**(-1.25))
    Nu_dinf = 0.07343*Re*(Pr/Pr_T)**(1./3.0)*(fd/8.)**0.5
    return 1./(Pr_T/Pr/Nu_di + (1. - (Pr_T/Pr)**(2/3.))/Nu_dinf)