diff --git a/definitions/detect_variants_nonhuman.wdl b/definitions/detect_variants_nonhuman.wdl old mode 100644 new mode 100755 index 5d0f571..70edc72 --- a/definitions/detect_variants_nonhuman.wdl +++ b/definitions/detect_variants_nonhuman.wdl @@ -63,6 +63,9 @@ workflow detectVariantsNonhuman { Array[String] variants_to_table_fields = ["CHROM", "POS", "ID", "REF", "ALT", "set", "AC", "AF"] Array[String] variants_to_table_genotype_fields = ["GT", "AD"] Array[String] vep_to_table_fields = [] + + Int? max_mm_qualsum_diff + Int? max_var_mm_qualsum } call m.mutect { @@ -77,7 +80,9 @@ workflow detectVariantsNonhuman { normal_bam_bai=normal_bam_bai, interval_list=roi_intervals, scatter_count=scatter_count, - fp_min_var_freq=fp_min_var_freq + fp_min_var_freq=fp_min_var_freq, + max_mm_qualsum_diff=max_mm_qualsum_diff, + max_var_mm_qualsum=max_var_mm_qualsum } call sapp.strelkaAndPostProcessing as strelka { @@ -94,7 +99,9 @@ workflow detectVariantsNonhuman { cpu_reserved=strelka_cpu_reserved, normal_sample_name=normal_sample_name, tumor_sample_name=tumor_sample_name, - fp_min_var_freq=fp_min_var_freq + fp_min_var_freq=fp_min_var_freq, + max_mm_qualsum_diff=max_mm_qualsum_diff, + max_var_mm_qualsum=max_var_mm_qualsum } call vpapp.varscanPreAndPostProcessing as varscan { @@ -114,7 +121,9 @@ workflow detectVariantsNonhuman { p_value=varscan_p_value, max_normal_freq=varscan_max_normal_freq, normal_sample_name=normal_sample_name, - tumor_sample_name=tumor_sample_name + tumor_sample_name=tumor_sample_name, + max_mm_qualsum_diff=max_mm_qualsum_diff, + max_var_mm_qualsum=max_var_mm_qualsum } call cv.combineVariants as combine { diff --git a/definitions/somatic_exome_nonhuman.wdl b/definitions/somatic_exome_nonhuman.wdl old mode 100644 new mode 100755 index 4493bb5..7236710 --- a/definitions/somatic_exome_nonhuman.wdl +++ b/definitions/somatic_exome_nonhuman.wdl @@ -71,6 +71,9 @@ workflow somaticExomeNonhuman { String tumor_sample_name String normal_sample_name + + Int? max_mm_qualsum_diff + Int? max_var_mm_qualsum } call aen.alignmentExomeNonhuman as tumorAlignmentAndQc { @@ -161,7 +164,9 @@ workflow somaticExomeNonhuman { vep_to_table_fields=vep_to_table_fields, tumor_sample_name=tumor_sample_name, normal_sample_name=normal_sample_name, - strelka_exome_mode=true + strelka_exome_mode=true, + max_mm_qualsum_diff=max_mm_qualsum_diff, + max_var_mm_qualsum=max_var_mm_qualsum } call btc.bamToCram as tumorBamToCram { diff --git a/definitions/subworkflows/fp_filter.wdl b/definitions/subworkflows/fp_filter.wdl old mode 100644 new mode 100755 index 2f6aa0a..1d1b73c --- a/definitions/subworkflows/fp_filter.wdl +++ b/definitions/subworkflows/fp_filter.wdl @@ -20,6 +20,8 @@ workflow fpFilter { String variant_caller String? sample_name Float? fp_min_var_freq + Int? max_mm_qualsum_diff + Int? max_var_mm_qualsum } call vs.vcfSanitize as sanitizeVcf { @@ -54,6 +56,8 @@ workflow fpFilter { vcf=index.indexed_vcf, sample_name=sample_name, fp_min_var_freq=fp_min_var_freq, + max_mm_qualsum_diff=max_mm_qualsum_diff, + max_var_mm_qualsum=max_var_mm_qualsum, output_vcf_basename = variant_caller + "_full" } diff --git a/definitions/subworkflows/mutect.wdl b/definitions/subworkflows/mutect.wdl old mode 100644 new mode 100755 index bf879e1..5f8c59a --- a/definitions/subworkflows/mutect.wdl +++ b/definitions/subworkflows/mutect.wdl @@ -23,6 +23,9 @@ workflow mutect { Int scatter_count String tumor_sample_name Float? fp_min_var_freq + + Int? max_mm_qualsum_diff + Int? max_var_mm_qualsum } call sil.splitIntervalList { @@ -66,7 +69,9 @@ workflow mutect { vcf_tbi=indexVcf.indexed_vcf_tbi, variant_caller="mutect", sample_name=tumor_sample_name, - fp_min_var_freq=fp_min_var_freq + fp_min_var_freq=fp_min_var_freq, + max_mm_qualsum_diff=max_mm_qualsum_diff, + max_var_mm_qualsum=max_var_mm_qualsum } output { diff --git a/definitions/subworkflows/strelka_and_post_processing.wdl b/definitions/subworkflows/strelka_and_post_processing.wdl old mode 100644 new mode 100755 index 11f4699..ca44aed --- a/definitions/subworkflows/strelka_and_post_processing.wdl +++ b/definitions/subworkflows/strelka_and_post_processing.wdl @@ -31,6 +31,10 @@ workflow strelkaAndPostProcessing { File? call_regions_tbi Float? fp_min_var_freq + + Int? max_mm_qualsum_diff + Int? max_var_mm_qualsum + } call s.strelka { @@ -99,7 +103,9 @@ workflow strelkaAndPostProcessing { vcf_tbi=regionFilter.filtered_vcf_tbi, sample_name=tumor_sample_name, variant_caller="strelka", - fp_min_var_freq=fp_min_var_freq + fp_min_var_freq=fp_min_var_freq, + max_mm_qualsum_diff=max_mm_qualsum_diff, + max_var_mm_qualsum=max_var_mm_qualsum } output { diff --git a/definitions/subworkflows/varscan_pre_and_post_processing.wdl b/definitions/subworkflows/varscan_pre_and_post_processing.wdl old mode 100644 new mode 100755 index 6c4d98c..7727fab --- a/definitions/subworkflows/varscan_pre_and_post_processing.wdl +++ b/definitions/subworkflows/varscan_pre_and_post_processing.wdl @@ -32,6 +32,10 @@ workflow varscanPreAndPostProcessing { Float? p_value Float? max_normal_freq Int scatter_count = 50 + + Int? max_mm_qualsum_diff + Int? max_var_mm_qualsum + } call sil.splitIntervalList { @@ -156,6 +160,8 @@ workflow varscanPreAndPostProcessing { vcf_tbi=index.indexed_vcf_tbi, fp_min_var_freq=varscan_min_var_freq, sample_name=tumor_sample_name, + max_mm_qualsum_diff=max_mm_qualsum_diff, + max_var_mm_qualsum=max_var_mm_qualsum, variant_caller="varscan" } diff --git a/definitions/tools/fp_filter.wdl b/definitions/tools/fp_filter.wdl old mode 100644 new mode 100755 index a5c3395..f6bb9b4 --- a/definitions/tools/fp_filter.wdl +++ b/definitions/tools/fp_filter.wdl @@ -12,6 +12,8 @@ task fpFilter { String output_vcf_basename = "fpfilter" String sample_name = "TUMOR" Float fp_min_var_freq = 0.05 + Int? max_mm_qualsum_diff + Int? max_var_mm_qualsum } Int space_needed_gb = 10 + round(size(vcf, "GB")*2 + size([reference, reference_fai, reference_dict, bam], "GB")) @@ -26,7 +28,17 @@ task fpFilter { String output_vcf = output_vcf_basename + ".vcf" command <<< - /usr/bin/perl /usr/bin/fpfilter.pl --bam-readcount /usr/bin/bam-readcount --samtools /opt/samtools/bin/samtools --output ~{output_vcf} --reference ~{reference} --bam-file ~{bam} --vcf-file ~{vcf} --sample ~{sample_name} --min-var-freq ~{fp_min_var_freq} + /usr/bin/perl /usr/bin/fpfilter.pl \ + --bam-readcount /usr/bin/bam-readcount \ + --samtools /opt/samtools/bin/samtools \ + --output ~{output_vcf} \ + --reference ~{reference} \ + --bam-file ~{bam} \ + --vcf-file ~{vcf} \ + --sample ~{sample_name} \ + --min-var-freq ~{fp_min_var_freq} \ + ~{if defined(max_mm_qualsum_diff) then "--max-mm-qualsum-diff ~{max_mm_qualsum_diff}" else ""} \ + ~{if defined(max_var_mm_qualsum) then "--max_var_mm_qualsum ~{max_var_mm_qualsum}" else ""} >>> output { diff --git a/workflows.zip b/workflows.zip old mode 100644 new mode 100755 index 4ebdcf1..7b36280 Binary files a/workflows.zip and b/workflows.zip differ