comparison hisat2.xml @ 9:2dbb7f0ea66f draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/hisat2 commit 1baf0d1eb5d9cb012e4ce1385431461f26f7bc05
author iuc
date Tue, 04 Apr 2017 08:15:43 -0400
parents 4d0a3173cde0
children da8d655e2154
comparison
equal deleted inserted replaced
8:4d0a3173cde0 9:2dbb7f0ea66f
1 <?xml version="1.0"?> 1 <?xml version="1.0"?>
2 <tool id="hisat2" name="HISAT2" version="2.0.3.3"> 2 <tool id="hisat2" name="HISAT2" version="2.0.5">
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 --> 8 <!-- Conda dependency -->
9 <requirement type="package" version="2.0.3">hisat2</requirement> 9 <requirement type="package" version="2.0.5">hisat2</requirement>
10 <requirement type="package" version="1.2">samtools</requirement> 10 <requirement type="package" version="1.4">samtools</requirement>
11 </requirements> 11 </requirements>
12 <stdio> 12 <stdio>
13 <regex match="hisat2-align exited with value 1" source="both" level="fatal"/> 13 <regex match="hisat2-align exited with value 1" source="both" level="fatal"/>
14 <regex match="hisat2: not found" source="both" level="fatal"/> 14 <regex match="hisat2: not found" source="both" level="fatal"/>
15 <exit_code range="1:" /> 15 <exit_code range="1:" />
16 </stdio> 16 </stdio>
17 <version_command>hisat2 --version</version_command> 17 <version_command>hisat2 --version</version_command>
18 <command><![CDATA[ 18 <command><![CDATA[
19 #if str($spliced_options.spliced_options_selector) == "advanced" and str($spliced_options.known_splice_gtf) != 'None': 19 #if str($spliced_options.spliced_options_selector) == "advanced" and str($spliced_options.known_splice_gtf) != 'None':
20 ln -s "${spliced_options.known_splice_gtf}" splice_sites.gtf && 20 ln -s '${spliced_options.known_splice_gtf}' splice_sites.gtf &&
21 hisat2_extract_splice_sites.py splice_sites.gtf > splice_sites.txt && 21 hisat2_extract_splice_sites.py splice_sites.gtf > splice_sites.txt &&
22 #end if 22 #end if
23 #if $reference_genome.reference_genome_source == "history": 23 #if $reference_genome.reference_genome_source == "history":
24 ln -s "$reference_genome.history_item" genome.fa && 24 ln -s '$reference_genome.history_item' genome.fa &&
25 hisat2-build genome.fa genome && 25 hisat2-build -p \${GALAXY_SLOTS:-1} genome.fa genome &&
26 #set index_path = 'genome' 26 #set index_path = 'genome'
27 #else: 27 #else:
28 #set index_path = $reference_genome.index.fields.path 28 #set index_path = $reference_genome.index.fields.path
29 #end if 29 #end if
30 hisat2 -p \${GALAXY_SLOTS:-1} -x "${index_path}" 30 hisat2 -p \${GALAXY_SLOTS:-1} -x '${index_path}'
31 #if str($input_format.paired.paired_selector) == 'paired': 31 #if str($input_format.paired.paired_selector) == 'paired':
32 -1 "${input_format.paired.reads_f}" -2 "${input_format.paired.reads_r}" 32 -1 '${input_format.paired.reads_f}' -2 '${input_format.paired.reads_r}'
33 @paired_end_options@ 33 @paired_end_options@
34 #else if str($input_format.paired.paired_selector) == 'paired_collection': 34 #else if str($input_format.paired.paired_selector) == 'paired_collection':
35 -1 "${input_format.paired.reads.forward}" -2 "${input_format.paired.reads.reverse}" 35 -1 '${input_format.paired.reads.forward}' -2 '${input_format.paired.reads.reverse}'
36 @paired_end_options@ 36 @paired_end_options@
37 #else: 37 #else:
38 -U "${input_format.paired.reads}" 38 -U '${input_format.paired.reads}'
39 #if str( $input_format.paired.unaligned_file ) == "true": 39 #if str( $input_format.paired.unaligned_file ) == "true":
40 --un '$output_unaligned_reads_l' 40 --un '$output_unaligned_reads_l'
41 #end if 41 #end if
42 #if str( $input_format.paired.aligned_file ) == "true": 42 #if str( $input_format.paired.aligned_file ) == "true":
43 --al '$output_aligned_reads_l' 43 --al '$output_aligned_reads_l'
44 #end if 44 #end if
45 #end if 45 #end if
46 #if $input_format.input_format_selector == 'fasta': 46 #if $input_format.input_format_selector == 'fasta':
47 -f 47 -f
48 #end if 48 #end if
49 #if $max_primary: 49 #if str($max_primary)
50 -k ${max_primary} 50 -k ${max_primary}
51 #end if 51 #end if
52 #if str($max_seeds)
53 --max-seeds $max_seeds
54 #end if
55 $secondary
52 #if str($input_options.input_options_selector) == "advanced": 56 #if str($input_options.input_options_selector) == "advanced":
53 #if int( $input_options.skip ) > 0: 57 #if int( $input_options.skip ) > 0:
54 -s ${input_options.skip} 58 -s ${input_options.skip}
55 #end if 59 #end if
56 #if int( $input_options.stop_after ) > 0: 60 #if int( $input_options.stop_after ) > 0:
57 -u ${input_options.stop_after} 61 -u ${input_options.stop_after}
58 #end if 62 #end if
59 -5 ${input_options.trim_five} -3 ${input_options.trim_three} 63 -5 ${input_options.trim_five} -3 ${input_options.trim_three}
60 #end if 64 #end if
61 #if str($scoring_options.scoring_options_selector) == "advanced": 65 #if str($scoring_options.scoring_options_selector) == "advanced":
62 --ma ${scoring_options.match_bonus} --np ${scoring_options.ambiguous_penalty} 66 --ma ${scoring_options.match_bonus}
63 --mp ${scoring_options.max_mismatch},${scoring_options.min_mismatch} 67 --mp ${scoring_options.max_mismatch},${scoring_options.min_mismatch}
68 ${scoring_options.no_softclip}
69 --np ${scoring_options.ambiguous_penalty}
64 --rdg ${scoring_options.read_open_penalty},${scoring_options.read_extend_penalty} 70 --rdg ${scoring_options.read_open_penalty},${scoring_options.read_extend_penalty}
65 --rfg ${scoring_options.ref_open_penalty},${scoring_options.ref_extend_penalty} 71 --rfg ${scoring_options.ref_open_penalty},${scoring_options.ref_extend_penalty}
66 --sp ${scoring_options.soft_clip_penalty_max},${scoring_options.soft_clip_penalty_min} 72 --sp ${scoring_options.soft_clip_penalty_max},${scoring_options.soft_clip_penalty_min}
67 --score-min ${scoring_options.function_type},${scoring_options.constant_term},${scoring_options.coefficient} 73 --score-min ${scoring_options.function_type},${scoring_options.constant_term},${scoring_options.coefficient}
68 #end if 74 #end if
75 --pen-canintronlen ${spliced_options.function_type},${spliced_options.constant_term},${spliced_options.coefficient} 81 --pen-canintronlen ${spliced_options.function_type},${spliced_options.constant_term},${spliced_options.coefficient}
76 --pen-noncanintronlen ${spliced_options.nc_function_type},${spliced_options.nc_constant_term},${spliced_options.nc_coefficient} 82 --pen-noncanintronlen ${spliced_options.nc_function_type},${spliced_options.nc_constant_term},${spliced_options.nc_coefficient}
77 #if str($spliced_options.known_splice_gtf) != 'None': 83 #if str($spliced_options.known_splice_gtf) != 'None':
78 --known-splicesite-infile splice_sites.txt 84 --known-splicesite-infile splice_sites.txt
79 #end if 85 #end if
80 ${spliced_options.no_spliced_alignment} 86 ${spliced_options.no_spliced_alignment_options.no_spliced_alignment}
87 #if $spliced_options.no_spliced_alignment_options.no_spliced_alignment == '--no-spliced-alignment'
88 -I ${spliced_options.no_spliced_alignment_options.minins}
89 -X ${spliced_options.no_spliced_alignment_options.maxins}
90 #end if
81 --min-intronlen ${spliced_options.min_intron} 91 --min-intronlen ${spliced_options.min_intron}
82 --max-intronlen ${spliced_options.max_intron} 92 --max-intronlen ${spliced_options.max_intron}
83 ${spliced_options.tma} 93 ${spliced_options.tma}
84 @strandedness_parameters@ 94 @strandedness_parameters@
85 #end if 95 #end if
86 #if str($paired_options.paired_options_selector) == "advanced": 96 #if str($paired_options.paired_options_selector) == "advanced":
87 --minins ${paired_options.minins} --maxins ${paired_options.maxins} ${paired_options.no_mixed} ${paired_options.no_discordant} 97 --minins ${paired_options.minins} --maxins ${paired_options.maxins} ${paired_options.no_mixed} ${paired_options.no_discordant}
88 ${paired_options.dovetail} ${paired_options.contain} ${paired_options.overlap} 98 ${paired_options.dovetail} ${paired_options.contain} ${paired_options.overlap}
89 #end if 99 #end if
90 | samtools sort - -@ \${GALAXY_SLOTS:-2} -l 6 -o hsbam > "${output_alignments}" 100 | samtools sort - -@ \${GALAXY_SLOTS:-1} -l 6 -o '${output_alignments}'
91 101
92 ## Rename any output fastq files 102 ## Rename any output fastq files
93 #if str($input_format.paired.paired_selector) == 'paired' or str($input_format.paired.paired_selector) == 'paired_collection': 103 #if str($input_format.paired.paired_selector) == 'paired' or str($input_format.paired.paired_selector) == 'paired_collection':
94 #if $output_unaligned_reads_l and $output_unaligned_reads_r: 104 #if $output_unaligned_reads_l and $output_unaligned_reads_r:
95 #set left = str($output_unaligned_reads_l).replace(".dat", ".1.dat") 105 #set left = str($output_unaligned_reads_l).replace(".dat", ".1.dat")
105 #end if 115 #end if
106 #end if 116 #end if
107 ]]></command> 117 ]]></command>
108 <inputs> 118 <inputs>
109 <conditional name="input_format"> 119 <conditional name="input_format">
110 <param label="Input data format" name="input_format_selector" type="select"> 120 <param name="input_format_selector" type="select" label="Input data format">
111 <option selected="true" value="fastq">FASTQ</option> 121 <option value="fastq" selected="true">FASTQ</option>
112 <option value="fasta">FASTA</option> 122 <option value="fasta">FASTA</option>
113 </param> 123 </param>
114 <when value="fasta"> 124 <when value="fasta">
115 <expand ftype="fasta" macro="paired_input_conditional" /> 125 <expand macro="paired_input_conditional" ftype="fasta" />
116 </when> 126 </when>
117 <when value="fastq"> 127 <when value="fastq">
118 <expand ftype="fastq" macro="paired_input_conditional" /> 128 <expand macro="paired_input_conditional" ftype="fastq" />
119 </when> 129 </when>
120 </conditional> 130 </conditional>
121 <conditional name="reference_genome"> 131 <conditional name="reference_genome">
122 <param help="Built-in references were created using default options" label="Source for the reference genome to align against" name="reference_genome_source" type="select"> 132 <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">
123 <option selected="True" value="indexed">Use a built-in genome</option> 133 <option value="indexed" selected="True">Use a built-in genome</option>
124 <option value="history">Use a genome from history</option> 134 <option value="history">Use a genome from history</option>
125 </param> 135 </param>
126 <when value="indexed"> 136 <when value="indexed">
127 <param help="If your genome of interest is not listed, contact the Galaxy team" label="Select a reference genome" name="index" type="select"> 137 <param name="index" type="select" label="Select a reference genome" help="If your genome of interest is not listed, contact the Galaxy team">
128 <options from_data_table="hisat2_indexes"> 138 <options from_data_table="hisat2_indexes">
129 <filter column="2" type="sort_by" /> 139 <filter type="sort_by" column="2" />
130 <validator message="No genomes are available for the selected input dataset" type="no_options" /> 140 <validator type="no_options" message="No genomes are available for the selected input dataset" />
131 </options> 141 </options>
132 </param> 142 </param>
133 </when> 143 </when>
134 <when value="history"> 144 <when value="history">
135 <param format="fasta" label="Select the reference genome" name="history_item" type="data" /> 145 <param name="history_item" type="data" format="fasta" label="Select the reference genome" />
136 </when> 146 </when>
137 </conditional> 147 </conditional>
138 <param argument="-k" name="max_primary" optional="True" type="integer" value="5" 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." label="Primary alignments" /> 148 <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)" />
149 <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)" />
150 <param argument="--secondary" type="boolean" truevalue="--secondary" falsevalue="" label="Report secondary alignments" />
139 <conditional name="alignment_options"> 151 <conditional name="alignment_options">
140 <param label="Alignment options" name="alignment_options_selector" type="select"> 152 <param label="Alignment options" name="alignment_options_selector" type="select">
141 <option value="defaults">Use default values</option> 153 <option value="defaults">Use default values</option>
142 <option value="advanced">Specify alignment parameters</option> 154 <option value="advanced">Specify alignment parameters</option>
143 </param> 155 </param>
144 <when value="defaults" /> 156 <when value="defaults" />
145 <when value="advanced"> 157 <when value="advanced">
146 <expand macro="function" helptext="Sets a function governing the maximum number of ambiguous characters" /> 158 <expand macro="function" helptext="Sets a function governing the maximum number of ambiguous characters" />
147 <param argument="--ignore-quals" falsevalue="" help="When calculating a mismatch penalty, always consider the quality value at the mismatched position to be the highest possible, regardless of the actual value. I.e. input is treated as though all quality values are high. This is also the default behavior when the input doesn't specify quality values." label="Ignore quality values" name="ignore_quals" truevalue="--ignore-quals" type="boolean" /> 159 <param argument="--ignore-quals" name="ignore_quals" type="boolean" truevalue="--ignore-quals" falsevalue="" label="Ignore quality values" help="When calculating a mismatch penalty, always consider the quality value at the mismatched position to be the highest possible, regardless of the actual value. I.e. input is treated as though all quality values are high. This is also the default behavior when the input doesn't specify quality values" />
148 <param argument="--nofw" falsevalue="" help="If --nofw is specified, hisat will not attempt to align unpaired reads to the forward (Watson) reference strand. In paired-end mode, --nofw and --norc pertain to the fragments; i.e. specifying --nofw causes hisat to explore only those paired-end configurations corresponding to fragments from the reverse-complement (Crick) strand." label="Skip forward strand of reference" name="skip_forward" truevalue="--nofw" type="boolean" /> 160 <param argument="--nofw" name="skip_forward" type="boolean" truevalue="--nofw" falsevalue="" label="Skip forward strand of reference" help="If --nofw is specified, hisat2 will not attempt to align unpaired reads to the forward (Watson) reference strand. In paired-end mode, --nofw and --norc pertain to the fragments; i.e. specifying --nofw causes hisat2 to explore only those paired-end configurations corresponding to fragments from the reverse-complement (Crick) strand" />
149 <param argument="--norc" falsevalue="" help="If --norc is specified, hisat will not attempt to align unpaired reads against the reverse-complement (Crick) reference strand. In paired-end mode, --nofw and --norc pertain to the fragments; i.e. specifying --nofw causes hisat to explore only those paired-end configurations corresponding to fragments from the reverse-complement (Crick) strand." label="Skip reference strand of reference" name="skip_reverse" truevalue="--norc" type="boolean" /> 161 <param argument="--norc" name="skip_reverse" type="boolean" truevalue="--norc" falsevalue="" label="Skip reverse strand of reference" help="If --norc is specified, hisat2 will not attempt to align unpaired reads against the reverse-complement (Crick) reference strand. In paired-end mode, --nofw and --norc pertain to the fragments; i.e. specifying --norc causes hisat2 to explore only those paired-end configurations corresponding to fragments from the forward-complement (Watson) strand" />
150 </when> 162 </when>
151 </conditional> 163 </conditional>
152 <conditional name="input_options"> 164 <conditional name="input_options">
153 <param label="Input options" name="input_options_selector" type="select"> 165 <param name="input_options_selector" type="select" label="Input options">
154 <option value="defaults">Use default values</option> 166 <option value="defaults">Use default values</option>
155 <option value="advanced">Specify input parameters</option> 167 <option value="advanced">Specify input parameters</option>
156 </param> 168 </param>
157 <when value="defaults" /> 169 <when value="defaults" />
158 <when value="advanced"> 170 <when value="advanced">
159 <param argument="-s" min="0" label="Skip the first N reads or pairs in the input" name="skip" type="integer" value="0" /> 171 <param argument="-s" name="skip" type="integer" min="0" value="0" label="Skip the first N reads or pairs in the input" />
160 <param argument="-u" min="0" help="Align the first N reads or read pairs from the input (after the first N reads or pairs have been skipped), then stop." label="Stop after aligning N reads" name="stop_after" type="integer" value="0" /> 172 <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" />
161 <param name="trim_five" argument="-5" min="0" help="Trim N bases from 5' (left) end of each read before alignment" label="Trim 5' end" type="integer" value="0" /> 173 <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" />
162 <param name="trim_three" argument="-3" min="0" help="Trim N bases from 3' (right) end of each read before alignment" label="Trim 3' end" type="integer" value="0" /> 174 <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" />
163 </when> 175 </when>
164 </conditional> 176 </conditional>
165 <conditional name="scoring_options"> 177 <conditional name="scoring_options">
166 <param label="Scoring options" name="scoring_options_selector" type="select"> 178 <param name="scoring_options_selector" type="select" label="Scoring options">
167 <option value="defaults">Use default values</option> 179 <option value="defaults">Use default values</option>
168 <option value="advanced">Specify scoring parameters</option> 180 <option value="advanced">Specify scoring parameters</option>
169 </param> 181 </param>
170 <when value="defaults" /> 182 <when value="defaults" />
171 <when value="advanced"> 183 <when value="advanced">
172 <expand macro="function" helptext="Sets a function governing the minimum alignment score needed for an alignment to be considered &quot;valid&quot; (i.e. good enough to report)." /> 184 <expand macro="function" helptext="Sets a function governing the minimum alignment score needed for an alignment to be considered &quot;valid&quot; (i.e. good enough to report)" />
173 <param argument="--ma" help="In local mode N is added to the alignment score for each position where a read character aligns to a reference character and the characters match. Not used in end-to-end mode" label="Set match bonus" name="match_bonus" type="integer" value="2" /> 185 <param argument="--ma" name="match_bonus" type="integer" value="2" label="Set match bonus" help="In local mode N is added to the alignment score for each position where a read character aligns to a reference character and the characters match. Not used in end-to-end mode" />
174 <param argument="--mp" help="Sets the maximum mismatch penalty. A number less than or equal to MX and greater than or equal to MN is subtracted from the alignment score for each position where a read character aligns to a reference character, the characters do not match, and neither is an N. If --ignore-quals is specified, the number subtracted quals MX. Otherwise, the number subtracted is MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) ) where Q is the Phred quality value." label="Maximum mismatch penalty" name="max_mismatch" type="integer" value="6" /> 186 <param argument="--mp" name="max_mismatch" type="integer" value="6" label="Maximum mismatch penalty" help="Sets the maximum mismatch penalty. A number less than or equal to MX and greater than or equal to MN is subtracted from the alignment score for each position where a read character aligns to a reference character, the characters do not match, and neither is an N. If --ignore-quals is specified, the number subtracted quals MX. Otherwise, the number subtracted is MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) ) where Q is the Phred quality value" />
175 <param argument="--mp" help="Sets the minimum mismatch penalty. A number less than or equal to MX and greater than or equal to MN is subtracted from the alignment score for each position where a read character aligns to a reference character, the characters do not match, and neither is an N. If --ignore-quals is specified, the number subtracted quals MX. Otherwise, the number subtracted is MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) ) where Q is the Phred quality value." label="Minimum mismatch penalty" name="min_mismatch" type="integer" value="2" /> 187 <param argument="--mp" name="min_mismatch" type="integer" value="2" label="Minimum mismatch penalty" help="Sets the minimum mismatch penalty. A number less than or equal to MX and greater than or equal to MN is subtracted from the alignment score for each position where a read character aligns to a reference character, the characters do not match, and neither is an N. If --ignore-quals is specified, the number subtracted quals MX. Otherwise, the number subtracted is MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) ) where Q is the Phred quality value" />
176 <param argument="--np" help="Sets penalty for positions where the read, reference, or both, contain an ambiguous character such as N" label="Ambiguous read penalty" name="ambiguous_penalty" type="integer" value="1" /> 188 <param argument="--no-softclip" name="no_softclip" type="boolean" truevalue="--no-softclip" falsevalue="" label="Disallow soft-clipping" />
177 <param argument="--sp" help="Sets the maximum (MX) penalty for soft-clipping per base. A number less than or equal to MX and greater than or equal to MN is subtracted from the alignment score for each position. The number subtracted is MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) ) where Q is the Phred quality value." label="Maximum soft-clipping penalty" name="soft_clip_penalty_max" type="integer" value="2" /> 189 <param argument="--np" name="ambiguous_penalty" type="integer" value="1" label="Ambiguous read penalty" help="Sets penalty for positions where the read, reference, or both, contain an ambiguous character such as N" />
178 <param argument="--sp" help="Sets the minimum (MN) penalty for soft-clipping per base. A number less than or equal to MX and greater than or equal to MN is subtracted from the alignment score for each position. The number subtracted is MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) ) where Q is the Phred quality value." label="Minimum soft-clipping penalty" name="soft_clip_penalty_min" type="integer" value="1" /> 190 <param argument="--sp" name="soft_clip_penalty_max" type="integer" value="2" label="Maximum soft-clipping penalty" help="Sets the maximum (MX) penalty for soft-clipping per base. A number less than or equal to MX and greater than or equal to MN is subtracted from the alignment score for each position. The number subtracted is MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) ) where Q is the Phred quality value" />
179 <param argument="--rdg" help="A read gap of length N gets a penalty of [open_penalty] + N * [extend_penalty]" label="Read gap open penalty." name="read_open_penalty" type="integer" value="5" /> 191 <param argument="--sp" name="soft_clip_penalty_min" type="integer" value="1" label="Minimum soft-clipping penalty" help="Sets the minimum (MN) penalty for soft-clipping per base. A number less than or equal to MX and greater than or equal to MN is subtracted from the alignment score for each position. The number subtracted is MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) ) where Q is the Phred quality value" />
180 <param argument="--rdg" help="A read gap of length N gets a penalty of [open_penalty] + N * [extend_penalty]" label="Read gap extend penalty." name="read_extend_penalty" type="integer" value="3" /> 192 <param argument="--rdg" name="read_open_penalty" type="integer" value="5" label="Read gap open penalty" help="A read gap of length N gets a penalty of [open_penalty] + N * [extend_penalty]" />
181 <param argument="--rfg" help="A reference gap of length N gets a penalty of [open_penalty] + N * [extend_penalty]" label="Reference gap open penalty." name="ref_open_penalty" type="integer" value="5" /> 193 <param argument="--rdg" name="read_extend_penalty" type="integer" value="3" label="Read gap extend penalty" help="A read gap of length N gets a penalty of [open_penalty] + N * [extend_penalty]" />
182 <param argument="--rfg" help="A reference gap of length N gets a penalty of [open_penalty] + N * [extend_penalty]" label="Reference gap extend penalty." name="ref_extend_penalty" type="integer" value="3" /> 194 <param argument="--rfg" name="ref_open_penalty" type="integer" value="5" label="Reference gap open penalty" help="A reference gap of length N gets a penalty of [open_penalty] + N * [extend_penalty]" />
195 <param argument="--rfg" name="ref_extend_penalty" type="integer" value="3" label="Reference gap extend penalty" help="A reference gap of length N gets a penalty of [open_penalty] + N * [extend_penalty]" />
183 </when> 196 </when>
184 </conditional> 197 </conditional>
185 <conditional name="spliced_options"> 198 <conditional name="spliced_options">
186 <param label="Spliced alignment parameters" name="spliced_options_selector" type="select"> 199 <param name="spliced_options_selector" type="select" label="Spliced alignment parameters">
187 <option value="defaults">Use default values</option> 200 <option value="defaults">Use default values</option>
188 <option value="advanced">Specify spliced alignment parameters</option> 201 <option value="advanced">Specify spliced alignment parameters</option>
189 </param> 202 </param>
190 <when value="defaults" /> 203 <when value="defaults" />
191 <when value="advanced"> 204 <when value="advanced">
192 <param label="Penalty for canonical splice sites" name="canonical_penalty" type="integer" value="0" /> 205 <param name="canonical_penalty" type="integer" value="0" label="Penalty for canonical splice sites" />
193 <param label="Penalty for non-canonical splice sites" name="noncanonical_penalty" type="integer" value="3" /> 206 <param name="noncanonical_penalty" type="integer" value="3" label="Penalty for non-canonical splice sites" />
194 <param display="radio" label="Penalty for long introns with canonical splice sites" name="function_type" type="select"> 207 <param name="function_type" type="select" display="radio" label="Penalty for long introns with canonical splice sites">
195 <option value="C">Constant</option> 208 <option value="C">Constant</option>
196 <option value="L">Linear [f(x) = y + z * x]</option> 209 <option value="L">Linear [f(x) = y + z * x]</option>
197 <option value="S">Square root [f(x) = y + z * x&#178;]</option> 210 <option value="S">Square root [f(x) = y + z * x&#178;]</option>
198 <option value="G">Natural logarithm [f(x) = y + z * log(x)]</option> 211 <option value="G">Natural logarithm [f(x) = y + z * log(x)]</option>
199 </param> 212 </param>
200 <param help="Constant term for long canonical introns" label="Constant term (y)" name="constant_term" type="integer" value="0" /> 213 <param name="constant_term" type="integer" value="0" label="Constant term (y)" help="Constant term for long canonical introns" />
201 <param help="Coefficient for long canonical introns" label="Coefficient (z)" name="coefficient" type="integer" value="0" /> 214 <param name="coefficient" type="integer" value="0" label="Coefficient (z)" help="Coefficient for long canonical introns" />
202 <param display="radio" label="Penalty for long introns with noncanonical splice sites." name="nc_function_type" type="select"> 215 <param name="nc_function_type" type="select" display="radio" label="Penalty for long introns with noncanonical splice sites">
203 <option value="C">Constant</option> 216 <option value="C">Constant</option>
204 <option value="L">Linear [f(x) = y + z * x]</option> 217 <option value="L">Linear [f(x) = y + z * x]</option>
205 <option value="S">Square root [f(x) = y + z * x&#178;]</option> 218 <option value="S">Square root [f(x) = y + z * x&#178;]</option>
206 <option selected="True" value="G">Natural logarithm [f(x) = y + z * log(x)]</option> 219 <option value="G" selected="True">Natural logarithm [f(x) = y + z * log(x)]</option>
207 </param> 220 </param>
208 <param help="Constant term for long non-canonical introns" label="Constant term (y)" name="nc_constant_term" type="integer" value="-8" /> 221 <param name="nc_constant_term" type="integer" value="-8" label="Constant term (y)" help="Constant term for long non-canonical introns" />
209 <param help="Coefficient for long non-canonical introns" label="Coefficient (z)" name="nc_coefficient" type="integer" value="1" /> 222 <param name="nc_coefficient" type="integer" value="1" label="Coefficient (z)" help="Coefficient for long non-canonical introns" />
210 <param label="Minimum intron length" name="min_intron" type="integer" value="20" /> 223 <param name="min_intron" type="integer" value="20" label="Minimum intron length" />
211 <param label="Maximum intron length" name="max_intron" type="integer" value="500000" /> 224 <param name="max_intron" type="integer" value="500000" label="Maximum intron length" />
212 <param argument="--rna-strandness" name="rna_strandness" type="select" label="Specify strand-specific information" 225 <param argument="--rna-strandness" name="rna_strandness" type="select" label="Specify strand-specific information"
213 help="'F' means a read corresponds to a transcript. 'R' means a read corresponds to the reverse complemented counterpart of a transcript."> 226 help="'F' means a read corresponds to a transcript. 'R' means a read corresponds to the reverse complemented counterpart of a transcript">
214 <option value="">FR Unstranded</option> 227 <option value="">FR Unstranded</option>
215 <option value="R">First Strand (R/RF)</option> 228 <option value="R">First Strand (R/RF)</option>
216 <option value="F">Second Strand (F/FR)</option> 229 <option value="F">Second Strand (F/FR)</option>
217 </param> 230 </param>
218 <param argument="--no-spliced-alignment" name="no_spliced_alignment" type="boolean" truevalue="--no-spliced-alignment" falsevalue="" label="Disable spliced alignment" /> 231 <conditional name="no_spliced_alignment_options">
219 <param format="gtf" label="GTF file with known splice sites" name="known_splice_gtf" optional="True" type="data" /> 232 <param argument="--no-spliced-alignment" name="no_spliced_alignment" type="select" label="Disable spliced alignment">
220 <param display="radio" label="Transcriptome assembly reporting" name="tma" type="select"> 233 <option value="--no-spliced-alignment">True</option>
234 <option value="">False</option>
235 </param>
236 <when value="--no-spliced-alignment">
237 <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" />
238 <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" />
239 </when>
240 <when value="" />
241 </conditional>
242 <param name="known_splice_gtf" type="data" format="gtf" optional="true" label="GTF file with known splice sites" />
243 <param name="tma" type="select" display="radio" label="Transcriptome assembly reporting">
221 <option value="">Use default reporting.</option> 244 <option value="">Use default reporting.</option>
222 <option value="--tmo">Report only those alignments within known transcripts.</option> 245 <option value="--tmo">Report only those alignments within known transcripts.</option>
223 <option value="--dta">Report alignments tailored for transcript assemblers including StringTie.</option> 246 <option value="--dta">Report alignments tailored for transcript assemblers including StringTie.</option>
224 <option value="--dta-cufflinks">Report alignments tailored specifically for Cufflinks.</option> 247 <option value="--dta-cufflinks">Report alignments tailored specifically for Cufflinks.</option>
225 </param> 248 </param>
226 </when> 249 </when>
227 </conditional> 250 </conditional>
228 <conditional name="paired_options"> 251 <conditional name="paired_options">
229 <param label="Paired alignment parameters" name="paired_options_selector" type="select"> 252 <param name="paired_options_selector" type="select" label="Paired alignment parameters">
230 <option value="defaults">Use default values</option> 253 <option value="defaults">Use default values</option>
231 <option value="advanced">Specify paired alignment parameters</option> 254 <option value="advanced">Specify paired alignment parameters</option>
232 </param> 255 </param>
233 <when value="defaults" /> 256 <when value="defaults" />
234 <when value="advanced"> 257 <when value="advanced">
235 <param argument="--minins" help="The minimum fragment length for valid paired-end alignments. 0 sets no minimum." label="Minimum fragment length" name="minins" type="integer" value="0" /> 258 <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" />
236 <param argument="--maxins" help="The maximum fragment length for valid paired-end alignments" label="Maximum fragment length" name="maxins" type="integer" value="500" /> 259 <param argument="--maxins" name="maxins" type="integer" value="500" label="Maximum fragment length" help="The maximum fragment length for valid paired-end alignments" />
237 <param argument="--no-mixed" falsevalue="" 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" label="Disable finding alignments for individual mates." name="no_mixed" truevalue="--no-mixed" type="boolean" /> 260 <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" />
238 <param argument="--no-discordant" falsevalue="" 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" label="Disable looking for discordant alignments." name="no_discordant" truevalue="--no-discordant" type="boolean" /> 261 <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" />
239 <param argument="--dovetail" falsevalue="" 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." label="Mates not dovetail" name="dovetail" truevalue="--dovetail" type="boolean" /> 262 <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" />
240 <param argument="--no-contain" falsevalue="" help="If one mate alignment contains the other, consider that to be non-concordant." label="Mates cannot contain others" name="contain" truevalue="--no-contain" type="boolean" /> 263 <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" />
241 <param argument="--no-overlap" falsevalue="" help="If one mate alignment overlaps the other at all, consider that to be non-concordant." label="Mates cannot overlap" name="overlap" truevalue="--no-overlap" type="boolean" /> 264 <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" />
242 </when> 265 </when>
243 </conditional> 266 </conditional>
244 </inputs> 267 </inputs>
245 <outputs> 268 <outputs>
246 <data format="bam" name="output_alignments"> 269 <data name="output_alignments" format="bam">
247 <actions> 270 <actions>
248 <conditional name="reference_genome.reference_genome_source"> 271 <conditional name="reference_genome.reference_genome_source">
249 <when value="indexed"> 272 <when value="indexed">
250 <action type="metadata" name="dbkey"> 273 <action type="metadata" name="dbkey">
251 <option type="from_data_table" name="hisat2_indexes" column="1" offset="0"> 274 <option type="from_data_table" name="hisat2_indexes" column="1" offset="0">
252 <filter type="param_value" column="0" value="#" compare="startswith" keep="False"/> 275 <filter type="param_value" column="0" value="#" compare="startswith" keep="False"/>
253 <filter type="param_value" ref="reference_genome.index" column="0"/> 276 <filter type="param_value" ref="reference_genome.index" column="0"/>
254 </option> 277 </option>
255 </action> 278 </action>
256 </when> 279 </when>
257 <when value="history"> 280 <when value="history">
258 <action type="metadata" name="dbkey"> 281 <action type="metadata" name="dbkey">
259 <option type="from_param" name="reference_genome.history_item" param_attribute="dbkey" /> 282 <option type="from_param" name="reference_genome.history_item" param_attribute="dbkey" />
260 </action> 283 </action>
261 </when> 284 </when>
262 </conditional> 285 </conditional>
263 </actions> 286 </actions>
264 </data> 287 </data>
265 <data format="fastqsanger" name="output_unaligned_reads_l" label="${tool.name} on ${on_string}: unaligned reads (L)" > 288 <data name="output_unaligned_reads_l" format="fastqsanger" label="${tool.name} on ${on_string}: unaligned reads (L)" >
266 <filter>input_format['paired']['unaligned_file'] is True</filter> 289 <filter>input_format['paired']['unaligned_file'] is True</filter>
267 <actions> 290 <actions>
268 <conditional name="input_format.paired.paired_selector"> 291 <conditional name="input_format.paired.paired_selector">
269 <when value="single"> 292 <when value="single">
270 <action type="format"> 293 <action type="format">
282 </action> 305 </action>
283 </when> 306 </when>
284 </conditional> 307 </conditional>
285 </actions> 308 </actions>
286 </data> 309 </data>
287 <data format="fastqsanger" name="output_unaligned_reads_r" label="${tool.name} on ${on_string}: unaligned reads (R)" > 310 <data name="output_unaligned_reads_r" format="fastqsanger" label="${tool.name} on ${on_string}: unaligned reads (R)" >
288 <filter>input_format['paired']['unaligned_file'] is True and input_format['paired']['paired_selector'] != 'single'</filter> 311 <filter>input_format['paired']['unaligned_file'] is True and input_format['paired']['paired_selector'] != 'single'</filter>
289 <actions> 312 <actions>
290 <conditional name="input_format.paired.paired_selector"> 313 <conditional name="input_format.paired.paired_selector">
291 <when value="paired"> 314 <when value="paired">
292 <action type="format"> 315 <action type="format">
299 </action> 322 </action>
300 </when> 323 </when>
301 </conditional> 324 </conditional>
302 </actions> 325 </actions>
303 </data> 326 </data>
304 <data format="fastqsanger" name="output_aligned_reads_l" label="${tool.name} on ${on_string}: aligned reads${' (L)' if str($input_format.paired.paired_selector) != 'single' else ''}" > 327 <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 ''}" >
305 <filter>input_format['paired']['aligned_file'] is True</filter> 328 <filter>input_format['paired']['aligned_file'] is True</filter>
306 <actions> 329 <actions>
307 <conditional name="input_format.paired.paired_selector"> 330 <conditional name="input_format.paired.paired_selector">
308 <when value="single"> 331 <when value="single">
309 <action type="format"> 332 <action type="format">
321 </action> 344 </action>
322 </when> 345 </when>
323 </conditional> 346 </conditional>
324 </actions> 347 </actions>
325 </data> 348 </data>
326 <data format="fastqsanger" name="output_aligned_reads_r" label="${tool.name} on ${on_string}: aligned reads (R)" > 349 <data name="output_aligned_reads_r" format="fastqsanger" label="${tool.name} on ${on_string}: aligned reads (R)" >
327 <filter>input_format['paired']['aligned_file'] is True and input_format['paired']['paired_selector'] != 'single'</filter> 350 <filter>input_format['paired']['aligned_file'] is True and input_format['paired']['paired_selector'] != 'single'</filter>
328 <actions> 351 <actions>
329 <conditional name="input_format.paired.paired_selector"> 352 <conditional name="input_format.paired.paired_selector">
330 <when value="paired"> 353 <when value="paired">
331 <action type="format"> 354 <action type="format">
386 <param name="unaligned_file" value="true" /> 409 <param name="unaligned_file" value="true" />
387 <param name="aligned_file" value="true" /> 410 <param name="aligned_file" value="true" />
388 <param name="reference_genome_source" value="history" /> 411 <param name="reference_genome_source" value="history" />
389 <param name="history_item" value="phiX.fa" ftype="fasta" /> 412 <param name="history_item" value="phiX.fa" ftype="fasta" />
390 <param name="reads" value="test_unaligned_reads.fasta" ftype="fasta" /> 413 <param name="reads" value="test_unaligned_reads.fasta" ftype="fasta" />
391
392 <output name="output_unaligned_reads_l" file="test_unaligned_reads.fasta" /> 414 <output name="output_unaligned_reads_l" file="test_unaligned_reads.fasta" />
393 </test> 415 </test>
394
395 <test> 416 <test>
396 <param name="input_format_selector" value="fasta" /> 417 <param name="input_format_selector" value="fasta" />
397 <param name="paired_selector" value="paired" /> 418 <param name="paired_selector" value="paired" />
398 <param name="reference_genome_source" value="history" /> 419 <param name="reference_genome_source" value="history" />
399 <param name="history_item" value="phiX.fa" ftype="fasta" /> 420 <param name="history_item" value="phiX.fa" ftype="fasta" />
401 <param name="aligned_file" value="true" /> 422 <param name="aligned_file" value="true" />
402 <param name="reference_genome_source" value="history" /> 423 <param name="reference_genome_source" value="history" />
403 <param name="history_item" value="phiX.fa" ftype="fasta" /> 424 <param name="history_item" value="phiX.fa" ftype="fasta" />
404 <param name="reads_f" value="test_unaligned_reads.fasta" ftype="fasta" /> 425 <param name="reads_f" value="test_unaligned_reads.fasta" ftype="fasta" />
405 <param name="reads_r" value="test_unaligned_reads.fasta" ftype="fasta" /> 426 <param name="reads_r" value="test_unaligned_reads.fasta" ftype="fasta" />
406
407 <output name="output_unaligned_reads_l" file="test_unaligned_reads.fasta" /> 427 <output name="output_unaligned_reads_l" file="test_unaligned_reads.fasta" />
408 <output name="output_unaligned_reads_r" file="test_unaligned_reads.fasta" /> 428 <output name="output_unaligned_reads_r" file="test_unaligned_reads.fasta" />
409 </test> 429 </test>
410 </tests> 430 </tests>
411 <help> 431 <help>