def _SID_call_prep(align_bams, items, ref_file, assoc_files, region=None, out_file=None):
    """Preparation work for SomaticIndelDetector.
    """
    base_config = items[0]["config"]
    for x in align_bams:
        bam.index(x, base_config)

    params = ["-R", ref_file, "-T", "SomaticIndelDetector", "-U", "ALLOW_N_CIGAR_READS"]
    # Limit per base read start count to between 200-10000, i.e. from any base
    # can no more 10000 new reads begin.
    # Further, limit maxNumberOfReads accordingly, otherwise SID discards
    # windows for high coverage panels.
    paired = vcfutils.get_paired_bams(align_bams, items)
    params += ["--read_filter", "NotPrimaryAlignment"]
    params += ["-I:tumor", paired.tumor_bam]
    min_af = float(get_in(paired.tumor_config, ("algorithm", "min_allele_fraction"), 10)) / 100.0
    if paired.normal_bam is not None:
        params += ["-I:normal", paired.normal_bam]
        # notice there must be at least 4 reads of coverage in normal
        params += ["--filter_expressions", "T_COV<6||N_COV<4||T_INDEL_F<%s||T_INDEL_CF<0.7" % min_af]
    else:
        params += ["--unpaired"]
        params += ["--filter_expressions", "COV<6||INDEL_F<%s||INDEL_CF<0.7" % min_af]
    if region:
        params += ["-L", bamprep.region_to_gatk(region), "--interval_set_rule",
                   "INTERSECTION"]
    return params
def _SID_call_prep ( align_bams , items , ref_file , assoc_files , region = None , out_file = None ) : base_config = items [ 0 ] [ "config" ] for x in align_bams : bam . index ( x , base_config ) params = [ "-R" , ref_file , "-T" , "SomaticIndelDetector" , "-U" , "ALLOW_N_CIGAR_READS" ] paired = vcfutils . get_paired_bams ( align_bams , items ) params += [ "--read_filter" , "NotPrimaryAlignment" ] params += [ "-I:tumor" , paired . tumor_bam ] min_af = float ( get_in ( paired . tumor_config , ( "algorithm" , "min_allele_fraction" ) , 10 ) ) / 100.0 if paired . normal_bam is not None : params += [ "-I:normal" , paired . normal_bam ] params += [ "--filter_expressions" , "T_COV<6||N_COV<4||T_INDEL_F<%s||T_INDEL_CF<0.7" % min_af ] else : params += [ "--unpaired" ] params += [ "--filter_expressions" , "COV<6||INDEL_F<%s||INDEL_CF<0.7" % min_af ] if region : params += [ "-L" , bamprep . region_to_gatk ( region ) , "--interval_set_rule" , "INTERSECTION" ] return params
Preparation work for SomaticIndelDetector.