def monthly_soil_heat_flux(t_month_prev, t_month_next):
    """
    Estimates the monthly soil heat flux (Gmonth) [MJ m-2 day-1]
    assuming a grass crop from the mean
    air temperature of the previous month and the next month based on FAO
    equation (43). If the air temperature of the next month is not known use
    function monthly_soil_heat_flux2(). The resluting heat flux can be
    converted to equivalent evaporation [mm day-1] using the equiv_evap()
    function.

    Arguments:
    t_month_prev  - mean air temperature of previous month [deg C]
    t_month2_next - mean air temperature of next month [deg C]
    """
    # Raise exceptions
    if (t_month_prev < -95.0 or t_month_prev > 60.0):
        raise ValueError, 't_month_prev=%g is not in range -95 to +60' % t_month_prev
    elif (t_month_next < -95.0 or t_month_next > 60.0):
        raise ValueError, 't_month_next=%g is not in range -95 to +60' % t_month_next

    soil_heat_flux = 0.07 * (t_month_next - t_month_prev)
    return soil_heat_flux