def Effic_iStarDigraph(N, L):
    """
    Global efficiency of an incomplete star digraph (ultra-short limit).

    When the number of arcs is L < 2(N-1), three models compete for largest
    efficiency. Incomplete star digraphs consist of a star graph of size N' < N,
    with remaining nodes isolated. In case L is 'odd' then one arc links the
    central hub with one of the isolated vertices. This function returns the
    efficiency of such a digraph.

    Reference and citation
    ^^^^^^^^^^^^^^^^^^^^^^
    G. Zamora-López & R. Brasselet "Sizing complex networks" Commun Phys 2:144 (2019)

    Parameters
    ----------
    N : integer
        Number of nodes in the digraph.
    L : integer
        Number of directed arcs in the digraph. L <= 2(N-1) must be given.

    Returns
    -------
    efficiency : float.
        The efficiency of an incomplete star digraph.

    See Also
    --------
    Effic_USdigraph :
    Effic_iDirectedRing :
    Effic_FlowerDigraph :
    """
    if N < 2:
        raise ValueError('Network needs at least two nodes, N > 1')
    if L < 0:
        raise ValueError('L does not take negative values')
    if L > 2 * (N - 1):
        raise ValueError('L out of range, max(L) = 2*(N-1)')
    if L == 0:
        efficiency = 0.0
    else:
        Ltot = float(N * (N - 1))
        undL = int(L / 2)
        efficiency = 1.0 / Ltot * (L + 0.5 * undL * (L - undL - 1))
    return efficiency
