def _rnl_hourly(tmean, ea, fcd):
    """Hourly net long-wave radiation  (Eq. 44)

    Parameters
    ----------
    tmean : ee.Image or ee.Number
        Mean hourly air temperature [C].
    ea : ee.Image or ee.Number
        Actual vapor pressure [kPa].
    fcd : ee.Image or ee.Number
        Cloudiness fraction.

    Returns
    -------
    ee.Image or ee.Number
        Hourly net long-wave radiation [MJ m-2 h-1].
        Output data type will match "tmean" data type.

    Notes
    -----
    rnl = 2.042E-10 * fcd * (0.34 - 0.14 * sqrt(ea)) * ((tmean + 273.16) ** 4)

    """
    return tmean.add(273.16).pow(4).multiply(ea.sqrt().multiply(-0.14).add(
        0.34)).multiply(fcd).multiply(2.042e-10)
