diff --git a/tools/accel_align/accel_align.rule.snakefile b/tools/accel_align/accel_align.rule.snakefile index aec3ef408bcb7646f78adac77016f775ac8d62ad..fa0411645c1efeec49fcb137e88d7ad5dfd81276 100755 --- a/tools/accel_align/accel_align.rule.snakefile +++ b/tools/accel_align/accel_align.rule.snakefile @@ -13,7 +13,7 @@ if config["SeOrPe"] == "PE": command = config["<step_name>__accel_align_PE_command"], #indexPrefix = config["<step_name>__accel_align_index_output_dir"]+"/index", #/patho_index/indexName.fna.hash - indexPrefix = lambda w, input: os.path.splitext([x for x in input.index ][0])[0], + indexPrefix = lambda w, input: os.path.splitext([x for x in input.index ][0]), accel_align_seed_length = config["<step_name>__accel_align_seed_length"], accel_align_insert_size = config["<step_name>__accel_align_insert_size"], accel_align_softclipping = "-s" if config["<step_name>__accel_align_softclipping"] else "", @@ -25,10 +25,11 @@ if config["SeOrPe"] == "PE": "-p {params.accel_align_insert_size} " "{params.accel_align_alignment_free} " "{params.accel_align_alignment_free} " + "-o {params.output_dir} " "{params.indexPrefix} " "{input.read} {input.read2} 2> {log} " "| samtools view -b 2>> {log} " - "| samtools sort -@ {threads} > {output.bam} 2>> {log} &&" + "| samtools sort -@ {threads} > {output.bam} 2>> {log} && " "samtools index -@ {threads} {output.bam} 2>> {log}" @@ -44,20 +45,22 @@ elif config["SeOrPe"] == "SE": threads: config["<step_name>__accel_align_threads"] params: + output_dir = config["results_dir"]+"/"+config["<step_name>__accel_align_SE_output_dir"] command = config["<step_name>__accel_align_PE_command"], accel_align_seed_length = config["<step_name>__accel_align_seed_length"], accel_align_softclipping = "-s" if config["<step_name>__accel_align_softclipping"] else "", accel_align_alignment_free = "-x" if config["<step_name>__accel_align_alignment_free"] else "", #indexPrefix = config["<step_name>__accel_align_index_output_dir"]+"/index", - indexPrefix = lambda w, input: os.path.splitext([x for x in input.index][0])[0], + indexPrefix = lambda w, input: os.path.splitext([x for x in input.index][0]), shell: "{params.command} " "-t {threads} " "-l {params.accel_align_seed_length} " "{params.accel_align_alignment_free} " "{params.accel_align_alignment_free} " + "-o {params.output_dir} " "{params.indexPrefix} " "{input.read} 2> {log} " "| samtools view -b 2>> {log} " - "| samtools sort -@ {threads} > {output.bam} 2>> {log} &&" + "| samtools sort -@ {threads} > {output.bam} 2>> {log} && " "samtools index -@ {threads} {output.bam} 2>> {log}" diff --git a/tools/accel_align/accel_align.yaml b/tools/accel_align/accel_align.yaml index b8e00a58dbfb2e3adbc14f081fe97cbac388bb94..14a14e23c4eee96ddd19aeb45533240f43b5c624 100755 --- a/tools/accel_align/accel_align.yaml +++ b/tools/accel_align/accel_align.yaml @@ -46,7 +46,7 @@ type: numeric, value: 1000, min: 10, - max: 400, + max: 4000, step: 10, label: "the maximum distance allowed between the paired-end reads (maximum read length supported are 512)", },