Mercurial > repos > iuc > stacks2_refmap
comparison macros.xml @ 0:524bd85b0bec draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/stacks2 commit b395fa36fa826e26085820ba3a9faacaeddcb460
| author | iuc |
|---|---|
| date | Mon, 01 Jul 2019 10:54:35 -0400 |
| parents | |
| children | e1f99efbfd81 |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:524bd85b0bec |
|---|---|
| 1 <?xml version="1.0"?> | |
| 2 <macros> | |
| 3 <xml name="requirements"> | |
| 4 <requirements> | |
| 5 <requirement type="package" version="@STACKS_VERSION@">stacks</requirement> | |
| 6 <yield/> | |
| 7 </requirements> | |
| 8 </xml> | |
| 9 | |
| 10 <token name="@STACKS_VERSION@">2.4</token> | |
| 11 <token name="@WRAPPER_VERSION@">0</token> | |
| 12 <!-- fix to 18.01 since https://github.com/galaxyproject/galaxy/pull/7032 --> | |
| 13 <token name="@PROFILE@">18.01</token> | |
| 14 | |
| 15 <xml name="citation"> | |
| 16 <citations> | |
| 17 <citation type="doi">10.1111/mec.12354</citation> | |
| 18 <citation type="doi">10.1111/mec.12330</citation> | |
| 19 <citation type="doi">10.1534/g3.111.000240</citation> | |
| 20 <citation type="doi">10.1534/genetics.111.127324</citation> | |
| 21 <citation type="doi">10.1111/j.1755-0998.2010.02967.x</citation> | |
| 22 <citation type="doi">10.1073/pnas.1006538107</citation> | |
| 23 </citations> | |
| 24 </xml> | |
| 25 | |
| 26 <xml name="version_cmd"> | |
| 27 <version_command><![CDATA[ | |
| 28 process_radtags -h |& grep process_radtags | head -n 1 | cut -d" " -f 2 | |
| 29 ]]> | |
| 30 </version_command> | |
| 31 </xml> | |
| 32 | |
| 33 <token name="@STACKS_INFOS@"> | |
| 34 <![CDATA[ | |
| 35 -------- | |
| 36 | |
| 37 **Created by:** | |
| 38 | |
| 39 Stacks was developed by Julian Catchen with contributions from Angel Amores, Paul Hohenlohe, and Bill Cresko | |
| 40 | |
| 41 **Project links:** | |
| 42 | |
| 43 `Stacks website <http://catchenlab.life.illinois.edu/stacks/>`_ | |
| 44 | |
| 45 `Stacks manual <http://catchenlab.life.illinois.edu/stacks/manual/>`_ | |
| 46 | |
| 47 `Stacks google group <http://groups.google.com/group/stacks-users>`_ | |
| 48 ]]></token> | |
| 49 | |
| 50 <!-- enzyme list for procrad and denovo --> | |
| 51 <xml name="enzymes"> | |
| 52 <option value="">Unspecified</option> | |
| 53 <option value="aciI">aciI</option> | |
| 54 <option value="ageI">ageI</option> | |
| 55 <option value="aluI">aluI</option> | |
| 56 <option value="apaLI">apaLI</option> | |
| 57 <option value="apeKI">apeKI</option> | |
| 58 <option value="apoI">apoI</option> | |
| 59 <option value="aseI">aseI</option> | |
| 60 <option value="bamHI">bamHI</option> | |
| 61 <option value="bbvCI">bbvCI</option> | |
| 62 <option value="bfaI">bfaI</option> | |
| 63 <option value="bfuCI">bfuCI</option> | |
| 64 <option value="bgIII">bgIII</option> | |
| 65 <option value="bsaHI">bsaHI</option> | |
| 66 <option value="bspDI">bspDI</option> | |
| 67 <option value="bstYI">bstYI</option> | |
| 68 <option value="cac8I">cac8I</option> | |
| 69 <option value="claI">claI</option> | |
| 70 <option value="csp6I">csp6I</option> | |
| 71 <option value="ddeI">ddeI</option> | |
| 72 <option value="dpnII">dpnII</option> | |
| 73 <option value="eaeI">eaeI</option> | |
| 74 <option value="ecoRI">ecoRI</option> | |
| 75 <option value="ecoRV">ecoRV</option> | |
| 76 <option value="ecoT22I">ecoT22I</option> | |
| 77 <option value="haeIII">haeIII</option> | |
| 78 <option value="hindIII">hindIII</option> | |
| 79 <option value="hinP1I">hinP1I</option> | |
| 80 <option value="hpaII">hpaII</option> | |
| 81 <option value="kpnI">kpnI</option> | |
| 82 <option value="mluCI">mluCI</option> | |
| 83 <option value="mseI">mseI</option> | |
| 84 <option value="mslI">mslI</option> | |
| 85 <option value="mspI">mspI</option> | |
| 86 <option value="ncoI">ncoI</option> | |
| 87 <option value="ndeI">ndeI</option> | |
| 88 <option value="nheI">nheI</option> | |
| 89 <option value="nlaIII">nlaIII</option> | |
| 90 <option value="notI">notI</option> | |
| 91 <option value="nsiI">nsiI</option> | |
| 92 <option value="nspI">nspI</option> | |
| 93 <option value="pstI">pstI</option> | |
| 94 <option value="rsaI">rsaI</option> | |
| 95 <option value="sacI">sacI</option> | |
| 96 <option value="sau3AI">sau3AI</option> | |
| 97 <option value="sbfI">sbfI</option> | |
| 98 <option value="sexAI">sexAI</option> | |
| 99 <option value="sgrAI">sgrAI</option> | |
| 100 <option value="speI">speI</option> | |
| 101 <option value="sphI">sphI</option> | |
| 102 <option value="taqI">taqI</option> | |
| 103 <option value="xbaI">xbaI</option> | |
| 104 <option value="xhoI">xhoI</option> | |
| 105 </xml> | |
| 106 | |
| 107 <!-- log file handling --> | |
| 108 <token name="@TEE_APPEND_LOG@"><![CDATA[ | |
| 109 #if $output_log | |
| 110 2>> '$output_log' && | |
| 111 #end if | |
| 112 ]]></token> | |
| 113 <token name="@CAT_LOG_TO_STDERR@"><![CDATA[ | |
| 114 #if $output_log | |
| 115 cat '$output_log' 2>&1 | |
| 116 #end if | |
| 117 ]]></token> | |
| 118 <xml name="in_log"> | |
| 119 <param name="add_log" type="boolean" checked="true" truevalue="yes" falsevalue="no" label="Add log output as dataset" /> | |
| 120 </xml> | |
| 121 <xml name="out_log"> | |
| 122 <data format="txt" name="output_log" label="${tool.name} on ${on_string} log file"> | |
| 123 <filter>add_log</filter> | |
| 124 </data> | |
| 125 </xml> | |
| 126 | |
| 127 <!-- inputs from previous pipeline steps --> | |
| 128 <xml name="input_stacks_macro"> | |
| 129 <param name="input_stacks" format="tabular,txt" type="data_collection" collection_type="list" label="Loci and polymorphism" help="output from previous Stacks pipeline steps e.g. denovo_map, refmap or ustacks" /> | |
| 130 </xml> | |
| 131 <xml name="input_cat_macro"> | |
| 132 <param name="input_cat" format="tabular,txt" type="data_collection" collection_type="list" label="Catalog of loci" help="output from a previous Stacks pipeline steps e.g. denovo_map, refmap or cstacks" /> | |
| 133 </xml> | |
| 134 <xml name="input_matches_macro"> | |
| 135 <param name="input_matches" format="tabular,txt" type="data_collection" collection_type="list" label="Matches to the catalog" help="output from previous Stacks pipeline steps e.g. denovo_map, refmap or sstacks" /> | |
| 136 </xml> | |
| 137 <xml name="bam_input_macro"> | |
| 138 <param name="input_bam" format="bam" type="data" multiple="true" optional="false" label="Aligned data" help="either the matches to the catalog (bam), i.e. tsv2bam, or reads aligned to a reference" /> | |
| 139 </xml> | |
| 140 <xml name="input_aln_macro"> | |
| 141 <param name="input_aln" format="vcf,fasta.gz" type="data_collection" collection_type="list" label="Assembled contigs and variant sites" help="output from previous Stacks pipeline steps (e.g. gstacks, denovo_map, or refmap)" argument="-P" /> | |
| 142 </xml> | |
| 143 | |
| 144 <!-- code for creating links to the data sets from previous pipeline steps | |
| 145 - stacks (i.e ustacks outputs POP.tags.tsv, POP.alleles.tsv, POP.snps.tsv) | |
| 146 also stores sample names in list (samples) | |
| 147 - cat (cstacks catalog.tags.tsv, catalog.alleles.tsv, catalog.snps.tsv) | |
| 148 - matches (sstacks POP.matches.tsv) --> | |
| 149 <token name="@LINK_STACKS_INPUT@"><![CDATA[ | |
| 150 #set $samples = [] | |
| 151 #for $input_file in $input_stacks | |
| 152 #set $filename = str($input_file.element_identifier) | |
| 153 #if not filename.endswith('.tsv') | |
| 154 #set $filename = $filename + ".tsv" | |
| 155 #end if | |
| 156 #if re.search('^(?!catalog).+\.(tags|alleles|snps)\.tsv$', $filename) | |
| 157 ln -s '${input_file}' 'stacks_inputs/$filename' && | |
| 158 #if $filename.endswith('.tags.tsv') | |
| 159 $samples.append($filename[:-9]) | |
| 160 #end if | |
| 161 #end if | |
| 162 #end for | |
| 163 ]]> | |
| 164 </token> | |
| 165 <token name="@LINK_CAT_INPUT@"><![CDATA[ | |
| 166 #for $input_file in $input_cat | |
| 167 #set $filename = str($input_file.element_identifier) | |
| 168 #if not filename.endswith('.tsv') | |
| 169 #set $filename = $filename + ".tsv" | |
| 170 #end if | |
| 171 #if re.search('^catalog\.(tags|alleles|snps)\.tsv$', $filename) | |
| 172 ln -s '${input_file}' 'stacks_inputs/$filename' && | |
| 173 #end if | |
| 174 #end for | |
| 175 ]]></token> | |
| 176 <token name="@LINK_MATCHES_INPUT@"><![CDATA[ | |
| 177 #for $input_file in $input_matches | |
| 178 #set $filename = str($input_file.element_identifier) | |
| 179 #if not filename.endswith('.tsv') | |
| 180 #set $filename = $filename + ".tsv" | |
| 181 #end if | |
| 182 #if re.search('matches.tsv$', $filename) | |
| 183 ln -s '${input_file}' 'stacks_inputs/$filename' && | |
| 184 #end if | |
| 185 #end for | |
| 186 ]]></token> | |
| 187 | |
| 188 <!-- fastq input for process_radtags/shortreads (non-batch) and clone/kmerfilter (batch) | |
| 189 for batch processing chose multiple=false and paired | |
| 190 otherwise multiple=true and listtype=list:paired --> | |
| 191 <xml name="fastq_input_bc" token_multiple="false" token_listtype="paired"> | |
| 192 <conditional name="input_type"> | |
| 193 <param name="input_type_select" type="select" label="Single-end or paired-end reads"> | |
| 194 <option value="single" selected="True">Single-end files</option> | |
| 195 <option value="paired">Paired-end files</option> | |
| 196 </param> | |
| 197 <when value="single"> | |
| 198 <param name="fqinputs" argument="-f" type="data" format="fastqsanger,fastqsanger.gz" multiple="@MULTIPLE@" label="Singles-end reads" /> | |
| 199 <param name="barcode_encoding" type="select" label="Barcode location"> | |
| 200 <expand macro="barcode_encoding_single" type="Barcode" /> | |
| 201 </param> | |
| 202 </when> | |
| 203 <when value="paired"> | |
| 204 <param name="fqinputs" type="data_collection" collection_type="@LISTTYPE@" label="Paired-end reads" format="fastqsanger,fastqsanger.gz"/> | |
| 205 <param name="barcode_encoding" type="select" label="Barcode location"> | |
| 206 <expand macro="barcode_encoding_pair" type="Barcode" /> | |
| 207 </param> | |
| 208 </when> | |
| 209 </conditional> | |
| 210 <yield/> | |
| 211 </xml> | |
| 212 | |
| 213 <xml name="fastq_input_bc_file" token_multiple="false" token_listtype="paired"> | |
| 214 <expand macro="fastq_input_bc" multiple="@MULTIPLE@" listtype="@LISTTYPE@"> | |
| 215 <param name="barcode" argument="-b" type="data" format="tabular,txt" label="Barcode file" /> | |
| 216 </expand> | |
| 217 </xml> | |
| 218 | |
| 219 <!-- fastq input (used in denovomap, tsv2bam, ustacks) | |
| 220 - fastq_optional: makes fastq input optional (true/false) | |
| 221 - se_option: wording for "single end" option (for tsv2bam this is the | |
| 222 reverse reads for the others its the forward reads) | |
| 223 - help: help text --> | |
| 224 <xml name="fastq_input" token_fastq_optional="false" token_se_option="single end or forward reads" token_help=""> | |
| 225 <conditional name="input_type"> | |
| 226 <param name="input_type_select" type="select" label="Short read data from individuals" help="@HELP@"> | |
| 227 <option value="single" selected="true">@SE_OPTION@</option> | |
| 228 <option value="paired">(paired) dataset list</option> | |
| 229 </param> | |
| 230 <when value="single"> | |
| 231 <param name="fqinputs" argument="-f" format="fastqsanger,fastqsanger.gz,fasta,fasta.gz" type="data" label="Reads" multiple="true" optional="@FASTQ_OPTIONAL@"/> | |
| 232 </when> | |
| 233 <when value="paired"> | |
| 234 <param name="fqinputs" argument="-f" type="data_collection" collection_type="list:paired" format="fastqsanger,fastqsanger.gz,fasta,fasta.gz" label="List for forward reads or read pairs" optional="@FASTQ_OPTIONAL@"/> | |
| 235 </when> | |
| 236 </conditional> | |
| 237 </xml> | |
| 238 | |
| 239 <!-- helper functions for linking fastq data sets --> | |
| 240 <token name="@FASTQ_INPUT_FUNCTIONS@"><![CDATA[ | |
| 241 #from os.path import splitext | |
| 242 #import re | |
| 243 | |
| 244 #def clean_ext($identifier) | |
| 245 #while $identifier.endswith(('.1', '.2', '.fa', '.fq', '.fasta', '.fastq', '.gz', '.gzip', '.sam', '.bam')) | |
| 246 #set $identifier = splitext($identifier)[0] | |
| 247 #end while | |
| 248 $identifier#slurp | |
| 249 #end def | |
| 250 | |
| 251 #def fastq_input_foo( $sample, $read_direction="", $infix="" ) | |
| 252 #set $name = $clean_ext($sample.element_identifier) | |
| 253 #if $sample.is_collection: | |
| 254 #set $cur_sample=$sample[$read_direction] | |
| 255 #else: | |
| 256 #set $cur_sample=$sample | |
| 257 #end if | |
| 258 | |
| 259 #if $cur_sample.is_of_type('fastqsanger') | |
| 260 #set $ext = "fastq" | |
| 261 #set $inputype = "fastq" | |
| 262 #else if $cur_sample.is_of_type('fastqsanger.gz') | |
| 263 #set $ext = "fastq.gz" | |
| 264 #set $inputype = "gzfastq" | |
| 265 #else if $cur_sample.is_of_type('fasta') | |
| 266 #set $ext = "fasta" | |
| 267 #set $inputype = "fasta" | |
| 268 #else if $cur_sample.is_of_type('fasta.gz') | |
| 269 #set $ext = "fasta.gz" | |
| 270 #set $inputype = "gzfasta" | |
| 271 #else | |
| 272 #set $inputype = "UNKNOWN" | |
| 273 #end if | |
| 274 #set $data_path = "stacks_inputs/"+$name+$infix+"."+$ext | |
| 275 #set $link_cmd = "ln -s '%s' '%s' &&" % ($cur_sample, $data_path) | |
| 276 #return ($link_cmd, $data_path, $name, $inputype) | |
| 277 #end def | |
| 278 | |
| 279 ## fastq_input_batch determine link command, access path(s), and input type | |
| 280 ## for batch tools | |
| 281 ## | |
| 282 ## inputs | |
| 283 ## - sample data set / pair | |
| 284 ## - type "single" / "paired" | |
| 285 ## return (link_command, fwd_path, rev_path, inputype) | |
| 286 ## - link_command bash command(s) to link the data sets | |
| 287 ## - fwd_path file name of the link to the forward data set | |
| 288 ## - rev_path file name of the link to the forward data set (if type=paired) | |
| 289 ## - inputype input type as used in stacks ([gz]fast(a|q)) | |
| 290 #def fastq_input_batch($sample, $type) | |
| 291 #if $type == "single" | |
| 292 #set ($link_cmd, $path, $name, $inputype) = $fastq_input_foo($sample, "", "") | |
| 293 #return ($link_cmd, $path, "", $inputype) | |
| 294 #else: | |
| 295 #set ($fwd_link_cmd, $fwd_path, $name, $inputype) = $fastq_input_foo($sample, "forward", ".1") | |
| 296 #set ($rev_link_cmd, $rev_path, $name, $inputype) = $fastq_input_foo($sample, "reverse", ".2") | |
| 297 #return ( $fwd_link_cmd+$rev_link_cmd, $fwd_path, $rev_path, $inputype) | |
| 298 #end if | |
| 299 #end def | |
| 300 | |
| 301 ## fastq_input_nonbatch determine link command, access path(s), and input type | |
| 302 ## for non-batch tools (procrad, shortreads, denovomap the former need R[12]_ | |
| 303 ## and the latter needs .[12]) | |
| 304 ## | |
| 305 ## inputs | |
| 306 ## - samples list of data set / pair | |
| 307 ## - type "single" / "paired" | |
| 308 ## - infix_pattern pattern for the infix of the files (needs to contain %d which is replaced by 1/2) | |
| 309 ## return (link_command, inputype) | |
| 310 ## - link_command bash command(s) to link the data sets | |
| 311 ## - inputype input type as used in stacks ([gz]fast(a|q)) | |
| 312 #def fastq_input_nonbatch( $samples, $type, $infix_pattern ) | |
| 313 #set $link_command = "" | |
| 314 #for $sample in $samples | |
| 315 #if $type == "single" | |
| 316 #set ($lc, $path, $name, $inputype) = $fastq_input_foo($sample, "", "") | |
| 317 #set link_command += lc | |
| 318 #else: | |
| 319 #set ($lc, $path, $name, $inputype) = $fastq_input_foo($sample, "forward", $infix_pattern % (1)) | |
| 320 #set link_command += lc | |
| 321 #set ($lc, $path, $name, $inputype) = $fastq_input_foo($sample, "reverse", $infix_pattern % (2)) | |
| 322 #set link_command += lc | |
| 323 #end if | |
| 324 #end for | |
| 325 #return ($link_command, $inputype) | |
| 326 #end def | |
| 327 ]]></token> | |
| 328 | |
| 329 <!-- macro and token for BAM input, for each bam file w identifier NAME | |
| 330 - creates a link NAME.bam <- bam_inputs/NAME.INFIX.bam | |
| 331 - appends -B bam_inputs/NAME.INFIX.bam to variable bamlist | |
| 332 | |
| 333 INFIX is set to"" per default, can be set with optional variable $infix | |
| 334 only needed for gstacks in denovo mode which needs .matches.bam --> | |
| 335 <token name="@BAM_INPUT@"><![CDATA[ | |
| 336 #set $bamlist = "" | |
| 337 #for $bam in $input_bam: | |
| 338 #if $bam.is_of_type('bam') | |
| 339 #set $filename = $clean_ext($bam.element_identifier)+".bam" | |
| 340 ln -s '$bam' bam_inputs/$filename && | |
| 341 #set bamlist += " -B 'bam_inputs/"+$filename+"'" | |
| 342 #end if | |
| 343 #end for | |
| 344 ]]></token> | |
| 345 | |
| 346 <token name="@EXTRACT_VCF@"><![CDATA[ | |
| 347 ## the catalog.calls output is a gzip-ed vcf extract it | |
| 348 ## to make it usable in Galaxy (with the downside that we | |
| 349 ## need to gzip it again for downstream calls like populations) | |
| 350 && gunzip -c stacks_outputs/catalog.calls > stacks_outputs/catalog.calls.vcf | |
| 351 ]]></token> | |
| 352 | |
| 353 | |
| 354 | |
| 355 <!-- tokens and macros for gapped alignment options | |
| 356 the _onoff macro gives an empty conditional (which is not so nice | |
| 357 but allows to be used also in the full macro) --> | |
| 358 <token name="@GAP_OPTIONS@"><![CDATA[ | |
| 359 #if $gapped.use_gapped == "yes" | |
| 360 --max_gaps $gapped.max_gaps | |
| 361 --min_aln_len $gapped.min_aln_len | |
| 362 #else | |
| 363 --disable-gapped | |
| 364 #end if | |
| 365 ]]></token> | |
| 366 <token name="@GAP_OPTIONS_ONOFF@"><![CDATA[ | |
| 367 #if $gapped.use_gapped != "yes" | |
| 368 --disable-gapped | |
| 369 #end if | |
| 370 ]]></token> | |
| 371 <xml name="gap_options"> | |
| 372 <expand macro="gap_options_onoff"> | |
| 373 <param argument="--max_gaps" type="float" value="2.0" label="Number of gaps allowed between stacks before merging"/> | |
| 374 <param argument="--min_aln_len" type="float" value="0.8" min="0.0" max="1.0" label="Minimum length of aligned sequence in a gapped alignment"/> | |
| 375 </expand> | |
| 376 </xml> | |
| 377 <xml name="gap_options_onoff"> | |
| 378 <conditional name="gapped"> | |
| 379 <param name="use_gapped" argument="--disable-gapped" type="select" label="Perform gapped alignments between stacks"> | |
| 380 <option value="no">No</option> | |
| 381 <option value="yes" selected="true">Yes</option> | |
| 382 </param> | |
| 383 <when value="no"/> | |
| 384 <when value="yes"> | |
| 385 <yield/> | |
| 386 </when> | |
| 387 </conditional> | |
| 388 </xml> | |
| 389 | |
| 390 | |
| 391 <!-- ustacks outputs collection containing SAMPLE.tags.tsv, SAMPLE.snps.tsv, SAMPLE.alleles.tsv (SAMPLE!=catalog) --> | |
| 392 <!-- TODO tags, snps, and alleles could go to sub collections; same for other tools --> | |
| 393 <xml name="ustacks_outputs_macro" token_tooladd=""> | |
| 394 <collection name="tabs" type="list" label="${tool.name} @TOOLADD@ on ${on_string} Loci and polymorphism"> | |
| 395 <discover_datasets pattern="(?P<name>(?!catalog).+\.tags)\.tsv$" ext="tabular" directory="stacks_outputs" /> | |
| 396 <discover_datasets pattern="(?P<name>(?!catalog).+\.snps)\.tsv$" ext="tabular" directory="stacks_outputs" /> | |
| 397 <discover_datasets pattern="(?P<name>(?!catalog).+\.alleles)\.tsv$" ext="tabular" directory="stacks_outputs" /> | |
| 398 </collection> | |
| 399 </xml> | |
| 400 <!-- cstacks outputs collection containing catalog.tags.tsv, catalog.snps.tsv, catalog.alleles.tsv --> | |
| 401 <xml name="cstacks_outputs_macro" token_tooladd=""> | |
| 402 <collection name="catalog" type="list" label="${tool.name} @TOOLADD@ on ${on_string} Catalog of loci"> | |
| 403 <discover_datasets pattern="(?P<name>catalog\.(tags|snps|alleles))\.tsv$" ext="tabular" directory="stacks_outputs" /> | |
| 404 </collection> | |
| 405 </xml> | |
| 406 <!-- sstacks outputs collection containing SAMPLE.matches.tsv --> | |
| 407 <xml name="sstacks_outputs_macro" token_tooladd=""> | |
| 408 <collection name="matches" type="list" label="${tool.name} @TOOLADD@ on ${on_string} Matches to the catalog"> | |
| 409 <discover_datasets pattern="(?P<name>.+\.matches)\.tsv$" ext="tabular" directory="stacks_outputs" /> | |
| 410 </collection> | |
| 411 </xml> | |
| 412 <!-- tsv2bam outputs collection containing SAMPLE.matches.bam --> | |
| 413 <xml name="tsv2bam_outputs_macro" token_tooladd=""> | |
| 414 <collection name="bams" type="list" label="${tool.name} @TOOLADD@ on ${on_string} Matches to the catalog (bam)"> | |
| 415 <discover_datasets pattern="(?P<name>.+\.matches)\.bam$" ext="bam" directory="stacks_outputs" /> | |
| 416 </collection> | |
| 417 </xml> | |
| 418 <!-- gstacks outputs collection containing catalog.calls.vcf and catalog.fa.gz | |
| 419 + optional output alignments.bam (if no popmap is given) and POP.alns.bam otherwise--> | |
| 420 <xml name="gstacks_outputs_full_macro" token_tooladd=""> | |
| 421 <expand macro="gstacks_outputs_macro"/> | |
| 422 <data format="txt" name="distribs" label="${tool.name} on ${on_string} log.distribs" from_work_dir="stacks_outputs/gstacks.log.distribs"> | |
| 423 <filter>add_log_distribs</filter> | |
| 424 </data> | |
| 425 <collection name="gstacks_alns_out" type="list" label="${tool.name} @TOOLADD@ on ${on_string} Read alignments"> | |
| 426 <discover_datasets pattern="(?P<name>.*).alns.bam$" ext="bam" directory="stacks_outputs" /> | |
| 427 <filter>mode_cond['mode_select'] == 'denovo' and mode_cond['advanced_cond']['advanced_select'] == "yes" and mode_cond['advanced_cond']['write_alignments'] != "" and popmap!=None</filter> | |
| 428 </collection> | |
| 429 <data name="gstacks_aln_out" format="bam" label="${tool.name} @TOOLADD@ on ${on_string} Read alignment" from_work_dir="stacks_outputs/alignments.bam"> | |
| 430 <filter>mode_cond['mode_select'] == 'denovo' and mode_cond['advanced_cond']['advanced_select'] == "yes" and mode_cond['advanced_cond']['write_alignments'] != "" and popmap==None</filter> | |
| 431 </data> | |
| 432 </xml> | |
| 433 <xml name="gstacks_outputs_macro" token_tooladd=""> | |
| 434 <collection name="gstacks_out" type="list" label="${tool.name} @TOOLADD@ on ${on_string} Assembled contigs and variant sites"> | |
| 435 <discover_datasets pattern="(?P<name>catalog\.calls\.vcf)$" ext="vcf" directory="stacks_outputs" /> | |
| 436 <discover_datasets pattern="(?P<name>catalog\.fa\.gz)$" ext="fasta.gz" directory="stacks_outputs" /> | |
| 437 </collection> | |
| 438 </xml> | |
| 439 | |
| 440 <!-- default output of populations --> | |
| 441 <xml name="populations_output_light" token_tooladd=""> | |
| 442 <data format="tabular" name="out_haplotypes" label="${tool.name} @TOOLADD@ on ${on_string} Raw Genotypes/Haplotypes" from_work_dir="stacks_outputs/populations.haplotypes.tsv" /> | |
| 443 <data format="tabular" name="out_hapstats" label="${tool.name} @TOOLADD@ on ${on_string} Population-level haplotype summary statistics" from_work_dir="stacks_outputs/populations.hapstats.tsv" /> | |
| 444 <data format="txt" name="out_populations_log_distribs" label="${tool.name} @TOOLADD@ on ${on_string} Populations log distributions" from_work_dir="stacks_outputs/populations.log.distribs" /> | |
| 445 <data format="tabular" name="out_sumstats_sum" label="${tool.name} @TOOLADD@ on ${on_string} Summary of Population-level summary statistics" from_work_dir="stacks_outputs/populations.sumstats_summary.tsv" /> | |
| 446 <data format="tabular" name="out_sumstats" label="${tool.name} @TOOLADD@ on ${on_string} Population-level summary statistics" from_work_dir="stacks_outputs/populations.sumstats.tsv" /> | |
| 447 <data format="tabular" name="out_sql" label="${tool.name} @TOOLADD@ on ${on_string} Genotyping markers" from_work_dir="stacks_outputs/populations.markers.tsv" /> | |
| 448 </xml> | |
| 449 | |
| 450 <xml name="populations_output_full"> | |
| 451 <expand macro="populations_output_light"/> | |
| 452 | |
| 453 <!-- log_fst_comp populations.fst_summary.tsv populations.phistats_summary.tsv populations.phistats.tsv--> | |
| 454 <data format="tabular" name="out_phistats" label="${tool.name} on ${on_string} Phi_st statistics" from_work_dir="stacks_outputs/populations.phistats.tsv"> | |
| 455 <filter>advanced_options['log_fst_comp'] and fstats_conditional['fstats']=='yes'</filter> | |
| 456 </data> | |
| 457 <data format="tabular" name="out_phistats_sum" label="${tool.name} on ${on_string} Summary of Phi_st statistics" from_work_dir="stacks_outputs/populations.phistats_summary.tsv"> | |
| 458 <filter>advanced_options['log_fst_comp'] and fstats_conditional['fstats']=='yes'</filter> | |
| 459 </data> | |
| 460 <data format="tabular" name="out_fststats_sum" label="${tool.name} on ${on_string} Summary of Fst statistics" from_work_dir="stacks_outputs/populations.fst_summary.tsv"> | |
| 461 <filter>advanced_options['log_fst_comp'] and fstats_conditional['fstats']=='yes'</filter> | |
| 462 </data> | |
| 463 | |
| 464 <!-- fasta_loci populations.loci.fa | |
| 465 fasta_samples populations.samples.fa | |
| 466 fasta_samples_raw populations.samples-raw.fa--> | |
| 467 <data format="tabular" name="out_fasta_strict" label="${tool.name} on ${on_string} per-locus consensus sequences" from_work_dir="stacks_outputs/populations.loci.fa"> | |
| 468 <filter>populations_output['fasta_loci']</filter> | |
| 469 </data> | |
| 470 <data format="tabular" name="out_fasta" label="${tool.name} on ${on_string} per-locus, per-haplotpye sequences" from_work_dir="stacks_outputs/populations.samples.fa"> | |
| 471 <filter>populations_output['fasta_samples']</filter> | |
| 472 </data> | |
| 473 <data format="tabular" name="out_fasta_raw" label="${tool.name} on ${on_string} per-locus, per-haplotpye sequences (regardless of biological plausibility)" from_work_dir="stacks_outputs/populations.samples-raw.fa"> | |
| 474 <filter>populations_output['fasta_samples_raw']</filter> | |
| 475 </data> | |
| 476 | |
| 477 <!-- phylip populations.fixed.phylip populations.fixed.phylip.log | |
| 478 phylip_var populations.var.phylip populations.var.phylip.log--> | |
| 479 <data format="tabular" name="out_phylip_all_pop_fix" label="${tool.name} on ${on_string} Phylip nucleotides that are fixed-within, and variant among populations" from_work_dir="stacks_outputs/populations.fixed.phylip"> | |
| 480 <filter>populations_output['phylip']</filter> | |
| 481 </data> | |
| 482 <data format="tabular" name="out_phylip_all_loci_fix" label="${tool.name} on ${on_string} Phylip (loci) nucleotides that are fixed-within, and variant among populations" from_work_dir="stacks_outputs/populations.fixed.phylip.log"> | |
| 483 <filter>populations_output['phylip']</filter> | |
| 484 </data> | |
| 485 <data format="tabular" name="out_phylip_all_pop_var" label="${tool.name} on ${on_string} Phylip all sequence as well as variable sites" from_work_dir="stacks_outputs/populations.var.phylip"> | |
| 486 <filter>populations_output['phylip_var']</filter> | |
| 487 </data> | |
| 488 <data format="tabular" name="out_phylip_all_loci_var" label="${tool.name} on ${on_string} Phylip (loci) all sequence as well as variable sites" from_work_dir="stacks_outputs/populations.var.phylip.log"> | |
| 489 <filter>populations_output['phylip_var']</filter> | |
| 490 </data> | |
| 491 | |
| 492 <!-- genepop populations.haps.genepop populations.snps.genepop --> | |
| 493 <data format="tabular" name="out_genepop_snps" label="${tool.name} on ${on_string} SNPs in GenePop format" from_work_dir="stacks_outputs/populations.snps.genepop"> | |
| 494 <filter>populations_output['genepop']</filter> | |
| 495 </data> | |
| 496 <data format="tabular" name="out_genepop_haps" label="${tool.name} on ${on_string} Haplotypes in GenePop format" from_work_dir="stacks_outputs/populations.haps.genepop"> | |
| 497 <filter>populations_output['genepop']</filter> | |
| 498 </data> | |
| 499 | |
| 500 <!-- vcf populations.haps.vcf populations.snps.vcf --> | |
| 501 <data format="vcf" name="out_vcf_haplotypes_snps" label="${tool.name} on ${on_string} SNPs in VCF format" from_work_dir="stacks_outputs/populations.snps.vcf"> | |
| 502 <filter>populations_output['vcf']</filter> | |
| 503 </data> | |
| 504 <data format="vcf" name="out_vcf_haplotypes_haps" label="${tool.name} on ${on_string} Haplotypes in VCF format" from_work_dir="stacks_outputs/populations.haps.vcf"> | |
| 505 <filter>populations_output['vcf']</filter> | |
| 506 </data> | |
| 507 | |
| 508 <!--plink populations.plink.map populations.plink.ped--> | |
| 509 <data format="tabular" name="out_plink_markers" label="${tool.name} on ${on_string} PLINK (makers)" from_work_dir="stacks_outputs/populations.plink.map"> | |
| 510 <filter>populations_output['plink']</filter> | |
| 511 </data> | |
| 512 <data format="tabular" name="out_plink_genotypes" label="${tool.name} on ${on_string} PLINK format (genotypes)" from_work_dir="stacks_outputs/populations.plink.ped"> | |
| 513 <filter>populations_output['plink']</filter> | |
| 514 </data> | |
| 515 | |
| 516 <!--structure populations.hzar--> | |
| 517 <data format="tabular" name="out_hzar" label="${tool.name} on ${on_string} hzar format" from_work_dir="stacks_outputs/populations.hzar.csv"> | |
| 518 <filter>populations_output['hzar']</filter> | |
| 519 </data> | |
| 520 <!--structure populations.structure--> | |
| 521 <data format="tabular" name="out_structure" label="${tool.name} on ${on_string} Structure format" from_work_dir="stacks_outputs/populations.structure"> | |
| 522 <filter>populations_output['structure']</filter> | |
| 523 </data> | |
| 524 | |
| 525 <!-- radpainter populations.haps.radpainter --> | |
| 526 <data format="tabular" name="out_radpainter" label="${tool.name} on ${on_string} Radpainter format" from_work_dir="stacks_outputs/populations.haps.radpainter"> | |
| 527 <filter>populations_output['radpainter']</filter> | |
| 528 </data> | |
| 529 | |
| 530 <!-- treemix populations.treemix --> | |
| 531 <data format="tabular" name="out_treemix" label="${tool.name} on ${on_string} Treemix format" from_work_dir="stacks_outputs/populations.treemix"> | |
| 532 <filter>populations_output['treemix']</filter> | |
| 533 </data> | |
| 534 </xml> | |
| 535 | |
| 536 <xml name="snp_options_alpha"> | |
| 537 <param argument="--alpha" type="select" label="Chi square significance level required to call a heterozygote or homozygote" > | |
| 538 <option value="0.1">0.1</option> | |
| 539 <option value="0.05" selected="True">0.05</option> | |
| 540 <option value="0.01">0.01</option> | |
| 541 <option value="0.001">0.001</option> | |
| 542 </param> | |
| 543 </xml> | |
| 544 | |
| 545 <xml name="snp_options"> | |
| 546 <conditional name="select_model"> | |
| 547 <param argument="--model_type" type="select" label="Choose the model"> | |
| 548 <option value="snp" selected="true">SNP</option> | |
| 549 <option value="bounded">Bounded SNP</option> | |
| 550 <option value="fixed">Fixed</option> | |
| 551 </param> | |
| 552 <when value="snp"> | |
| 553 <expand macro="snp_options_alpha"/> | |
| 554 </when> | |
| 555 <when value="bounded"> | |
| 556 <param argument="--bound_low" type="float" value="0.0" min="0.0" max="1.0" label="Lower bound for epsilon, the error rate" help="between 0 and 1.0"/> | |
| 557 <param argument="--bound_high" type="float" value="1.0" min="0.0" max="1.0" label="Upper bound for epsilon, the error rate" help="between 0 and 1.0" /> | |
| 558 <expand macro="snp_options_alpha"/> | |
| 559 </when> | |
| 560 <when value="fixed"> | |
| 561 <yield/> | |
| 562 </when> | |
| 563 </conditional> | |
| 564 </xml> | |
| 565 <xml name="snp_options_full"> | |
| 566 <expand macro="snp_options"> | |
| 567 <param argument="--bc_err_freq" type="float" value="0.1" min="0.0" max="1.0" label="Barcode error frequency" help="between 0 and 1.0"/> | |
| 568 </expand> | |
| 569 </xml> | |
| 570 | |
| 571 <!-- variant calling option for use in gstacks and denovomap | |
| 572 default for var_alpha is 0.01 if model == marukilow (which is the case in denovomap and refmap) | |
| 573 otherwise no default is is available and gstacks will output and error | |
| 574 "Error: No value was provided for \-\-var-alpha and there is no default for this model)" | |
| 575 --> | |
| 576 <xml name="variant_calling_options_vg" token_varalpha_default=""> | |
| 577 <param argument="--var-alpha" name="var_alpha" type="float" value="@VARALPHA_DEFAULT@" min="0" label="Alpha threshold for discovering SNPs" help="Default is 0.01 if the marukilow model is used (which is the case in refmap and denovomap), otherwise no default value is available." /> | |
| 578 <param argument="--gt-alpha" name="gt_alpha" type="float" value="0.05" min="0" label="Alpha threshold for calling genotypes" /> | |
| 579 </xml> | |
| 580 | |
| 581 <xml name="barcode_encoding_single" token_type=""> | |
| 582 <option value="--inline_null" selected="True">@TYPE@ is inline with sequence, occurs only on single-end read (--inline_null)</option> | |
| 583 <option value="--index_null">@TYPE@ is provded in FASTQ header (Illumina i5 or i7 read) (--index_null)</option> | |
| 584 <yield/> | |
| 585 </xml> | |
| 586 | |
| 587 <xml name="barcode_encoding_pair" token_type=""> | |
| 588 <expand macro="barcode_encoding_single" type="@TYPE@"> | |
| 589 <option value="--null_index">@TYPE@ is provded in FASTQ header (Illumina i7 read if both i5 and i7 read are provided) (--null_index)</option> | |
| 590 <option value="--inline_inline">@TYPE@ is inline with sequence, occurs on single and paired-end read (--inline_inline)</option> | |
| 591 <option value="--index_index">@TYPE@ is provded in FASTQ header (Illumina i5 and i7 reads) (--index_index)</option> | |
| 592 <option value="--inline_index">@TYPE@ is inline with sequence on single-end read and occurs in FASTQ header (from either i5 or i7 read) (--inline_index)</option> | |
| 593 <option value="--index_inline">@TYPE@ occurs in FASTQ header (Illumina i5 or i7 read) and is inline with sequence on single-end read (if single read data) or paired-end read (if paired data) (--index_inline)</option> | |
| 594 </expand> | |
| 595 </xml> | |
| 596 </macros> |
