From 00ff6abc34787fba64f69355b0cc81461a9b9cbf Mon Sep 17 00:00:00 2001 From: Gianna Pohl Date: Tue, 6 Feb 2024 09:10:11 +0100 Subject: [PATCH] changed reference passing for easier submodule usage --- main.nf | 22 +++++++++++----------- modules/02_bwa_aln.nf | 14 +++++++++----- modules/02_bwa_mem.nf | 6 ++++-- modules/02_bwa_mem_2.nf | 6 ++++-- modules/02_star.nf | 5 +++-- 5 files changed, 31 insertions(+), 22 deletions(-) diff --git a/main.nf b/main.nf index 41aa6bb..d9cac7e 100755 --- a/main.nf +++ b/main.nf @@ -78,25 +78,25 @@ workflow { // alignment if (params.algorithm == "aln" && !params.inception) { - BWA_ALN(trimmed_fastqs.map {name, fq1, fq2 -> tuple(name, fq1)}) - BWA_ALN_2(trimmed_fastqs.map {name, fq1, fq2 -> tuple(name, fq2)}) - BWA_SAMPE(BWA_ALN.out.alignment_output.join(BWA_ALN_2.out.alignment_output)) + BWA_ALN(trimmed_fastqs.map {name, fq1, fq2 -> tuple(name, fq1)},params.reference) + BWA_ALN_2(trimmed_fastqs.map {name, fq1, fq2 -> tuple(name, fq2)},params.reference) + BWA_SAMPE(BWA_ALN.out.alignment_output.join(BWA_ALN_2.out.alignment_output),params.reference) output_bams = BWA_SAMPE.out.bams } else if (params.algorithm == "aln" && params.inception) { - BWA_ALN_INCEPTION(trimmed_fastqs) + BWA_ALN_INCEPTION(trimmed_fastqs,params.reference) output_bams = BWA_ALN_INCEPTION.out.bams } else if (params.algorithm == "mem") { - BWA_MEM(trimmed_fastqs) + BWA_MEM(trimmed_fastqs,params.reference) output_bams = BWA_MEM.out.bams } else if (params.algorithm == "mem2") { - BWA_MEM_2(trimmed_fastqs) + BWA_MEM_2(trimmed_fastqs,params.reference) output_bams = BWA_MEM_2.out.bams } else if (params.algorithm == "star") { - STAR(trimmed_fastqs) + STAR(trimmed_fastqs,params.reference) output_bams = STAR.out.bams } else { @@ -112,20 +112,20 @@ workflow { trimmed_fastqs = FASTP_SINGLE.out.trimmed_fastqs } if (params.algorithm == "aln" && !params.inception) { - BWA_ALN(trimmed_fastqs) + BWA_ALN(trimmed_fastqs,params.reference) BWA_SAMSE(BWA_ALN.out.alignment_output) output_bams = BWA_SAMSE.out.bams } else if (params.algorithm == "mem") { - BWA_MEM_SE(trimmed_fastqs) + BWA_MEM_SE(trimmed_fastqs,params.reference) output_bams = BWA_MEM_SE.out.bams } else if (params.algorithm == "mem2") { - BWA_MEM_2_SE(trimmed_fastqs) + BWA_MEM_2_SE(trimmed_fastqs,params.reference) output_bams = BWA_MEM_2_SE.out.bams } else if (params.algorithm == "star") { - STAR_SE(trimmed_fastqs) + STAR_SE(trimmed_fastqs,params.reference) output_bams = STAR_SE.out.bams } else { diff --git a/modules/02_bwa_aln.nf b/modules/02_bwa_aln.nf index c960ab2..c7381d8 100644 --- a/modules/02_bwa_aln.nf +++ b/modules/02_bwa_aln.nf @@ -9,13 +9,14 @@ process BWA_ALN { input: tuple val(name), file(fastq) + val(reference) output: tuple val("${name}"), file("${fastq}"), file("${fastq.baseName}.sai"), emit: alignment_output file("software_versions.BWA_ALN.txt") """ - bwa aln -t ${task.cpus} ${params.reference} ${fastq} > ${fastq.baseName}.sai + bwa aln -t ${task.cpus} ${reference} ${fastq} > ${fastq.baseName}.sai echo ${params.manifest} >> software_versions.BWA_ALN.txt echo "bwa=0.7.17" >> software_versions.BWA_ALN.txt @@ -34,13 +35,14 @@ process BWA_SAMPE { input: // joins both channels by key using the first element in the tuple, the name tuple val(name), file(fastq1), file(sai1), file(fastq2), file(sai2) + val(reference) output: tuple val("${name}"), file("${name}.bam"), emit: bams file("software_versions.BWA_SAMPE.txt") """ - bwa sampe ${params.reference} ${sai1} ${sai2} ${fastq1} ${fastq2} | samtools view -uS - | samtools sort - > ${name}.bam + bwa sampe ${reference} ${sai1} ${sai2} ${fastq1} ${fastq2} | samtools view -uS - | samtools sort - > ${name}.bam echo ${params.manifest} >> software_versions.BWA_SAMPE.txt echo "bwa=0.7.17" >> software_versions.BWA_SAMPE.txt @@ -60,13 +62,14 @@ process BWA_SAMSE { input: // joins both channels by key using the first element in the tuple, the name tuple val(name), file(fastq), file(sai) + val(reference) output: tuple val("${name}"), file("${name}.bam"), emit: bams file("software_versions.BWA_SAMSE.txt") """ - bwa samse ${params.reference} ${sai} ${fastq} | samtools view -uS - | samtools sort - > ${name}.bam + bwa samse ${reference} ${sai} ${fastq} | samtools view -uS - | samtools sort - > ${name}.bam echo ${params.manifest} >> software_versions.BWA_SAMSE.txt echo "bwa=0.7.17" >> software_versions.BWA_SAMSE.txt @@ -86,14 +89,15 @@ process BWA_ALN_INCEPTION { input: // joins both channels by key using the first element in the tuple, the name tuple val(name), file(fastq1), file(fastq2) + val(reference) output: tuple val("${name}"), file("${name}.bam"), emit: bams file("software_versions.BWA_ALN_INCEPTION.txt") """ - bwa sampe ${params.reference} <( bwa aln -t ${params.cpus} ${params.reference} ${fastq1} ) \ - <( bwa aln -t ${params.cpus} ${params.reference} ${fastq2} ) ${fastq1} ${fastq2} \ + bwa sampe ${reference} <( bwa aln -t ${params.cpus} ${reference} ${fastq1} ) \ + <( bwa aln -t ${params.cpus} ${reference} ${fastq2} ) ${fastq1} ${fastq2} \ | samtools view -uS - | samtools sort - > ${name}.bam echo ${params.manifest} >> software_versions.BWA_ALN_INCEPTION.txt diff --git a/modules/02_bwa_mem.nf b/modules/02_bwa_mem.nf index ac1b6b0..93bf7ce 100644 --- a/modules/02_bwa_mem.nf +++ b/modules/02_bwa_mem.nf @@ -10,13 +10,14 @@ process BWA_MEM { input: tuple val(name), file(fastq1), file(fastq2) + val(reference) output: tuple val("${name}"), file("${name}.bam"), emit: bams file("software_versions.BWA_MEM.txt") """ - bwa mem ${params.additional_args} -t ${task.cpus} ${params.reference} ${fastq1} ${fastq2} | samtools view -uS - | samtools sort - > ${name}.bam + bwa mem ${params.additional_args} -t ${task.cpus} ${reference} ${fastq1} ${fastq2} | samtools view -uS - | samtools sort - > ${name}.bam echo ${params.manifest} >> software_versions.BWA_MEM.txt echo "bwa=0.7.17" >> software_versions.BWA_MEM.txt @@ -36,13 +37,14 @@ process BWA_MEM_SE { input: // joins both channels by key using the first element in the tuple, the name tuple val(name), file(fastq) + val(reference) output: tuple val("${name}"), file("${name}.bam"), emit: bams file("software_versions.BWA_MEM_SE.txt") """ - bwa mem ${params.additional_args} -t ${task.cpus} ${params.reference} ${fastq} | samtools view -uS - | samtools sort - > ${name}.bam + bwa mem ${params.additional_args} -t ${task.cpus} ${reference} ${fastq} | samtools view -uS - | samtools sort - > ${name}.bam echo ${params.manifest} >> software_versions.BWA_MEM_SE.txt echo "bwa=0.7.17" >> software_versions.BWA_MEM_SE.txt diff --git a/modules/02_bwa_mem_2.nf b/modules/02_bwa_mem_2.nf index e61f606..03a5034 100755 --- a/modules/02_bwa_mem_2.nf +++ b/modules/02_bwa_mem_2.nf @@ -10,13 +10,14 @@ process BWA_MEM_2 { input: tuple val(name), file(fastq1), file(fastq2) + val(reference) output: tuple val("${name}"), file("${name}.bam"), emit: bams file("software_versions.BWA_MEM_2.txt") """ - bwa-mem2 mem ${params.additional_args} -t ${task.cpus} ${params.reference} ${fastq1} ${fastq2} | samtools view -uS - | samtools sort - > ${name}.bam + bwa-mem2 mem ${params.additional_args} -t ${task.cpus} ${reference} ${fastq1} ${fastq2} | samtools view -uS - | samtools sort - > ${name}.bam echo ${params.manifest} >> software_versions.BWA_MEM_2.txt bwa-mem2 version >> software_versions.BWA_MEM_2.txt @@ -36,13 +37,14 @@ process BWA_MEM_2_SE { input: // joins both channels by key using the first element in the tuple, the name tuple val(name), file(fastq) + val(reference) output: tuple val("${name}"), file("${name}.bam"), emit: bams file("software_versions.BWA_MEM_2_SE.txt") """ - bwa-mem2 mem ${params.additional_args} -t ${task.cpus} ${params.reference} ${fastq} | samtools view -uS - | samtools sort - > ${name}.bam + bwa-mem2 mem ${params.additional_args} -t ${task.cpus} ${reference} ${fastq} | samtools view -uS - | samtools sort - > ${name}.bam echo ${params.manifest} >> software_versions.BWA_MEM_2_SE.txt bwa-mem2 version >> software_versions.BWA_MEM_2_SE.txt diff --git a/modules/02_star.nf b/modules/02_star.nf index 948bb06..bd2d3e8 100644 --- a/modules/02_star.nf +++ b/modules/02_star.nf @@ -18,7 +18,7 @@ process STAR { script: two_pass_mode_param = params.star_two_pass_mode ? "--twopassMode Basic" : "" """ - STAR --genomeDir ${params.reference} ${two_pass_mode_param} ${params.additional_args} \ + STAR --genomeDir ${reference} ${two_pass_mode_param} ${params.additional_args} \ --readFilesCommand "gzip -d -c -f" \ --readFilesIn ${fastq1} ${fastq2} \ --outSAMmode Full \ @@ -48,6 +48,7 @@ process STAR_SE { input: tuple val(name), file(fastq) + val(reference) output: tuple val("${name}"), file("${name}.bam"), emit: bams @@ -56,7 +57,7 @@ process STAR_SE { script: two_pass_mode_param = params.star_two_pass_mode ? "--twopassMode Basic" : "" """ - STAR --genomeDir ${params.reference} ${two_pass_mode_param} ${params.additional_args} \ + STAR --genomeDir ${reference} ${two_pass_mode_param} ${params.additional_args} \ --readFilesCommand "gzip -d -c -f" \ --readFilesIn ${fastq} \ --outSAMmode Full \