def compute_DL_da_i(coeff_basis_sum, bases, time_index, i):
    """
    | Ref. Paper [LUDW2011]_ eq. [80]
    | Compute derivative of the attitude deviation wrt attitude params.
      See :meth:`compute_coeff_basis_sum`

    :param coeff_basis_sum: the sum :math:`\\sum_{n=L-M+1}^{L} a_n B_n(t_L)`
    :param bases: Bspline basis, B_n(t_L) in the equation above.
    :param time_index: [int] index that will get us to return B_n(t_L).
     Since we stored only B_n for all the observed times t_L, it is possible to
     access them only with the index
    :param i: number of the base that we want (**n in the equations above**)
    """
    dDL_da_i = -2 * coeff_basis_sum * bases[i, time_index]
    return dDL_da_i.reshape(4, 1)
