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)",
             },