def gari(b2, b3, b4, b8):
    """
    Green Atmospherically Resistant Vegetation Index \
    (Gitelson, Kaufman and Merzlyak, 1996).

    .. math:: GARI = b8 - (b3 - (b2 - b4)) / b8 + (b3 - (b2 - b4))

    :param b2: Blue.
    :type b2: numpy.ndarray or float
    :param b3: Green.
    :type b3: numpy.ndarray or float
    :param b4: Red.
    :type b4: numpy.ndarray or float
    :param b8: NIR.
    :type b8: numpy.ndarray or float

    :returns GARI: Index value

    .. Tip::

       Gitelson, A. A., Kaufman, Y. J., & Merzlyak, M. N. (1996). Use of a \
       green channel in remote sensing of global vegetation from EOS-MODIS. \
       Remote Sensing of Environment, 58(3), 289–298. \
       doi:10.1016/s0034-4257(96)00072-7 
    """

    GARI = b8 - (b3 - (b2 - b4)) / b8 + (b3 - (b2 - b4))
    return GARI