comparison hisat2.xml @ 14:526b91fbde60 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/hisat2 commit 5d57e4f6fdaed9e042c334fbe76f3f41ceb4fbc2
author iuc
date Wed, 19 Jul 2017 04:57:27 -0400
parents f4fa77189eb0
children d5fe9aead222
comparison
equal deleted inserted replaced
13:f4fa77189eb0 14:526b91fbde60
3 <description>A fast and sensitive alignment program</description> 3 <description>A fast and sensitive alignment program</description>
4 <macros> 4 <macros>
5 <import>hisat2_macros.xml</import> 5 <import>hisat2_macros.xml</import>
6 </macros> 6 </macros>
7 <requirements> 7 <requirements>
8 <!-- Conda dependency -->
9 <requirement type="package" version="2.0.5">hisat2</requirement> 8 <requirement type="package" version="2.0.5">hisat2</requirement>
10 <requirement type="package" version="1.4">samtools</requirement> 9 <requirement type="package" version="1.4">samtools</requirement>
11 </requirements> 10 </requirements>
12 <stdio> 11 <stdio>
13 <regex match="hisat2-align exited with value 1" source="both" level="fatal"/> 12 <regex level="fatal" match="hisat2-align exited with value 1" source="both" />
14 <regex match="hisat2: not found" source="both" level="fatal"/> 13 <regex level="fatal" match="hisat2: not found" source="both" />
15 <exit_code range="1:" /> 14 <exit_code range="1:" />
16 </stdio> 15 </stdio>
17 <version_command>hisat2 --version</version_command> 16 <version_command>hisat2 --version</version_command>
18 <command><![CDATA[ 17 <command><![CDATA[
19 #if str($spliced_options.spliced_options_selector) == "advanced" and str($spliced_options.known_splice_gtf) != 'None': 18 #if str($spliced_options.spliced_options_selector) == "advanced" and str($spliced_options.known_splice_gtf) != 'None':
29 #set index_path = 'genome' 28 #set index_path = 'genome'
30 #else: 29 #else:
31 #set index_path = $reference_genome.index.fields.path 30 #set index_path = $reference_genome.index.fields.path
32 #end if 31 #end if
33 hisat2 -p \${GALAXY_SLOTS:-1} -x '${index_path}' 32 hisat2 -p \${GALAXY_SLOTS:-1} -x '${index_path}'
34 #if str($input_format.paired.paired_selector) != 'single': 33 #if str($input_format.paired.paired_selector) == 'paired':
35 -1 '${read1}' -2 '${read2}' 34 -1 '${read1}' -2 '${read2}'
36 @paired_end_options@ 35 @paired_end_options@
37 #else: 36 #else:
38 -U '${read1}' 37 -U '${read1}'
39 #if str( $input_format.paired.unaligned_file ) == "true": 38 #if str( $input_format.paired.unaligned_file ) == "true":
40 #if $compressed == "GZ": 39 #if $compressed == "GZ":
41 --un-gz '$output_unaligned_reads_l' 40 --un-gz '$output_unaligned_reads'
42 #else if $compressed == "BZ2": 41 #else if $compressed == "BZ2":
43 --un-bz2 '$output_unaligned_reads_l' 42 --un-bz2 '$output_unaligned_reads'
44 #else: 43 #else:
45 --un '$output_unaligned_reads_l' 44 --un '$output_unaligned_reads'
46 #end if 45 #end if
47 #end if 46 #end if
48 #if str( $input_format.paired.aligned_file ) == "true": 47 #if str( $input_format.paired.aligned_file ) == "true":
49 #if $compressed == "GZ": 48 #if $compressed == "GZ":
50 --al-gz '$output_aligned_reads_l' 49 --al-gz '$output_aligned_reads'
51 #else if $compressed == "BZ2": 50 #else if $compressed == "BZ2":
52 --al-bz2 '$output_aligned_reads_l' 51 --al-bz2 '$output_aligned_reads'
53 #else: 52 #else:
54 --al '$output_aligned_reads_l' 53 --al '$output_aligned_reads'
55 #end if 54 #end if
56 #end if 55 #end if
57 #end if 56 #end if
58 #if $input_format.input_format_selector == 'fasta': 57 #if $input_format.input_format_selector == 'fasta':
59 -f 58 -f
111 #if str($paired_options.paired_options_selector) == "advanced": 110 #if str($paired_options.paired_options_selector) == "advanced":
112 --minins ${paired_options.minins} --maxins ${paired_options.maxins} ${paired_options.no_mixed} ${paired_options.no_discordant} 111 --minins ${paired_options.minins} --maxins ${paired_options.maxins} ${paired_options.no_mixed} ${paired_options.no_discordant}
113 ${paired_options.dovetail} ${paired_options.contain} ${paired_options.overlap} 112 ${paired_options.dovetail} ${paired_options.contain} ${paired_options.overlap}
114 #end if 113 #end if
115 | samtools sort - -@ \${GALAXY_SLOTS:-1} -l 6 -o '${output_alignments}' 114 | samtools sort - -@ \${GALAXY_SLOTS:-1} -l 6 -o '${output_alignments}'
116
117 ## Rename any output fastq files 115 ## Rename any output fastq files
118 #if str($input_format.paired.paired_selector) == 'paired' or str($input_format.paired.paired_selector) == 'paired_collection': 116 #if $output_unaligned_reads_l and $output_unaligned_reads_r:
119 #if $output_unaligned_reads_l and $output_unaligned_reads_r: 117 #set left = str($output_unaligned_reads_l).replace(".dat", ".1.dat")
120 #set left = str($output_unaligned_reads_l).replace(".dat", ".1.dat") 118 #set right = str($output_unaligned_reads_l).replace(".dat", ".2.dat")
121 #set right = str($output_unaligned_reads_l).replace(".dat", ".2.dat") 119 && mv '${left}' '${output_unaligned_reads_l}'
122 && mv '${left}' '${output_unaligned_reads_l}' 120 && mv '${right}' '${output_unaligned_reads_r}'
123 && mv '${right}' '${output_unaligned_reads_r}' 121 #end if
124 #end if 122 #if $output_aligned_reads_l and $output_aligned_reads_r:
125 #if $output_aligned_reads_l and $output_aligned_reads_r: 123 #set left = str($output_aligned_reads_l).replace(".dat", ".1.dat")
126 #set left = str($output_aligned_reads_l).replace(".dat", ".1.dat") 124 #set right = str($output_aligned_reads_l).replace(".dat", ".2.dat")
127 #set right = str($output_aligned_reads_l).replace(".dat", ".2.dat") 125 && mv '${left}' '${output_aligned_reads_l}'
128 && mv '${left}' '${output_aligned_reads_l}' 126 && mv '${right}' '${output_aligned_reads_r}'
129 && mv '${right}' '${output_aligned_reads_r}'
130 #end if
131 #end if 127 #end if
132 ]]></command> 128 ]]></command>
133 <inputs> 129 <inputs>
134 <conditional name="input_format"> 130 <conditional name="input_format">
135 <param name="input_format_selector" type="select" label="Input data format"> 131 <param name="input_format_selector" type="select" label="Input data format">
143 <expand macro="paired_input_conditional" ftype="fastq,fastqsanger,fastq.gz,fastqsanger.gz,fastq.bz2,fastqsanger.bz2" /> 139 <expand macro="paired_input_conditional" ftype="fastq,fastqsanger,fastq.gz,fastqsanger.gz,fastq.bz2,fastqsanger.bz2" />
144 </when> 140 </when>
145 </conditional> 141 </conditional>
146 <conditional name="reference_genome"> 142 <conditional name="reference_genome">
147 <param name="reference_genome_source" type="select" label="Source for the reference genome to align against" help="Built-in references were created using default options"> 143 <param name="reference_genome_source" type="select" label="Source for the reference genome to align against" help="Built-in references were created using default options">
148 <option value="indexed" selected="True">Use a built-in genome</option> 144 <option value="indexed" selected="true">Use a built-in genome</option>
149 <option value="history">Use a genome from history</option> 145 <option value="history">Use a genome from history</option>
150 </param> 146 </param>
151 <when value="indexed"> 147 <when value="indexed">
152 <param name="index" type="select" label="Select a reference genome" help="If your genome of interest is not listed, contact the Galaxy team"> 148 <param name="index" type="select" label="Select a reference genome" help="If your genome of interest is not listed, contact the Galaxy team">
153 <options from_data_table="hisat2_indexes"> 149 <options from_data_table="hisat2_indexes">
158 </when> 154 </when>
159 <when value="history"> 155 <when value="history">
160 <param name="history_item" type="data" format="fasta" label="Select the reference genome" /> 156 <param name="history_item" type="data" format="fasta" label="Select the reference genome" />
161 </when> 157 </when>
162 </conditional> 158 </conditional>
163 <param argument="-k" name="max_primary" type="integer" value="" optional="true" label="Primary alignments" help="Search for at most K distinct, primary alignments for each read. Primary alignments mean alignments whose alignment score is equal or higher than any other alignments. The search terminates when it can't find more distinct valid alignments, or when it finds K, whichever happens first. The alignment score for a paired-end alignment equals the sum of the alignment scores of the individual mates. Each reported read or pair alignment beyond the first has the SAM 'secondary' bit (which equals 256) set in its FLAGS field. For reads that have more than K distinct, valid alignments, hisat2 does not guarantee that the K alignments reported are the best possible in terms of alignment score. HISAT2 is not designed with large values for -k in mind, so when aligning reads to long repetitive genomes, a large K can be very, very slow. Default: 5 (HFM) or 10 (HGFM)" /> 159 <param name="max_primary" argument="-k" type="integer" optional="true" label="Primary alignments" help="Search for at most K distinct, primary alignments for each read. Primary alignments mean alignments whose alignment score is equal or higher than any other alignments. The search terminates when it can't find more distinct valid alignments, or when it finds K, whichever happens first. The alignment score for a paired-end alignment equals the sum of the alignment scores of the individual mates. Each reported read or pair alignment beyond the first has the SAM 'secondary' bit (which equals 256) set in its FLAGS field. For reads that have more than K distinct, valid alignments, hisat2 does not guarantee that the K alignments reported are the best possible in terms of alignment score. HISAT2 is not designed with large values for -k in mind, so when aligning reads to long repetitive genomes, a large K can be very, very slow. Default: 5 (HFM) or 10 (HGFM)" />
164 <param argument="--max-seeds" name="max_seeds" type="integer" value="" optional="true" label="Maximum number of seeds that will be extended" help="HISAT2, like other aligners, uses seed-and-extend approaches. HISAT2 tries to extend seeds to full-length alignments. HISAT2 extends up to these many seeds and skips the rest of the seeds. Large values for --max-seeds may improve alignment sensitivity, but HISAT2 is not designed with large values for --max-seeds in mind, and when aligning reads to long repetitive genomes, a large --max-seeds can be very, very slow. Default: 5 (HFM) or 10 (HGFM)" /> 160 <param name="max_seeds" argument="--max-seeds" type="integer" optional="true" label="Maximum number of seeds that will be extended" help="HISAT2, like other aligners, uses seed-and-extend approaches. HISAT2 tries to extend seeds to full-length alignments. HISAT2 extends up to these many seeds and skips the rest of the seeds. Large values for --max-seeds may improve alignment sensitivity, but HISAT2 is not designed with large values for --max-seeds in mind, and when aligning reads to long repetitive genomes, a large --max-seeds can be very, very slow. Default: 5 (HFM) or 10 (HGFM)" />
165 <param argument="--secondary" type="boolean" truevalue="--secondary" falsevalue="" label="Report secondary alignments" /> 161 <param argument="--secondary" type="boolean" truevalue="--secondary" falsevalue="" label="Report secondary alignments" />
166 <conditional name="alignment_options"> 162 <conditional name="alignment_options">
167 <param label="Alignment options" name="alignment_options_selector" type="select"> 163 <param name="alignment_options_selector" type="select" label="Alignment options">
168 <option value="defaults">Use default values</option> 164 <option value="defaults">Use default values</option>
169 <option value="advanced">Specify alignment parameters</option> 165 <option value="advanced">Specify alignment parameters</option>
170 </param> 166 </param>
171 <when value="defaults" /> 167 <when value="defaults" />
172 <when value="advanced"> 168 <when value="advanced">
188 <option value="defaults">Use default values</option> 184 <option value="defaults">Use default values</option>
189 <option value="advanced">Specify input parameters</option> 185 <option value="advanced">Specify input parameters</option>
190 </param> 186 </param>
191 <when value="defaults" /> 187 <when value="defaults" />
192 <when value="advanced"> 188 <when value="advanced">
193 <param argument="-s" name="skip" type="integer" min="0" value="0" label="Skip the first N reads or pairs in the input" /> 189 <param name="skip" argument="-s" type="integer" min="0" value="0" label="Skip the first N reads or pairs in the input" />
194 <param argument="-u" name="stop_after" type="integer" min="0" value="0" label="Stop after aligning N reads" help="Align the first N reads or read pairs from the input (after the first N reads or pairs have been skipped), then stop" /> 190 <param name="stop_after" argument="-u" type="integer" min="0" value="0" label="Stop after aligning N reads" help="Align the first N reads or read pairs from the input (after the first N reads or pairs have been skipped), then stop" />
195 <param argument="-5" name="trim_five" type="integer" min="0" value="0" label="Trim 5' end" help="Trim N bases from 5' (left) end of each read before alignment" /> 191 <param name="trim_five" argument="-5" type="integer" min="0" value="0" label="Trim 5' end" help="Trim N bases from 5' (left) end of each read before alignment" />
196 <param argument="-3" name="trim_three" type="integer" min="0" value="0" label="Trim 3' end" help="Trim N bases from 3' (right) end of each read before alignment" /> 192 <param name="trim_three" argument="-3" type="integer" min="0" value="0" label="Trim 3' end" help="Trim N bases from 3' (right) end of each read before alignment" />
197 </when> 193 </when>
198 </conditional> 194 </conditional>
199 <conditional name="scoring_options"> 195 <conditional name="scoring_options">
200 <param name="scoring_options_selector" type="select" label="Scoring options"> 196 <param name="scoring_options_selector" type="select" label="Scoring options">
201 <option value="defaults">Use default values</option> 197 <option value="defaults">Use default values</option>
249 </param> 245 </param>
250 <param name="nc_constant_term" type="float" value="-8" label="Constant term (B)" help="Constant term for the above function" /> 246 <param name="nc_constant_term" type="float" value="-8" label="Constant term (B)" help="Constant term for the above function" />
251 <param name="nc_coefficient" type="float" value="1" label="Coefficient (A)" help="Coefficient for the above function" /> 247 <param name="nc_coefficient" type="float" value="1" label="Coefficient (A)" help="Coefficient for the above function" />
252 <param name="min_intron" type="integer" value="20" label="Minimum intron length" /> 248 <param name="min_intron" type="integer" value="20" label="Minimum intron length" />
253 <param name="max_intron" type="integer" value="500000" label="Maximum intron length" /> 249 <param name="max_intron" type="integer" value="500000" label="Maximum intron length" />
254 <param argument="--rna-strandness" name="rna_strandness" type="select" label="Specify strand-specific information" 250 <param name="rna_strandness" argument="--rna-strandness" type="select" label="Specify strand-specific information"
255 help="'F' means a read corresponds to a transcript. 'R' means a read corresponds to the reverse complemented counterpart of a transcript"> 251 help="'F' means a read corresponds to a transcript. 'R' means a read corresponds to the reverse complemented counterpart of a transcript">
256 <option value="">FR Unstranded</option> 252 <option value="">FR Unstranded</option>
257 <option value="R">First Strand (R/RF)</option> 253 <option value="R">First Strand (R/RF)</option>
258 <option value="F">Second Strand (F/FR)</option> 254 <option value="F">Second Strand (F/FR)</option>
259 </param> 255 </param>
260 <conditional name="no_spliced_alignment_options"> 256 <conditional name="no_spliced_alignment_options">
261 <param argument="--no-spliced-alignment" name="no_spliced_alignment" type="select" label="Disable spliced alignment"> 257 <param name="no_spliced_alignment" argument="--no-spliced-alignment" type="select" label="Disable spliced alignment">
262 <option value="--no-spliced-alignment">True</option> 258 <option value="--no-spliced-alignment">True</option>
263 <option value="">False</option> 259 <option value="">False</option>
264 </param> 260 </param>
265 <when value="--no-spliced-alignment"> 261 <when value="--no-spliced-alignment">
266 <param argument="-I" name="minins" type="integer" value="0" label="Minimum fragment length for valid paired-end alignments" help="E.g. if -I 60 is specified and a paired-end alignment consists of two 20-bp alignments in the appropriate orientation with a 20-bp gap between them, that alignment is considered valid (as long as -X is also satisfied). A 19-bp gap would not be valid in that case. If trimming options -3 or -5 are also used, the -I constraint is applied with respect to the untrimmed mates. The larger the difference between -I and -X, the slower HISAT2 will run. This is because larger differences between -I and -X require that HISAT2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), HISAT2 is very efficient" /> 262 <param name="minins" argument="-I" type="integer" value="0" label="Minimum fragment length for valid paired-end alignments" help="E.g. if -I 60 is specified and a paired-end alignment consists of two 20-bp alignments in the appropriate orientation with a 20-bp gap between them, that alignment is considered valid (as long as -X is also satisfied). A 19-bp gap would not be valid in that case. If trimming options -3 or -5 are also used, the -I constraint is applied with respect to the untrimmed mates. The larger the difference between -I and -X, the slower HISAT2 will run. This is because larger differences between -I and -X require that HISAT2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), HISAT2 is very efficient" />
267 <param argument="-X" name="maxins" type="integer" value="500" label="Maximum fragment length for valid paired-end alignments" help="E.g. if -X 100 is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as -I is also satisfied). A 61-bp gap would not be valid in that case. If trimming options -3 or -5 are also used, the -X constraint is applied with respect to the untrimmed mates, not the trimmed mates. The larger the difference between -I and -X, the slower HISAT2 will run. This is because larger differences between -I and -X require that HISAT2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), HISAT2 is very efficient" /> 263 <param name="maxins" argument="-X" type="integer" value="500" label="Maximum fragment length for valid paired-end alignments" help="E.g. if -X 100 is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as -I is also satisfied). A 61-bp gap would not be valid in that case. If trimming options -3 or -5 are also used, the -X constraint is applied with respect to the untrimmed mates, not the trimmed mates. The larger the difference between -I and -X, the slower HISAT2 will run. This is because larger differences between -I and -X require that HISAT2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), HISAT2 is very efficient" />
268 </when> 264 </when>
269 <when value="" /> 265 <when value="" />
270 </conditional> 266 </conditional>
271 <param name="known_splice_gtf" type="data" format="gtf" optional="true" label="GTF file with known splice sites" /> 267 <param name="known_splice_gtf" type="data" format="gtf" optional="true" label="GTF file with known splice sites" />
272 <param name="tma" type="select" display="radio" label="Transcriptome assembly reporting"> 268 <param name="tma" type="select" display="radio" label="Transcriptome assembly reporting">
282 <option value="defaults">Use default values</option> 278 <option value="defaults">Use default values</option>
283 <option value="advanced">Specify paired alignment parameters</option> 279 <option value="advanced">Specify paired alignment parameters</option>
284 </param> 280 </param>
285 <when value="defaults" /> 281 <when value="defaults" />
286 <when value="advanced"> 282 <when value="advanced">
287 <param argument="--minins" name="minins" type="integer" value="0" label="Minimum fragment length" help="The minimum fragment length for valid paired-end alignments. 0 sets no minimum" /> 283 <param argument="--minins" type="integer" value="0" label="Minimum fragment length" help="The minimum fragment length for valid paired-end alignments. 0 sets no minimum" />
288 <param argument="--maxins" name="maxins" type="integer" value="500" label="Maximum fragment length" help="The maximum fragment length for valid paired-end alignments" /> 284 <param argument="--maxins" type="integer" value="500" label="Maximum fragment length" help="The maximum fragment length for valid paired-end alignments" />
289 <param argument="--no-mixed" name="no_mixed" type="boolean" truevalue="--no-mixed" falsevalue="" label="Disable finding alignments for individual mates" help="By default, when hisat2 cannot find a concordant or discordant alignment for a pair, it then tries to find alignments for the individual mates" /> 285 <param name="no_mixed" argument="--no-mixed" type="boolean" truevalue="--no-mixed" falsevalue="" label="Disable finding alignments for individual mates"
290 <param argument="--no-discordant" name="no_discordant" type="boolean" truevalue="--no-discordant" falsevalue="" label="Disable looking for discordant alignments" help="By default, hisat2 looks for discordant alignments if it cannot find any concordant alignments. A discordant alignment is an alignment where both mates align uniquely, but that does not satisfy the paired-end constraints" /> 286 help="By default, when hisat2 cannot find a concordant or discordant alignment for a pair, it then tries to find alignments for the individual mates" />
291 <param argument="--dovetail" name="dovetail" type="boolean" truevalue="--dovetail" falsevalue="" label="Mates not dovetail" help="If the mates &quot;dovetail&quot;, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant" /> 287 <param name="no_discordant" argument="--no-discordant" type="boolean" truevalue="--no-discordant" falsevalue="" label="Disable looking for discordant alignments"
292 <param argument="--no-contain" name="contain" type="boolean" truevalue="--no-contain" falsevalue="" label="Mates cannot contain others" help="If one mate alignment contains the other, consider that to be non-concordant" /> 288 help="By default, hisat2 looks for discordant alignments if it cannot find any concordant alignments. A discordant alignment is an alignment where both mates align uniquely, but that does not satisfy the paired-end constraints" />
293 <param argument="--no-overlap" name="overlap" type="boolean" truevalue="--no-overlap" falsevalue="" label="Mates cannot overlap" help="If one mate alignment overlaps the other at all, consider that to be non-concordant" /> 289 <param argument="--dovetail" type="boolean" truevalue="--dovetail" falsevalue="" label="Mates not dovetail" help="If the mates &quot;dovetail&quot;, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant" />
290 <param name="contain" argument="--no-contain" type="boolean" truevalue="--no-contain" falsevalue="" label="Mates cannot contain others" help="If one mate alignment contains the other, consider that to be non-concordant" />
291 <param name="overlap" argument="--no-overlap" type="boolean" truevalue="--no-overlap" falsevalue="" label="Mates cannot overlap" help="If one mate alignment overlaps the other at all, consider that to be non-concordant" />
294 </when> 292 </when>
295 </conditional> 293 </conditional>
296 </inputs> 294 </inputs>
297 <outputs> 295 <outputs>
298 <data name="output_alignments" format="bam"> 296 <data name="output_alignments" format="bam">
299 <actions> 297 <actions>
300 <conditional name="reference_genome.reference_genome_source"> 298 <conditional name="reference_genome.reference_genome_source">
301 <when value="indexed"> 299 <when value="indexed">
302 <action type="metadata" name="dbkey"> 300 <action type="metadata" name="dbkey">
303 <option type="from_data_table" name="hisat2_indexes" column="1" offset="0"> 301 <option type="from_data_table" name="hisat2_indexes" column="1" offset="0">
304 <filter type="param_value" column="0" value="#" compare="startswith" keep="False"/> 302 <filter type="param_value" column="0" compare="startswith" value="#" keep="false" />
305 <filter type="param_value" ref="reference_genome.index" column="0"/> 303 <filter type="param_value" ref="reference_genome.index" column="0" />
306 </option> 304 </option>
307 </action> 305 </action>
308 </when> 306 </when>
309 <when value="history"> 307 <when value="history">
310 <action type="metadata" name="dbkey"> 308 <action type="metadata" name="dbkey">
312 </action> 310 </action>
313 </when> 311 </when>
314 </conditional> 312 </conditional>
315 </actions> 313 </actions>
316 </data> 314 </data>
317 <data name="output_unaligned_reads_l" format="fastqsanger" label="${tool.name} on ${on_string}: unaligned reads (L)" > 315 <data name="output_unaligned_reads" format="fastqsanger" label="${tool.name} on ${on_string}: unaligned reads">
318 <filter>input_format['paired']['unaligned_file'] is True</filter> 316 <filter>input_format['paired']['unaligned_file'] is True and input_format['paired']['paired_selector'] == 'single'</filter>
319 <actions> 317 <actions>
320 <conditional name="input_format.paired.paired_selector"> 318 <action type="format">
321 <when value="single"> 319 <option type="from_param" name="input_format.paired.reads" param_attribute="ext" />
322 <action type="format"> 320 </action>
323 <option type="from_param" name="input_format.paired.reads" param_attribute="ext" /> 321 </actions>
324 </action> 322 </data>
325 </when> 323 <data name="output_aligned_reads" format="fastqsanger" label="${tool.name} on ${on_string}: aligned reads">
326 <when value="paired"> 324 <filter>input_format['paired']['aligned_file'] is True and input_format['paired']['paired_selector'] == 'single'</filter>
327 <action type="format"> 325 <actions>
328 <option type="from_param" name="input_format.paired.reads_f" param_attribute="ext" /> 326 <action type="format">
329 </action> 327 <option type="from_param" name="input_format.paired.reads" param_attribute="ext" />
330 </when> 328 </action>
331 <when value="paired_collection"> 329 </actions>
332 <action type="format"> 330 </data>
333 <option type="from_param" name="input_format.paired.reads" param_attribute="forward.ext" /> 331 <data name="output_unaligned_reads_l" format="fastqsanger" label="${tool.name} on ${on_string}: unaligned reads (L)">
332 <filter>input_format['paired']['unaligned_file'] is True and input_format['paired']['paired_selector'] == 'paired'</filter>
333 <actions>
334 <conditional name="input_format.paired.collection.collection_selector">
335 <when value="collection">
336 <action type="format">
337 <option type="from_param" name="input_format.paired.collection.reads.forward" param_attribute="ext" />
338 </action>
339 </when>
340 <when value="files">
341 <action type="format">
342 <option type="from_param" name="input_format.paired.collection.forward" param_attribute="ext" />
334 </action> 343 </action>
335 </when> 344 </when>
336 </conditional> 345 </conditional>
337 </actions> 346 </actions>
338 </data> 347 </data>
339 <data name="output_unaligned_reads_r" format="fastqsanger" label="${tool.name} on ${on_string}: unaligned reads (R)" > 348 <data name="output_unaligned_reads_r" format="fastqsanger" label="${tool.name} on ${on_string}: unaligned reads (R)">
340 <filter>input_format['paired']['unaligned_file'] is True and input_format['paired']['paired_selector'] != 'single'</filter> 349 <filter>input_format['paired']['unaligned_file'] is True and input_format['paired']['paired_selector'] == 'paired'</filter>
341 <actions> 350 <actions>
342 <conditional name="input_format.paired.paired_selector"> 351 <conditional name="input_format.paired.collection.collection_selector">
343 <when value="paired"> 352 <when value="collection">
344 <action type="format"> 353 <action type="format">
345 <option type="from_param" name="input_format.paired.reads_r" param_attribute="ext" /> 354 <option type="from_param" name="input_format.paired.collection.reads.reverse" param_attribute="ext" />
346 </action> 355 </action>
347 </when> 356 </when>
348 <when value="paired_collection"> 357 <when value="files">
349 <action type="format"> 358 <action type="format">
350 <option type="from_param" name="input_format.paired.reads" param_attribute="forward.ext" /> 359 <option type="from_param" name="input_format.paired.collection.reverse" param_attribute="ext" />
351 </action> 360 </action>
352 </when> 361 </when>
353 </conditional> 362 </conditional>
354 </actions> 363 </actions>
355 </data> 364 </data>
356 <data name="output_aligned_reads_l" format="fastqsanger" label="${tool.name} on ${on_string}: aligned reads${' (L)' if str($input_format.paired.paired_selector) != 'single' else ''}" > 365 <data name="output_aligned_reads_l" format="fastqsanger" label="${tool.name} on ${on_string}: aligned reads (L)">
357 <filter>input_format['paired']['aligned_file'] is True</filter> 366 <filter>input_format['paired']['aligned_file'] is True and input_format['paired']['paired_selector'] == 'paired'</filter>
358 <actions> 367 <actions>
359 <conditional name="input_format.paired.paired_selector"> 368 <conditional name="input_format.paired.collection.collection_selector">
360 <when value="single"> 369 <when value="collection">
361 <action type="format"> 370 <action type="format">
362 <option type="from_param" name="input_format.paired.reads" param_attribute="ext" /> 371 <option type="from_param" name="input_format.paired.collection.reads.forward" param_attribute="ext" />
363 </action> 372 </action>
364 </when> 373 </when>
365 <when value="paired"> 374 <when value="files">
366 <action type="format"> 375 <action type="format">
367 <option type="from_param" name="input_format.paired.reads_f" param_attribute="ext" /> 376 <option type="from_param" name="input_format.paired.collection.forward" param_attribute="ext" />
368 </action>
369 </when>
370 <when value="paired_collection">
371 <action type="format">
372 <option type="from_param" name="input_format.paired.reads" param_attribute="forward.ext" />
373 </action> 377 </action>
374 </when> 378 </when>
375 </conditional> 379 </conditional>
376 </actions> 380 </actions>
377 </data> 381 </data>
378 <data name="output_aligned_reads_r" format="fastqsanger" label="${tool.name} on ${on_string}: aligned reads (R)" > 382 <data name="output_aligned_reads_r" format="fastqsanger" label="${tool.name} on ${on_string}: aligned reads (R)">
379 <filter>input_format['paired']['aligned_file'] is True and input_format['paired']['paired_selector'] != 'single'</filter> 383 <filter>input_format['paired']['aligned_file'] is True and input_format['paired']['paired_selector'] == 'paired'</filter>
380 <actions> 384 <actions>
381 <conditional name="input_format.paired.paired_selector"> 385 <conditional name="input_format.paired.collection.collection_selector">
382 <when value="paired"> 386 <when value="collection">
383 <action type="format"> 387 <action type="format">
384 <option type="from_param" name="input_format.paired.reads_r" param_attribute="ext" /> 388 <option type="from_param" name="input_format.paired.collection.reads.reverse" param_attribute="ext" />
385 </action> 389 </action>
386 </when> 390 </when>
387 <when value="paired_collection"> 391 <when value="files">
388 <action type="format"> 392 <action type="format">
389 <option type="from_param" name="input_format.paired.reads" param_attribute="forward.ext" /> 393 <option type="from_param" name="input_format.paired.collection.reverse" param_attribute="ext" />
390 </action> 394 </action>
391 </when> 395 </when>
392 </conditional> 396 </conditional>
393 </actions> 397 </actions>
394 </data> 398 </data>
395 </outputs> 399 </outputs>
396 <tests> 400 <tests>
397 <test> 401 <test>
398 <param name="input_format_selector" value="fastq" /> 402 <param name="input_format_selector" value="fastq" />
399 <param name="paired_selector" value="paired" /> 403 <param name="paired_selector" value="paired" />
400 <param name="reference_genome_source" value="history" /> 404 <param name="collection_selector" value="files" />
401 <param ftype="fasta" name="history_item" value="phiX.fa" /> 405 <param name="reference_genome_source" value="history" />
402 <param ftype="fastqsanger" name="reads_f" value="hisat_input_1_forward.fastq" /> 406 <param name="history_item" ftype="fasta" value="phiX.fa" />
403 <param ftype="fastqsanger" name="reads_r" value="hisat_input_1_reverse.fastq" /> 407 <param name="forward" ftype="fastqsanger" value="hisat_input_1_forward.fastq" />
404 <output file="hisat_output_1.bam" ftype="bam" name="output_alignments" lines_diff="2" /> 408 <param name="reverse" ftype="fastqsanger" value="hisat_input_1_reverse.fastq" />
409 <output name="output_alignments" file="hisat_output_1.bam" ftype="bam" lines_diff="2" />
405 </test> 410 </test>
406 <test> 411 <test>
407 <param name="input_format_selector" value="fastq" /> 412 <param name="input_format_selector" value="fastq" />
408 <param name="paired_selector" value="paired" /> 413 <param name="paired_selector" value="paired" />
409 <param name="reference_genome_source" value="history" /> 414 <param name="collection_selector" value="files" />
410 <param ftype="fasta" name="history_item" value="phiX.fa" /> 415 <param name="reference_genome_source" value="history" />
416 <param name="history_item" ftype="fasta" value="phiX.fa" />
411 <param name="input_options_selector" value="advanced" /> 417 <param name="input_options_selector" value="advanced" />
412 <param name="trim_three" value="15" /> 418 <param name="trim_three" value="15" />
413 <param name="trim_five" value="15" /> 419 <param name="trim_five" value="15" />
414 <param ftype="fastqsanger" name="reads_f" value="hisat_input_2_forward.fastq" /> 420 <param name="forward" ftype="fastqsanger" value="hisat_input_2_forward.fastq" />
415 <param ftype="fastqsanger" name="reads_r" value="hisat_input_2_reverse.fastq" /> 421 <param name="reverse" ftype="fastqsanger" value="hisat_input_2_reverse.fastq" />
416 <output file="hisat_output_2.bam" ftype="bam" name="output_alignments" lines_diff="2" /> 422 <output name="output_alignments" file="hisat_output_2.bam" ftype="bam" lines_diff="2" />
417 </test> 423 </test>
418 <test> 424 <test>
419 <param name="input_format_selector" value="fastq" /> 425 <param name="input_format_selector" value="fastq" />
420 <param name="paired_selector" value="paired" /> 426 <param name="paired_selector" value="paired" />
421 <param name="reference_genome_source" value="history" /> 427 <param name="collection_selector" value="files" />
422 <param name="history_item" value="phiX.fa" ftype="fasta" /> 428 <param name="reference_genome_source" value="history" />
429 <param name="history_item" ftype="fasta" value="phiX.fa" />
423 <param name="input_options_selector" value="advanced" /> 430 <param name="input_options_selector" value="advanced" />
424 <param name="trim_three" value="15" /> 431 <param name="trim_three" value="15" />
425 <param name="trim_five" value="15" /> 432 <param name="trim_five" value="15" />
426 <param name="reads_f" ftype="fastqsanger" value="hisat_input_2_forward.fastq" /> 433 <param name="forward" ftype="fastqsanger" value="hisat_input_2_forward.fastq" />
427 <param name="reads_r" ftype="fastqsanger" value="hisat_input_2_reverse.fastq" /> 434 <param name="reverse" ftype="fastqsanger" value="hisat_input_2_reverse.fastq" />
428 <param name="paired_end_options_selector" value="advanced" /> 435 <param name="paired_end_options_selector" value="advanced" />
429 <param name="no_mixed" value="True" /> 436 <param name="no_mixed" value="True" />
430 <param name="no_discordant" value="True" /> 437 <param name="no_discordant" value="True" />
431 <output name="output_alignments" ftype="bam" file="hisat_output_3.bam" lines_diff="2" /> 438 <output name="output_alignments" file="hisat_output_3.bam" ftype="bam" lines_diff="2" />
432 </test> 439 </test>
433 <test><!-- testing unaligned output (single dataset) --> 440 <test>
434 <param name="input_format_selector" value="fasta" /> 441 <param name="input_format_selector" value="fasta" />
435 <param name="paired_selector" value="single" /> 442 <param name="paired_selector" value="single" />
436 <param name="reference_genome_source" value="history" /> 443 <param name="reference_genome_source" value="history" />
437 <param name="history_item" value="phiX.fa" ftype="fasta" /> 444 <param name="history_item" ftype="fasta" value="phiX.fa" />
438 <param name="unaligned_file" value="true" /> 445 <param name="unaligned_file" value="true" />
439 <param name="aligned_file" value="true" /> 446 <param name="aligned_file" value="true" />
440 <param name="reference_genome_source" value="history" /> 447 <param name="reference_genome_source" value="history" />
441 <param name="history_item" value="phiX.fa" ftype="fasta" /> 448 <param name="history_item" ftype="fasta" value="phiX.fa" />
442 <param name="reads" value="test_unaligned_reads.fasta" ftype="fasta" /> 449 <param name="reads" ftype="fasta" value="test_unaligned_reads.fasta" />
443 <output name="output_unaligned_reads_l" file="test_unaligned_reads.fasta" /> 450 <output name="output_unaligned_reads" file="test_unaligned_reads.fasta" />
444 </test> 451 </test>
445 <test> 452 <test>
446 <param name="input_format_selector" value="fasta" /> 453 <param name="input_format_selector" value="fasta" />
447 <param name="paired_selector" value="paired" /> 454 <param name="paired_selector" value="paired" />
448 <param name="reference_genome_source" value="history" /> 455 <param name="collection_selector" value="files" />
449 <param name="history_item" value="phiX.fa" ftype="fasta" /> 456 <param name="reference_genome_source" value="history" />
457 <param name="history_item" ftype="fasta" value="phiX.fa" />
450 <param name="unaligned_file" value="true" /> 458 <param name="unaligned_file" value="true" />
451 <param name="aligned_file" value="true" /> 459 <param name="aligned_file" value="true" />
452 <param name="reference_genome_source" value="history" /> 460 <param name="reference_genome_source" value="history" />
453 <param name="history_item" value="phiX.fa" ftype="fasta" /> 461 <param name="history_item" ftype="fasta" value="phiX.fa" />
454 <param name="reads_f" value="test_unaligned_reads.fasta" ftype="fasta" /> 462 <param name="forward" ftype="fasta" value="test_unaligned_reads.fasta" />
455 <param name="reads_r" value="test_unaligned_reads.fasta" ftype="fasta" /> 463 <param name="reverse" ftype="fasta" value="test_unaligned_reads.fasta" />
456 <output name="output_unaligned_reads_l" file="test_unaligned_reads.fasta" /> 464 <output name="output_unaligned_reads_l" file="test_unaligned_reads.fasta" />
457 <output name="output_unaligned_reads_r" file="test_unaligned_reads.fasta" /> 465 <output name="output_unaligned_reads_r" file="test_unaligned_reads.fasta" />
458 </test> 466 </test>
459 <test><!-- Ensure fastqsanger.gz works --> 467 <test><!-- Ensure fastqsanger.gz works -->
460 <param name="input_format_selector" value="fastq" /> 468 <param name="input_format_selector" value="fastq" />
461 <param name="paired_selector" value="paired" /> 469 <param name="paired_selector" value="paired" />
462 <param name="reference_genome_source" value="history" /> 470 <param name="collection_selector" value="files" />
463 <param name="history_item" value="phiX.fa" ftype="fasta" /> 471 <param name="reference_genome_source" value="history" />
472 <param name="history_item" ftype="fasta" value="phiX.fa" />
464 <param name="input_options_selector" value="advanced" /> 473 <param name="input_options_selector" value="advanced" />
465 <param name="trim_three" value="15" /> 474 <param name="trim_three" value="15" />
466 <param name="trim_five" value="15" /> 475 <param name="trim_five" value="15" />
467 <param name="reads_f" ftype="fastqsanger.gz" value="hisat_input_2_forward.fastq.gz" /> 476 <param name="forward" ftype="fastqsanger.gz" value="hisat_input_2_forward.fastq.gz" />
468 <param name="reads_r" ftype="fastqsanger.gz" value="hisat_input_2_reverse.fastq.gz" /> 477 <param name="reverse" ftype="fastqsanger.gz" value="hisat_input_2_reverse.fastq.gz" />
469 <param name="paired_end_options_selector" value="advanced" /> 478 <param name="paired_end_options_selector" value="advanced" />
470 <param name="no_mixed" value="True" /> 479 <param name="no_mixed" value="True" />
471 <param name="no_discordant" value="True" /> 480 <param name="no_discordant" value="True" />
472 <output name="output_alignments" ftype="bam" file="hisat_output_3.bam" lines_diff="2" /> 481 <output name="output_alignments" file="hisat_output_3.bam" ftype="bam" lines_diff="2" />
473 </test> 482 </test>
474 <test><!-- Ensure fastqsanger.bz2 works --> 483 <test><!-- Ensure fastqsanger.bz2 works -->
475 <param name="input_format_selector" value="fastq" /> 484 <param name="input_format_selector" value="fastq" />
476 <param name="paired_selector" value="paired" /> 485 <param name="paired_selector" value="paired" />
477 <param name="reference_genome_source" value="history" /> 486 <param name="collection_selector" value="files" />
478 <param name="history_item" value="phiX.fa" ftype="fasta" /> 487 <param name="reference_genome_source" value="history" />
488 <param name="history_item" ftype="fasta" value="phiX.fa" />
479 <param name="input_options_selector" value="advanced" /> 489 <param name="input_options_selector" value="advanced" />
480 <param name="trim_three" value="15" /> 490 <param name="trim_three" value="15" />
481 <param name="trim_five" value="15" /> 491 <param name="trim_five" value="15" />
482 <param name="reads_f" ftype="fastqsanger.bz2" value="hisat_input_2_forward.fastq.bz2" /> 492 <param name="forward" ftype="fastqsanger.bz2" value="hisat_input_2_forward.fastq.bz2" />
483 <param name="reads_r" ftype="fastqsanger.bz2" value="hisat_input_2_reverse.fastq.bz2" /> 493 <param name="reverse" ftype="fastqsanger.bz2" value="hisat_input_2_reverse.fastq.bz2" />
484 <param name="paired_end_options_selector" value="advanced" /> 494 <param name="paired_end_options_selector" value="advanced" />
485 <param name="no_mixed" value="True" /> 495 <param name="no_mixed" value="True" />
486 <param name="no_discordant" value="True" /> 496 <param name="no_discordant" value="True" />
487 <output name="output_alignments" ftype="bam" file="hisat_output_3.bam" lines_diff="2" /> 497 <output name="output_alignments" file="hisat_output_3.bam" ftype="bam" lines_diff="2" />
488 </test> 498 </test>
489 </tests> 499 </tests>
490 <help> 500 <help><![CDATA[
491 <![CDATA[
492 Introduction 501 Introduction
493 ============ 502 ============
494 503
495 What is HISAT? 504 What is HISAT?
496 -------------- 505 --------------
620 571 (46.35%) aligned exactly 1 time 629 571 (46.35%) aligned exactly 1 time
621 1 (0.08%) aligned >1 times 630 1 (0.08%) aligned >1 times
622 96.70% overall alignment rate 631 96.70% overall alignment rate
623 632
624 The indentation indicates how subtotals relate to totals. 633 The indentation indicates how subtotals relate to totals.
625 ]]> 634 ]]></help>
626 </help>
627 <citations> 635 <citations>
628 <citation type="doi">10.1038/nmeth.3317</citation> 636 <citation type="doi">10.1038/nmeth.3317</citation>
629 </citations> 637 </citations>
630 </tool> 638 </tool>