detect_cross_contamination_precalled_vcfs
pipes/WDL/workflows/detect_cross_contamination_precalled_vcfs.wdl

WORKFLOW detect_cross_contamination_precalled_vcfs

File Path pipes/WDL/workflows/detect_cross_contamination_precalled_vcfs.wdl
WDL Version 1.0
Type workflow

Imports

Namespace Path
intrahost ../tasks/tasks_intrahost.wdl

Workflow: detect_cross_contamination_precalled_vcfs

Detect cross-contamination between samples using consensus-level and sub-consensus variation, from consensus genomes and pre-called LoFreq vcf files.

Author: Broad Viral Genomics
viral-ngs@broadinstitute.org

Inputs

Name Type Description Default
lofreq_vcfs Array[File]+ per-sample variant call files (VCF) called by LoFreq against reference_fasta -
genome_fastas Array[File]+ consensus sequences, one per file in aligned_bams, in corresponding order -
reference_fasta File Reference genome to which reads have been aligned, needed here for variant calling -
read_depths Array[File]? - -
masked_positions String? - -
masked_positions_file File? - -
plate_maps Array[File]? - -
plate_columns Int? - -
plate_rows Int? - -
17 optional inputs with default values

Outputs

Name Type Expression
contamination_report File detect_cross_contam.report
contamination_figures Array[File] detect_cross_contam.figures

Calls

This workflow calls the following tasks or subworkflows:

CALL TASKS detect_cross_contam → polyphonia_detect_cross_contamination

Input Mappings (3)
Input Value
lofreq_vcfs lofreq_vcfs
genome_fastas genome_fastas
reference_fasta reference_fasta

Images

Container images used by tasks in this workflow:

🐳 Parameterized Image
⚙️ Parameterized

Configured via input:
docker

Used by 1 task:
  • detect_cross_contam
← Back to Index

detect_cross_contamination_precalled_vcfs - Workflow Graph

🖱️ Scroll to zoom • Drag to pan • Double-click to reset • ESC to close

detect_cross_contamination_precalled_vcfs - WDL Source Code

version 1.0

import "../tasks/tasks_intrahost.wdl" as intrahost

workflow detect_cross_contamination_precalled_vcfs {
    meta {
        description: "Detect cross-contamination between samples using consensus-level and sub-consensus variation, from consensus genomes and pre-called LoFreq vcf files."
        author: "Broad Viral Genomics"
        email:  "viral-ngs@broadinstitute.org"
    }

    parameter_meta {
        lofreq_vcfs: {
            description: "per-sample variant call files (VCF) called by LoFreq against reference_fasta",
            patterns: ["*.vcf","*.vcf.gz"]
        }
        genome_fastas: {
            description: "consensus sequences, one per file in aligned_bams, in corresponding order",
            patterns: ["*.fasta"]
        }
        reference_fasta: {
            description: "Reference genome to which reads have been aligned, needed here for variant calling",
            patterns: ["*.fasta"]
        }

    }

    input {
        Array[File]+ lofreq_vcfs
        Array[File]+ genome_fastas
        File         reference_fasta
    }

    call intrahost.polyphonia_detect_cross_contamination as detect_cross_contam {
        input:
            lofreq_vcfs     = lofreq_vcfs,
            genome_fastas   = genome_fastas,
            reference_fasta = reference_fasta
    }

    output {
        File        contamination_report  = detect_cross_contam.report
        Array[File] contamination_figures = detect_cross_contam.figures
        # commented out until polyphonia can report its own version
        #String      polyphonia_version    = detect_cross_contam.polyphonia_version
    }
}