Mercurial > repos > wolma > mimodd
diff snap_caller.xml @ 0:7da2c9654a83 draft default tip
Uploaded
| author | wolma |
|---|---|
| date | Tue, 12 Aug 2014 11:26:15 -0400 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/snap_caller.xml Tue Aug 12 11:26:15 2014 -0400 @@ -0,0 +1,221 @@ +<tool id="snap_caller" name="SNAP Read Alignment"> + <description>Map sequence reads to a reference genome using SNAP</description> + <requirements> + <requirement type="package" version="3.4.1">python3</requirement> + <requirement type="package" version="0.1.3_9af04e0e9125">MiModD</requirement> + </requirements> + <command> + mimodd snap_batch -s + ## SNAP calls (considering different cases) + + #for $i in $datasets + "snap ${i.mode_choose.mode} $ref_genome + #if $str($i.mode_choose.mode) == "paired" and $str($i.mode_choose.input.iformat) in ("fastq", "gz"): +${i.mode_choose.input.ifile1} ${i.mode_choose.input.ifile2} + #else: +${i.mode_choose.input.ifile} + #end if +--outputfile $outputfile --iformat ${i.mode_choose.input.iformat} --oformat $oformat +--idx_seedsize $set.seedsize +--idx_slack $set.slack --maxseeds $set.maxseeds --maxhits $set.maxhits --clipping=$set.clipping --maxdist $set.maxdist --confdiff $set.confdiff + #if $i.mode_choose.input.header: +--header ${i.mode_choose.input.header} + #end if + #if $str($i.mode_choose.mode) == "paired": +--spacing $set.sp_min $set.sp_max + #end if + #if $str($set.selectivity) != "off": +--selectivity $set.selectivity + #end if + #if $str($set.filter_output) != "off": +--filter_output $set.filter_output + #end if + #if $str($set.sort) != "off": +--sort $set.sort + #end if + #if $str($set.mmatch_notation) == "general": +-M + #end if +--max_mate_overlap $set.max_mate_overlap +--verbose +" + #end for + </command> + + <inputs> + ## mandatory arguments (and mode-conditionals) + + <param name="ref_genome" type="data" format="fasta" label="reference genome" help="The fasta reference genome that SNAP should align reads against; a SNAP index will be built by the tool automatically."/> + + <repeat name="datasets" title="datasets" default="1" min="1"> + <conditional name="mode_choose"> + <param name="mode" type="select" label="choose mode" help="Reads obtained from single-end sequencing runs should be aligned in 'single' mode, paired-end reads in 'paired' mode. **WARNING**: if the read input file is in SAM/BAM format, the current version of this tool will **not** verify the mode and may produce erroneous alignments with wrong settings!"> + <option value="single">single-end</option> + <option value="paired">paired-end</option> + </param> + + <when value="single"> + <conditional name="input"> + <param name="iformat" type="select" label="input file format"> + <option value="bam">BAM</option> + <option value="sam">SAM</option> + <option value="gz">gz</option> + <option value="fastq">fastq</option> + </param> + <when value="bam"> + <param name="ifile" type="data" format="bam" label="input file"/> + <param name="header" type="data" optional="true" format="sam" label="custom header file" /> + </when> + <when value="sam"> + <param name="ifile" type="data" format="sam" label="input file"/> + <param name="header" type="data" optional="true" format="sam" label="custom header file" /> + </when> + <when value="gz"> + <param name="ifile" type="data" label="input file"/> + <param name="header" type="data" format="sam" label="header file" /> + </when> + <when value="fastq"> + <param name="ifile" type="data" format="fastq" label="input file"/> + <param name="header" type="data" format="sam" label="header file" /> + </when> + </conditional> + </when> + <when value="paired"> + <conditional name="input"> + <param name="iformat" type="select" label="input file format"> + <option value="bam">BAM</option> + <option value="sam">SAM</option> + <option value="gz">gz</option> + <option value="fastq">fastq</option> + </param> + <when value="bam"> + <param name="ifile" type="data" format="bam" label="input file"/> + <param name="header" type="data" optional="true" format="sam" label="custom header file" /> + </when> + <when value="sam"> + <param name="ifile" type="data" format="sam" label="input file"/> + <param name="header" type="data" optional="true" format="sam" label="custom header file" /> + </when> + <when value="fastq"> + <param name="ifile1" type="data" format="fastq" label="input file 1"/> + <param name="ifile2" type="data" format="fastq" label="input file 2"/> + <param name="header" type="data" format="sam" label="header file" /> + </when> + <when value="gz"> + <param name="ifile1" type="data" label="input file 1"/> + <param name="ifile2" type="data" label="input file 2"/> + <param name="header" type="data" format="sam" label="header file" /> + </when> + </conditional> + </when> + </conditional> + </repeat> + + <param name="oformat" type="select" label="output file format"> + <option value="bam">BAM</option> + <option value="sam">SAM</option> + </param> + + ## optional arguments + + <conditional name="set"> + <param name="settings_mode" type="select" label="further parameter settings" help="This section lets you specify the detailed parameter settings for the SNAP aligner. Only change them if you know what you are doing, i.e., read the SNAP manual first."> + <option value="default">default settings</option> + <option value="change">change settings</option> + </param> + + ## default settings + + <when value="default"> + <param name="seedsize" type="hidden" value="20"/> + <param name="slack" type="hidden" value="0.3"/> + <param name="sp_min" type="hidden" value="100"/> + <param name="sp_max" type="hidden" value="10000"/> + <param name="maxdist" type="hidden" value="8"/> + <param name="confdiff" type="hidden" value="2"/> + + <param name="maxseeds" type="hidden" value="25"/> + <param name="maxhits" type="hidden" value="250"/> + <param name="clipping" type="hidden" value="++"/> + + <param name="selectivity" type="hidden" value="off"/> + <param name="filter_output" type="hidden" value="off"/> + <param name="sort" type="hidden" value="0"/> + <param name="mmatch_notation" type="hidden" value="general"/> + <param name="max_mate_overlap" type="hidden" value="0" /> + </when> + + ## change settings + + <when value="change"> + <param name="seedsize" type="integer" value="20" label="seed size (default: 20)" help="Length of the seeds used in the reference genome hash table (SNAP index option -s)."/> + <param name="slack" type="float" value="0.3" label="hash table slack size (default: 0.3)" help="Corresponds to the -h option of SNAP index."/> + + ## paired-end specific options + <param name="sp_min" type="integer" value="100" label="minimum spacing to allow between paired ends (default: 100)" help="Corresponds to the first value of the SNAP option -s."/> + <param name="sp_max" type="integer" value="10000" label="maximum spacing to allow between paired ends (default: 10000)" help="Corresponds to the second value of the SNAP option -s."/> + <param name="max_mate_overlap" type="float" value="0" label="Maximal overlap between the reads in a pair (as a fraction of their combined length; default: 0, no overlap allowed)" help="If the reads of a read pair overlap by more than this fraction of their combined length, they are filtered out" /> + + <param name="maxdist" type="integer" value="8" label="edit distance (default: 8)" help="maximum edit distance allowed per read or pair (SNAP option -d); higher values allow more divergent alignments to be found, but increase the rate of misalignments."/> + <param name="confdiff" type="integer" value="2" label="confidence threshold (default: 2)" help="Confidence threshold (SNAP option -c); the minimum edit distance difference between two alternate alignments required to reject the poorer alignment as suboptimal; higher values increase the rate of ambiguously aligned reads."/> + <param name="maxseeds" type="integer" value="25" label="maximum seeds per read (default: 25)" help="Number of seeds to use per read (SNAP option -n) when trying to match it to the reference genome; higher numbers will increase the rate of aligned reads and reduce the rate of misalignments, but will reduce performance."/> + <param name="maxhits" type="integer" value="250" label="maximum hits per seed (default: 250)" help="Maximum hits to consider per seed (SNAP option -h); don't use a seed region in the alignment process if it matches more than maxhits regions in the reference genome. Higher values reduce the rate of misalignments, but reduce performance."/> + <param name="clipping" type="select" label="read clipping (default: from back and front)" help="Specifies from which end of a read low-quality bases should be clipped (SNAP option -Cxx)"> + <option value="++">from back and front</option> + <option value="-+">from back only</option> + <option value="+-">from front only</option> + <option value="--">no clipping</option> + </param> + <param name="selectivity" type="integer" value="1" label="selectivity (default: 1)" help="randomly choose 1/selectivity of the reads to score (SNAP option -S). The tool uses the default of 1 (or a 0 setting) to indicate that all reads should be worked with." /> + <param name="filter_output" type="select" label="filter output (default: no filtering)" help="filter output (SNAP option -F for certain classes of reads."> + <option value="off">no filtering</option> + <option value="a">aligned only</option> + <option value="s">single-aligned only</option> + <option value="u">unaligned only</option> + </param> + <param name="sort" type="select" label="output sorting (default: sort by read coordinates)" help="Sort the output file by alignment location (SNAP option --so)."> + <option value="0">sort by read coordinates</option> + <option value="off">no sorting</option> + </param> + <param name="mmatch_notation" type="select" label="CIGAR symbols for alignment matches/mismatches (default: M notation)" help="Indicates whether CIGAR strings in the generated SAM/BAM file should use M (alignment match) rather than = and X (sequence (mis-)match). Warning: Downstream variant calling based on samtools currently relies on the old-style M notation!!" > + <option value="general">use M for both matches and mismatches</option> + <option value="differentiate">use = for matches, X for mismatches</option> + </param> + </when> + </conditional> +</inputs> + +<outputs> + <data name="outputfile" format="bam" label="Aligned reads from MiModd ${tool.name} on ${on_string}"> + <change_format> + <when input="oformat" value="sam" format="sam"/> + </change_format> + </data> +</outputs> + +<help> +.. class:: infomark + + **What it does** + +The tool aligns the sequenced reads in an arbitrary number of input files against a common reference genome and stores the results in a single, possibly multi-sample output file. + +It does so by using the ultrafast, hashtable-based aligner SNAP, but unless you want to change aligner-specific options you do not have to know anything about this implementation detail. + +**Notes:** + +1) The tool requires that each input file contains adequate header information (i.e. metadata about the read groups and samples it encodes). The *custom header file* is offered as an **optional choice** for input files that **may** contain such header information, but you **must** specify it if your specific file does not provide the information. You **can** also provide a header file for an input file with header information, in which case the custom header will overwrite the existing header of the input file. + +2) Currently, you cannot configure aligner-specific options separately for specific input files from within this Galaxy tool. If you need this advanced level of control, you should use the command line tool ``mimodd snap_batch``. + +</help> +</tool> + + + + + + + + +
