From c21e3e26cd4d52748e6b79c7ee56907883055841 Mon Sep 17 00:00:00 2001 From: Mohammed Mahdi Date: Thu, 23 May 2024 14:32:35 +0900 Subject: [PATCH] Implement dotplot_options Closes #33 --- conf/modules.config | 4 ++++ nextflow.config | 3 ++- nextflow_schema.json | 34 ++++++++++++++++++++++++++++------ 3 files changed, 34 insertions(+), 7 deletions(-) diff --git a/conf/modules.config b/conf/modules.config index 602b63a..f969491 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -25,6 +25,7 @@ process { withName: 'LAST_DOTPLOT_O2M' { ext.prefix = { "${meta.id}.o2m_plt" } + ext.args = { "--rot2=h --sort2=3 --strands2=1 ${params.dotplot_options}" } } withName: 'LAST_SPLIT_M2O' { @@ -44,14 +45,17 @@ process { withName: 'LAST_DOTPLOT_O2O' { ext.prefix = { "${meta.id}.o2o_plt" } + ext.args = { "--rot2=h --sort2=3 --strands2=1 ${params.dotplot_options}" } } withName: 'LAST_DOTPLOT_M2O' { ext.prefix = { "${meta.id}.m2o_plt" } + ext.args = { "--rot2=h --sort2=3 --strands2=1 ${params.dotplot_options}" } } withName: 'LAST_DOTPLOT_M2M' { ext.prefix = { "${meta.id}.m2m_plt" } + ext.args = { "--rot2=h --sort2=3 --strands2=1 ${params.dotplot_options}" } } withName: 'MULTIQC' { diff --git a/nextflow.config b/nextflow.config index 4e7a0b8..f4553ff 100644 --- a/nextflow.config +++ b/nextflow.config @@ -13,11 +13,12 @@ params { input = null target = null - // Skip dotplot + // Dotplot parameter skip_dotplot_m2m = false skip_dotplot_m2o = false skip_dotplot_o2m = false skip_dotplot_o2o = false + dotplot_options = '' // References genome = null diff --git a/nextflow_schema.json b/nextflow_schema.json index 8620e2e..8547384 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -26,7 +26,13 @@ "properties": { "seed": { "type": "string", - "enum": ["YASS", "NEAR", "MAM8", "RY128", "PSEUDO"], + "enum": [ + "YASS", + "NEAR", + "MAM8", + "RY128", + "PSEUDO" + ], "help_text": "--seed selects the name of the LAST seed The default (YASS) searches for \u201clong-and-weak similarities\u201d that \u201callow for mismatches but not gaps\u201d. Among alternatives, there are NEAR for \u201cshort-and-strong (near-identical) similarities \u2026 with many gaps (insertions and deletions)\u201d, MAM8 to find \u201cweak similarities with high sensitivity, but low speed and high memory usage\u201d or RY128 that \u201creduces run time and memory use, by only seeking seeds at ~1/128 of positions in each sequence\u201d, which is useful when the purpose of running this pipeline is only to generate whole-genome dotplots, or when sensitivity for tiny fragments may be unnecessary or undesirable. Setting the seed to PSEUDO triggers protein-to-DNA alignment mode (experimental).", "description": "The default (YASS) searches for \u201clong-and-weak similarities\u201d that \u201callow for mismatches but not gaps\u201d.", "default": "YASS" @@ -69,7 +75,11 @@ "type": "object", "fa_icon": "fas fa-terminal", "description": "Define where the pipeline should find input data and save output data.", - "required": ["input", "target", "outdir"], + "required": [ + "input", + "target", + "outdir" + ], "properties": { "input": { "type": "string", @@ -248,7 +258,14 @@ "description": "Method used to save pipeline results to output directory.", "help_text": "The Nextflow `publishDir` option specifies which intermediate files should be saved to the output directory. This option tells the pipeline what method should be used to move these files. See [Nextflow docs](https://www.nextflow.io/docs/latest/process.html#publishdir) for details.", "fa_icon": "fas fa-copy", - "enum": ["symlink", "rellink", "link", "copy", "copyNoFollow", "move"], + "enum": [ + "symlink", + "rellink", + "link", + "copy", + "copyNoFollow", + "move" + ], "hidden": true }, "email_on_fail": { @@ -359,7 +376,7 @@ }, "last_split_mismap": { "type": "string", - "default": 1e-5, + "default": 1e-05, "description": "By default, last-split runs with -m1e-5 to omit alignments with mismap probability > 10\u22125, but this can be overriden with the --last_split_mismap option." } } @@ -393,5 +410,10 @@ { "$ref": "#/definitions/new_group_1" } - ] -} + ], + "properties": { + "dotplot_options": { + "type": "string" + } + } +} \ No newline at end of file