aggregate default fpf values and user-defined fpf values where enrichment factor calculations will be attempted.
    :param options:
    :param score_structure:
    :return:

def make_fpfList(options, score_structure):
    """
    aggregate default fpf values and user-defined fpf values where enrichment factor calculations will be attempted.
    :param options:
    :param score_structure:
    :return:
    """

    # set variables
    fpf = options.fpf
    n = len([x[4] for x in score_structure if x[3] == '0'])   # Total no. of decoys

    # Default fpf values. We include 1, to ensure that the ef dictionary in the results dictionary objects contains
    # the total number of decoys in the set, which is required in the screener.find_best_ensemble method
    fpf_list = [0.0001, 0.001, 0.01, 0.05, 1]

    if fpf and fpf not in fpf_list:
        fpf_list.append(float(fpf))

    if not fpf:
        fpf = float(1) / n
        fpf_list.append(fpf)

    fpf_list.sort()

    return fpf_list