def remove_sub_threshold(Param, Sys__Nucsvec, w):
    """ remove_sub_threshold(Sys__Nucsvec,w)

    in:  Sys__Nucsvec          (vector with all isotope combinations)
         w                    (vector with the corresponding weighting factors)

    Caution: Works directly on the passed variables due to call by reference.
    Deletes all isotopes combinations with a combined probability below the
    defined threshold. The threshold is defined as global variable at the top
    of this file and is called abund_threshold.
    """
    s = len(Sys__Nucsvec) - 1
    for s in range(s, -1, -1):
        if w[s] < Param.abund_threshold:
            del Sys__Nucsvec[s]
            del w[s]
    return
