def get_cell_efficiency(temp_a=None, global_tilted_surf=800.0, wind_speed=
    1.0, area=1.0, eff_cell=None, thermal_loss=0.004, temp_ref=298.15,
    temp_cell_noct=319.15, nominal_power=None):
    """Get temperature dependent cell efficiency.

    :param temp_a: Surface air temperature (K).
      If None, the temperature of the cell is considered to be the same
      as the reference temperature temp_ref.
      Default is None.
    :param global_tilted_surf: Global tilted radiation (W/m2, or Wh/m2/h).
      Default is the :py:obj:`global_tilted_surf` at
      Nominal Operating Cell Temperature (_noct).
    :param wind_speed: Magnitude of the wind velocity (m/s).
    :param area: Area of each module (m2). Default is 1 (m2).
      (inverter, array and power conditionning, etc.). Default is 0.86.
    :param eff_cell: Efficiency of the cell at the reference temperature
      temp_ref. If None, compute it from the nominal power. Default is None.
    :param thermal_loss: Efficiency loss per degree Kelvin
      away from the reference temperature. Default is
      :math:`0.0041~\\mathrm{K}^{-1}`.
    :param temp_ref: Reference temperature (K). Default 298.15 K.
    :param temp_cell_noct: Cell temperature at _noct (K). Default is 319.15 K.
    :param nominal_power: Nominal power of the module (W). See note.
      Only used to compute the efficiency of the cell eff_cell
      at the reference temperature temp_ref if eff_cell is not given.
    :type temp_a: (sequence of) :py:class:`float`
    :type global_tilted_surf: (sequence of) :py:class:`float`
    :type wind_speed: (sequence of) :py:class:`float`
    :type area: float
    :type eff_cell: float
    :type thermal_loss: float
    :type temp_ref: float
    :type temp_cell_noct: float
    :type nominal_power: float

    :returns: Temperature dependent cell efficiency.
    :rtype: (sequence of) float)

    .. note::
        * The thermal model of Duffie and Beckman (2013)
          is used here to compute the efficiency of the cell
          for a given ambient temperature.
        * The global tilted radiation :py:obj:`global_tilted_surf` should be
          given as power in W/m2, or as averaged power in Wh/m2/h to avoid
          erros in cell efficiency computations.

    .. seealso::
        Duffie, J.A., Beckman, W.A., 2013.
        *Solar Energy and Thermal Processes*, fourth ed. Wiley, Hoboken, NJ.
    """
    global_tilted_surf_noct = 800.0
    temp_a_noct = 293.15
    ir_std = 1000.0
    if eff_cell is None:
        eff_cell = nominal_power / ir_std / area
    if temp_a is None:
        temp_cell = temp_ref
    else:
        loss_ratio = 9.5 / (5.7 + 3.8 * wind_speed)
        temp_cell = (temp_a + global_tilted_surf / global_tilted_surf_noct *
            loss_ratio * (temp_cell_noct - temp_a_noct))
    eff_cell_t = eff_cell * (1 - thermal_loss * (temp_cell - temp_ref))
    try:
        eff_cell_t.name = 'cell_efficiency'
        eff_cell_t.attrs['long_name'] = 'Wheather Dependent Cell Efficiency'
        eff_cell_t.attrs['units'] = ''
    except AttributeError:
        pass
    return eff_cell_t
