comparison macros.xml @ 6:b66de1e9abfb draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/spades commit 8734db131db6f76697b500b30f18ee7723d61813"
author iuc
date Sun, 23 Jan 2022 21:32:25 +0000
parents
children ef69617ecb42
comparison
equal deleted inserted replaced
5:1035adb112c0 6:b66de1e9abfb
1 <macros>
2 <token name="@TOOL_VERSION@">3.15.3</token>
3 <token name="@VERSION_SUFFIX@">0</token>
4 <xml name="requirements">
5 <requirements>
6 <requirement type="package" version="@TOOL_VERSION@">spades</requirement>
7 <requirement type="package" version="3.0">zip</requirement>
8 <yield/>
9 </requirements>
10 </xml>
11 <xml name="stdio">
12 <stdio>
13 <exit_code range="1:"/>
14 <regex match="Cannot allocate memory"
15 source="stdout"
16 level="fatal_oom"
17 description="Out of memory error occurred"/>
18 <regex match="The reads contain too many k-mers to fit into available memory"
19 source="stdout"
20 level="fatal_oom"
21 description="Out of memory error occurred"/>
22 </stdio>
23 </xml>
24 <xml name="version_command">
25 <version_command><![CDATA[spades.py --version 2>&1 | awk -F 'v' '{print $2}']]></version_command>
26 </xml>
27 <token name="@INTYPES@">
28
29 </token>
30 <xml name="citations">
31 <citations>
32 <citation type="doi">10.1093/bioinformatics/btv688</citation>
33 <citation type="doi">10.1093/bioinformatics/btu266</citation>
34 <citation type="doi">10.1093/bioinformatics/btv337</citation>
35 <yield/>
36 </citations>
37 </xml>
38 <xml name="operation_mode" token_help="">
39 <param name="operation_mode" type="select" label="Operation mode" help="@HELP@">
40 <option value="">Assembly and error correction</option>
41 <option value="--only-assembler">Only assembler (--only-assembler)</option>
42 <option value="--only-error-correction">Only error correction (--only-error-correction)</option>
43 </param>
44 </xml>
45
46
47 <!-- PREPARE INPUT FILES-->
48
49 <token name="@PREPROCESS_INPUT_FILES_MAIN@"><![CDATA[
50 #if $singlePaired.sPaired == "single" or $singlePaired.sPaired == "paired_interlaced"
51 mkdir -p reads1 &&
52 #set file_paths1 = []
53 #for $input_file in $singlePaired.input1
54 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
55 #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
56 #set $file_path = 'reads1/' + $fname
57 ln -s '$input_file' $file_path &&
58 $file_paths1.append($file_path)
59 #end for
60 #else if $singlePaired.sPaired == "paired"
61 mkdir -p paired_reads1 &&
62 #set fw_reads1 = []
63 #for $input_file in $singlePaired.input1
64 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
65 #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
66 #set $file_path = 'paired_reads1/' + str($fname)
67 ln -s '$input_file' $file_path &&
68 $fw_reads1.append($file_path)
69 #end for
70 #set rv_reads1 = []
71 #for $input_file in $singlePaired.input2
72 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
73 #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
74 #set $file_path = 'paired_reads1/' + str($fname)
75 ln -s '$input_file' $file_path &&
76 $rv_reads1.append($file_path)
77 #end for
78 #silent $fw_reads1.sort()
79 #silent $rv_reads1.sort()
80 #else
81 mkdir -p paired_reads1 &&
82 #set fw_reads1 = []
83 #set rv_reads1 = []
84 #for $i, $input_file in enumerate($singlePaired.input)
85 #set $ext = $input_file.forward.ext.replace('fastqsanger', 'fastq')
86 #set $file_path = 'paired_reads1/fw' + str($i) + '.' + $ext
87 ln -s '$input_file.forward' $file_path &&
88 $fw_reads1.append($file_path)
89 #set $file_path = 'paired_reads1/rv' + str($i) + '.' + $ext
90 ln -s '$input_file.reverse' $file_path &&
91 $rv_reads1.append($file_path)
92 #end for
93 #end if
94 ]]></token>
95
96 <token name="@PREPROCESS_INPUT_FILES_ADDITIONAL@"><![CDATA[
97 #if $additional_reads.singlePaired.sPaired == "single" or $additional_reads.singlePaired.sPaired == "paired_interlaced"
98 mkdir -p reads2 &&
99 #set file_paths2 = []
100 #for $input_file in $additional_reads.singlePaired.input1
101 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
102 #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
103 #set $file_path = 'reads2/' + $fname
104 ln -s '$input_file' $file_path &&
105 $file_paths2.append($file_path)
106 #end for
107 #else if $additional_reads.singlePaired.sPaired == "paired"
108 mkdir -p paired_reads2 &&
109 #set fw_reads2 = []
110 #for $input_file in $additional_reads.singlePaired.input1
111 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
112 #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
113 #set $file_path = 'paired_reads2/' + str($fname)
114 ln -s '$input_file' $file_path &&
115 $fw_reads2.append($file_path)
116 #end for
117 #set rv_reads2 = []
118 #for $input_file in $additional_reads.singlePaired.input2
119 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
120 #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
121 #set $file_path = 'paired_reads2/' + str($fname)
122 ln -s '$input_file' $file_path &&
123 $rv_reads2.append($file_path)
124 #end for
125 #silent $fw_reads2.sort()
126 #silent $rv_reads2.sort()
127 #else
128 mkdir -p paired_reads2 &&
129 #set fw_reads2 = []
130 #set rv_reads2 = []
131 #for $i, $input_file in enumerate($additional_reads.singlePaired.input)
132 #set $ext = $input_file.forward.ext.replace('fastqsanger', 'fastq')
133 #set $file_path = 'paired_reads2/fw' + str($i) + '.' + $ext
134 ln -s '$input_file.forward' $file_path &&
135 $fw_reads2.append($file_path)
136 #set $file_path = 'paired_reads2/rv' + str($i) + '.' + $ext
137 ln -s '$input_file.reverse' $file_path &&
138 $rv_reads2.append($file_path)
139 #end for
140 #end if
141 ]]></token>
142
143 <!-- COMMANDS -->
144
145 <token name="@RESOURCES@"><![CDATA[
146 -t \${GALAXY_SLOTS:-4}
147 -m \${GALAXY_MEMORY_GB:-8}
148 ]]></token>
149
150 <token name="@INPUT_READS_MAIN@"><![CDATA[
151 #if $singlePaired.sPaired == "single"
152 #for $read in $file_paths1
153 --s $library '${read}'
154 #end for
155 #else if $singlePaired.sPaired == "paired"
156 #for $read in $fw_reads1
157 --${singlePaired.type_paired}-1 $library '${read}'
158 #end for
159 #for $read in $rv_reads1
160 --${singlePaired.type_paired}-2 $library '${read}'
161 --${singlePaired.type_paired}-or $library $singlePaired.orientation
162 #end for
163 #else if $singlePaired.sPaired == "paired_interlaced"
164 #for $read in $file_paths1
165 --${singlePaired.type_paired}-12 $library '${read}'
166 --${singlePaired.type_paired}-or $library $singlePaired.orientation
167 #end for
168 #else
169 #for $read in $fw_reads1
170 --${singlePaired.type_paired}-1 $library '${read}'
171 #end for
172 #for $read in $rv_reads1
173 --${singlePaired.type_paired}-2 $library '${read}'
174 --${singlePaired.type_paired}-or $library $singlePaired.orientation
175 #end for
176 #end if
177 ]]></token>
178
179
180 <token name="@INPUT_READS_ADDITIONAL@"><![CDATA[
181 @LIBRARY_NUMBER@
182 #if $additional_reads.singlePaired.sPaired == "single"
183 #for $read in $file_paths2
184 --s $library '${read}'
185 #end for
186 #else if $additional_reads.singlePaired.sPaired == "paired"
187 #for $read in $fw_reads2
188 --${additional_reads.singlePaired.type_paired}-1 $library '${read}'
189 #end for
190 #for $read in $rv_reads2
191 --${additional_reads.singlePaired.type_paired}-2 $library '${read}'
192 --${additional_reads.singlePaired.type_paired}-or $library $additional_reads.singlePaired.orientation
193 #end for
194 #else if $additional_reads.singlePaired.sPaired == "paired_interlaced"
195 #for $read in $file_paths2
196 --${additional_reads.singlePaired.type_paired}-12 $library '${read}'
197 --${additional_reads.singlePaired.type_paired}-or $library $additional_reads.singlePaired.orientation
198 #end for
199 #else
200 #for $read in $fw_reads2
201 --${additional_reads.singlePaired.type_paired}-1 $library '${read}'
202 #end for
203 #for $read in $rv_reads2
204 --${additional_reads.singlePaired.type_paired}-2 $library '${read}'
205 --${additional_reads.singlePaired.type_paired}-or $library $additional_reads.singlePaired.orientation
206 #end for
207 #end if
208 ]]></token>
209
210 <token name="@PIPELINE_OPTIONS@"><![CDATA[
211 #for $i in $mode_sel
212 $i
213 #end for
214 ]]></token>
215
216 <token name="@KMER@"><![CDATA[
217 #if $kmer_cond.kmer_sel != 'auto'
218 -k '$kmer_cond.manual'
219 #end if
220 ]]></token>
221
222 <token name="@PHREDOFFSET@"><![CDATA[
223 #if $phred_offset != 'auto'
224 --phred-offset $phred_offset
225 #end if
226 ]]></token>
227
228 <!-- ADDITIONAL INPUTS-->
229
230 <token name="@PREPROCESS_CONTIGS_FILES@"><![CDATA[
231 #if $arf.trusted_contigs
232 mkdir -p trusted_contigs &&
233 #set trusted_contigs = []
234 #for $i, $input_file in enumerate($arf.trusted_contigs,1)
235 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
236 #set $fname = 'file' + str($i) + '.' + $ext
237 #set $file_path = 'trusted_contigs/' + $fname
238 ln -s '$input_file' $file_path &&
239 $trusted_contigs.append($file_path)
240 #end for
241 #end if
242 #if $arf.untrusted_contigs
243 mkdir -p untrusted_contigs &&
244 #set untrusted_contigs = []
245 #for $i, $input_file in enumerate($arf.untrusted_contigs,1)
246 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
247 #set $fname = 'file' + str($i) + '.' + $ext
248 #set $file_path = 'untrusted_contigs/' + $fname
249 ln -s '$input_file' $file_path &&
250 $untrusted_contigs.append($file_path)
251 #end for
252 #end if
253 ]]></token>
254
255 <token name="@PREPROCESS_NANOPORE_PACBIO_FILES@"><![CDATA[
256 #if $arf.nanopore
257 mkdir -p nanopore_reads &&
258 #set nanopore_reads = []
259 #for $i, $input_file in enumerate($arf.nanopore,1)
260 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
261 #set $fname = 'file' + str($i) + '.' + $ext
262 #set $file_path = 'nanopore_reads/' + $fname
263 ln -s '$input_file' $file_path &&
264 $nanopore_reads.append($file_path)
265 #end for
266 #end if
267 #if $arf.pacbio
268 mkdir -p pacbio_reads &&
269 #set pacbio_reads = []
270 #for $i, $input_file in enumerate($arf.pacbio,1)
271 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
272 #set $fname = 'file' + str($i) + '.' + $ext
273 #set $file_path = 'pacbio_reads/' + $fname
274 ln -s '$input_file' $file_path &&
275 $pacbio_reads.append($file_path)
276 #end for
277 #end if
278 ]]></token>
279
280 <token name="@PREPROCESS_SANGER_FILES@"><![CDATA[
281 #if $arf.sanger
282 mkdir -p sanger_reads &&
283 #set sanger_reads = []
284 #for $i, $input_file in enumerate($arf.sanger,1)
285 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
286 #set $fname = 'file' + str($i) + '.' + $ext
287 #set $file_path = 'sanger_reads/' + $fname
288 ln -s '$input_file' $file_path &&
289 $sanger_reads.append($file_path)
290 #end for
291 #end if
292 ]]></token>
293
294 <token name="@PREPROCESS_FL_RNA_FILES@"><![CDATA[
295 #if $arf.flrna
296 mkdir -p flrna_reads &&
297 #set flrna_reads = []
298 #for $i, $input_file in enumerate($arf.flrna,1)
299 #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
300 #set $fname = 'file' + str($i) + '.' + $ext
301 #set $file_path = 'flrna_reads/' + $fname
302 ln -s '$input_file' $file_path &&
303 $flrna_reads.append($file_path)
304 #end for
305 #end if
306 ]]></token>
307
308 <token name="@PREPROCESS_ASSEMBLY_GRAPH_FILES@"><![CDATA[
309 #if $arf.assembly_graph
310 mkdir -p assembly_graphs &&
311 #set assembly_graphs = []
312 #for $i, $input_file in enumerate($arf.assembly_graph,1)
313 #set $ext = $input_file.ext.replace('gfa1', 'gfa')
314 #set $fname = 'file' + str($i) + '.' + $ext
315 #set $file_path = 'assembly_graphs/' + $fname
316 ln -s '$input_file' $file_path &&
317 $assembly_graphs.append($file_path)
318 #end for
319 #end if
320 ]]></token>
321
322
323 <token name="@NANOPORE_PACBIO@"><![CDATA[
324 #if $arf.nanopore
325 #for $read in $nanopore_reads
326 --nanopore $read
327 #end for
328 #end if
329 #if $arf.pacbio
330 #for $read in $pacbio_reads
331 --pacbio $read
332 #end for
333 #end if
334 ]]></token>
335
336
337 <token name="@SANGER@"><![CDATA[
338 #if $arf.sanger
339 #for $read in $sanger_reads
340 --sanger $read
341 #end for
342 #end if
343 ]]></token>
344
345 <token name="@FL_RNA@"><![CDATA[
346 #if $arf.flrna
347 #for $read in $flrna_reads
348 --fl-rna $read
349 #end for
350 #end if
351 ]]></token>
352
353 <token name="@ASSEMBLY_GRAPH@"><![CDATA[
354 #if $arf.assembly_graph
355 #for $graph in $assembly_graphs
356 --assembly-graph $graph
357 #end for
358 #end if
359 ]]></token>
360
361 <token name="@CONTIGS@"><![CDATA[
362 #if $arf.trusted_contigs
363 #for $read in $trusted_contigs
364 --trusted-contigs $read
365 #end for
366 #end if
367 #if $arf.untrusted_contigs
368 #for $read in $untrusted_contigs
369 --untrusted-contigs $read
370 #end for
371 #end if
372 ]]></token>
373
374 <token name="@LIBRARY_NUMBER@"><![CDATA[
375 #if $additional_reads.selector == 'true' and $additional_reads.library_number == 'false'
376 #set $library += 1
377 #end if
378 ]]></token>
379
380 <!-- POSTPROCESSING -->
381
382 <token name="@STATS@"><![CDATA[
383 #if 'cs' in $optional_output
384 && test -f 'output/contigs.fasta' && python '$__tool_directory__/write_tsv_script.py' < 'output/contigs.fasta' > '$out_cs' || echo 'No contigs.fasta.'
385 #end if
386 #if 'ss' in $optional_output
387 && test -f 'output/scaffolds.fasta' && python '$__tool_directory__/write_tsv_script.py' < 'output/scaffolds.fasta' > '$out_ss' || echo 'No scaffolds.fasta.'
388 #end if
389 ]]></token>
390
391 <token name="@CORRECTED@"><![CDATA[
392 #if 'corrected' in $optional_output
393 && test -d 'output/corrected' && zip -q -r 'corrected.zip' 'output/corrected/*.fastq.gz' || echo 'No output files for corrected reads.'
394 #end if
395 ]]></token>
396
397 <!--
398 input
399 -->
400
401 <xml name="input_files_all" token_format="" token_label="" token_help="It assumes that all samples belong to the same library. If you want to use samples from two different libraries, include the second library as additional set of short-reads.">
402 <conditional name="singlePaired">
403 <param name="sPaired" type="select" label="Single-end or paired-end short-reads" help="@HELP@">
404 <option value="single" selected="true">Single-end</option>
405 <option value="paired">Paired-end: individual datasets</option>
406 <option value="paired_interlaced">Paired-end: interlaced reads</option>
407 <option value="paired_collection">Paired-end: list of dataset pairs</option>
408 </param>
409 <when value="single">
410 <param format="@FORMAT@" name="input1" type="data" multiple="true" label="@LABEL@"/>
411 </when>
412 <when value="paired">
413 <param format="@FORMAT@" name="input1" type="data" multiple="true" label="@LABEL@: forward reads"/>
414 <param format="@FORMAT@" name="input2" type="data" multiple="true" label="@LABEL@: reverse reads"/>
415 <expand macro="type_paired"/>
416 <expand macro="orientation"/>
417 </when>
418 <when value="paired_interlaced">
419 <param format="@FORMAT@" name="input1" type="data" multiple="true" label="@LABEL@: interlaced"/>
420 <expand macro="type_paired"/>
421 <expand macro="orientation"/>
422 </when>
423 <when value="paired_collection">
424 <param format="@FORMAT@" name="input" type="data_collection" collection_type="list:paired" label="@LABEL@: collection"/>
425 <expand macro="type_paired"/>
426 <expand macro="orientation"/>
427 </when>
428 </conditional>
429 </xml>
430
431 <xml name="input_files_paired" token_format="" token_label="" token_help="It assumes that all samples belong to the same library. If you want to use samples from two different libraries, include the second library as additional set of short-reads.">
432 <conditional name="singlePaired">
433 <param name="sPaired" type="select" label="Pair-end reads input format" help="@HELP@">
434 <option value="paired" selected="true">Paired-end: individual datasets</option>
435 <option value="paired_interlaced">Paired-end: interlaced reads</option>
436 <option value="paired_collection">Paired-end: list of dataset pairs</option>
437 </param>
438 <when value="paired">
439 <param format="@FORMAT@" name="input1" type="data" multiple="true" label="@LABEL@: forward reads"/>
440 <param format="@FORMAT@" name="input2" type="data" multiple="true" label="@LABEL@: reverse reads"/>
441 <expand macro="type_paired"/>
442 <expand macro="orientation"/>
443 </when>
444 <when value="paired_interlaced">
445 <param format="@FORMAT@" name="input1" type="data" multiple="true" label="@LABEL@: interlaced"/>
446 <expand macro="type_paired"/>
447 <expand macro="orientation"/>
448 </when>
449 <when value="paired_collection">
450 <param format="@FORMAT@" name="input" type="data_collection" collection_type="list:paired" label="@LABEL@: collection"/>
451 <expand macro="type_paired"/>
452 <expand macro="orientation"/>
453 </when>
454 </conditional>
455 <param name="library_number" type="select" label="The samples belong to the same library" help="If the reads have been generated from the same sample, it means that they belong to the same library.">
456 <option value="true" selected="true">True</option>
457 <option value="false">False</option>
458 </param>
459 </xml>
460
461 <xml name="orientation">
462 <param name="orientation" type="select" label="Select orientation of reads" help="Note: mate-pair fragments are generally in a RF conformation. In general, paired-end reads tend to be in a FR orientation.">
463 <option value="fr" selected="true"><![CDATA[FR (-> <-)]]></option>
464 <option value="rf"><![CDATA[RF (<- ->)]]></option>
465 <option value="ff"><![CDATA[FF (-> ->)]]></option>
466 </param>
467 </xml>
468
469 <xml name="type_paired">
470 <param name="type_paired" type="select" label="Type of paired-reads"
471 help="In paired-end sequencing, the library preparation yields a set of fragments, and the machine sequences each fragment from both ends. In mate-pair sequencing,
472 the library preparation yields two fragments that are distal to each other in the genome and in the opposite in orientation to that of a mate-paired fragment.">
473 <option value="pe" selected="true">Default (--pe)</option>
474 <option value="mp">Mate-pair reads (--mp)</option>
475 <option value="hqmp">High-quality Nextera mate-pair reads (--hqmp)</option>
476 </param>
477 </xml>
478
479 <xml name="input_additional_files_all" token_format="" token_label="" token_help="">
480 <conditional name="additional_reads">
481 <param name="selector" type="select" label="Use an additional set of short-reads" help="Enable this option if you want to combine to data sources (e.g. single and paired reads).">
482 <option value="false" selected="true">Disabled</option>
483 <option value="true">Enabled</option>
484 </param>
485 <when value="true">
486 <expand macro="input_files_all" format="fastq,fastq.gz,fastqsanger.gz,fasta,fasta.gz" label="FASTA/FASTQ file(s)" help="@HELP@"/>
487 <param name="library_number" type="select" label="The samples belong to the same library" help="If the reads have been generated from the sample sample, it means that they belong to the same library.">
488 <option value="true" selected="true">True</option>
489 <option value="false">False</option>
490 </param>
491 </when>
492 <when value="false"/>
493 </conditional>
494 </xml>
495
496 <xml name="input_additional_files_paired" token_format="" token_label="" token_help="" >
497 <conditional name="additional_reads">
498 <param name="selector" type="select" label="Use an additional set of short-reads" help="Enable this option if you want to combine to data sources (e.g. single and paired reads).">
499 <option value="false" selected="true">Disabled</option>
500 <option value="true">Enabled</option>
501 </param>
502 <when value="true">
503 <expand macro="input_files_paired" format="fastq,fastq.gz,fastqsanger.gz,fasta,fasta.gz" label="FASTA/FASTQ file(s)" help="@HELP@"/>
504 <param name="library_number" type="select" label="The samples belong to the same library" help="If the reads have been generated from the sample sample, it means that they belong to the same library.">
505 <option value="true" selected="true">True</option>
506 <option value="false">False</option>
507 </param>
508 </when>
509 <when value="false"/>
510 </conditional>
511 </xml>
512
513 <xml name="covcutoff">
514 <conditional name="cov_cond">
515 <param argument="--cov-cutoff" type="select" label="Set coverage cutoff option" help="When set to 'auto' SPAdes automatically computes coverage threshold using conservative strategy">
516 <option value="off">Off</option>
517 <option value="auto">Auto</option>
518 <option value="value">User specific</option>
519 </param>
520 <when value="off"/>
521 <when value="auto"/>
522 <when value="value">
523 <param name="manual" type="float" min="0" value="" label="Set value"/>
524 </when>
525 </conditional>
526 </xml>
527 <xml name="pipeline_options">
528 <param name="mode_sel" type="select" label="Pipeline options" multiple="true" optional="true" display="checkboxes" help="Error correction requires FASTQ input files.">
529 <option value="--disable-rr">Disable repeat resolution (--disable-rr)</option>
530 <yield/>
531 </param>
532 </xml>
533 <xml name="kmer" token_help="" token_default="21,33,55,77">
534 <conditional name="kmer_cond">
535 <param name="kmer_sel" argument="-k" type="select" label="Select k-mer detection option" help="@HELP@ Comma-separated list, all values must be odd, less than 128 and listed in ascending order.">
536 <option value="auto">Auto</option>
537 <option value="manual">User specific</option>
538 </param>
539 <when value="auto"/>
540 <when value="manual">
541 <param name="manual" type="text" value="@DEFAULT@" label="K-mer size values" help="List of k-mer sizes (must be odd and less than 128)">
542 <sanitizer invalid_char="">
543 <valid initial="string.digits">
544 <add value="," />
545 </valid>
546 </sanitizer>
547 <validator type="regex">[0-9,]+</validator>
548 </param>
549 </when>
550 </conditional>
551 </xml>
552 <xml name="nanopore_pacbio">
553 <param argument="--nanopore" type="data" format="fastq,fastq.gz" multiple="true" optional="true" label="Nanopore reads" help="SPAdes will use Oxford Nanopore reads for gap closure and repeat resolution"/>
554 <param argument="--pacbio" type="data" format="fastq,fastq.gz" multiple="true" optional="true" label="PacBio CLR reads" help="It is not recommended to run SPAdes on PacBio reads with low coverage (less than 5). In addition, SPAdes develpers suggest not to run SPAdes on PacBio reads for large genomes. SPAdes will use PacBio CLR reads for gap closure and repeat resolution"/>
555 </xml>
556 <xml name="flrna">
557 <param argument="--fl-rna" name="flrna" type="data" format="fastq,fastq.gz,fasta,fasta.gz,fastqsanger,fastqsanger.gz" multiple="true" optional="true" label="PacBio/Nanopore/contigs that capture full-length transcripts" help="In addition to long reads, you may also provide a separate file with reads capturing the entire transcript sequences using this option. Full-length transcripts in such reads can be typically detected using the adapters. Note, that FL reads should be trimmed so that the adapters are excluded."/>
558 </xml>
559
560 <xml name="phred">
561 <param argument="--phred-offset" type="select" label="Set Phred quality offset" help="Phred quality offset in the input reads. Default: auto-detect">
562 <option value="auto" selected="true">Auto</option>
563 <option value="33">33 (Sanger)</option>
564 <option value="64">64 (Illumina)</option>
565 </param>
566 </xml>
567 <xml name="reads" token_paramname="reads" token_help="" token_label="">
568 <param name="@PARAMNAME@" type="data" format="fastq,fastq.gz" label="@LABEL@ reads" help="@HELP@"/>
569 </xml>
570 <xml name="sanger">
571 <param argument="--sanger" type="data" format="fastq,fastq.gz" multiple="true" optional="true" label="Sanger reads"/>
572 </xml>
573 <xml name="contigs">
574 <param argument="--trusted-contigs" type="data" format="fasta,fasta.gz" multiple="true" optional="true" label="Trusted contigs" help="Reliable contigs of the same genome, which are likely to have no misassemblies and small rate of other errors (e.g. mismatches and indels). This option is not intended for contigs of the related species."/>
575 <param argument="--untrusted-contigs" type="data" format="fasta,fasta.gz" multiple="true" optional="true" label="Untrusted contigs" help="Contigs of the same genome, quality of which is average or unknown. Contigs of poor quality can be used but may introduce errors in the assembly. This option is also not intended for contigs of the related species."/>
576 </xml>
577 <xml name="assembly_graph">
578 <param argument="--assembly-graph" type="data" format="gfa1" multiple="true" optional="true" label="Assembly graphs" help=" The primary purpose of this option to run these pipelines on already constructed and simplified assembly graph this way skipping a large part of SPAdes pipeline."/>
579 </xml>
580 <xml name="optional_output">
581 <param name="optional_output" type="select" multiple="true" optional="false" label="Select optional output file(s)" help="Only shown in history if selected here and generated by the specific run.">
582 <option value="ag" selected="true">Assembly graph</option>
583 <option value="ags" selected="true">Assembly graph with scaffolds</option>
584 <option value="cn" selected="true">Contigs</option>
585 <option value="cp">Contigs paths</option>
586 <option value="cr">Corrected reads</option>
587 <option value="cs">Contigs stats</option>
588 <option value="l">Log</option>
589 <option value="sc" selected="true">Scaffolds</option>
590 <option value="sp">Scaffolds paths</option>
591 <option value="ss">Scaffolds stats</option>
592 </param>
593 </xml>
594 <!--
595 output
596 -->
597
598 <xml name="out_ag">
599 <data name="out_ag" format="fastg" from_work_dir="output/assembly_graph.fastg" label="${tool.name} on ${on_string}: Assembly graph">
600 <filter>'ag' in optional_output</filter>
601 <filter> operation_mode != '--only-error-correction'</filter>
602 </data>
603 </xml>
604 <xml name="out_ags">
605 <data name="out_ags" format="txt" from_work_dir="output/assembly_graph_with_scaffolds.gfa" label="${tool.name} on ${on_string}: Assembly graph with scaffolds">
606 <filter>'ags' in optional_output</filter>
607 <filter> operation_mode != '--only-error-correction'</filter>
608 </data>
609 </xml>
610 <xml name="out_cn">
611 <data name="out_cn" format="fasta" from_work_dir="output/contigs.fasta" label="${tool.name} on ${on_string}: Contigs">
612 <filter>'cn' in optional_output</filter>
613 <filter> operation_mode != '--only-error-correction'</filter>
614 </data>
615 </xml>
616 <xml name="out_cp">
617 <data name="out_cp" format="txt" from_work_dir="output/contigs.paths" label="${tool.name} on ${on_string}: Contigs paths">
618 <filter>'cp' in optional_output</filter>
619 <filter> operation_mode != '--only-error-correction'</filter>
620 </data>
621 </xml>
622 <xml name="out_cr">
623 <!-- some mode combinations create fastq, some fasta -->
624 <collection name="out_cr" type="list" label="${tool.name} on ${on_string}: Corrected reads">
625 <filter>'cr' in optional_output</filter>
626 <filter> operation_mode != '--only-assembler'</filter>
627 <discover_datasets pattern="(?P&lt;designation&gt;.+)\.fastq\.gz" format="fastq" directory="output/corrected"/>
628 <discover_datasets pattern="(?P&lt;designation&gt;.+)\.fasta\.gz" format="fasta" directory="output/corrected"/>
629 </collection>
630 </xml>
631 <xml name="out_cs">
632 <data name="out_cs" format="tabular" label="${tool.name} on ${on_string}: Contigs stats">
633 <actions>
634 <action name="column_names" type="metadata" default="name,length,coverage"/>
635 </actions>
636 <filter>'cs' in optional_output</filter>
637 <filter> operation_mode != '--only-error-correction'</filter>
638 </data>
639 </xml>
640 <xml name="out_l">
641 <data name="out_l" format="txt" from_work_dir="output/spades.log" label="${tool.name} on ${on_string}: Log">
642 <filter>'l' in optional_output</filter>
643 </data>
644 </xml>
645 <xml name="out_sc">
646 <data name="out_sc" format="fasta" from_work_dir="output/scaffolds.fasta" label="${tool.name} on ${on_string}: Scaffolds">
647 <filter>'sc' in optional_output</filter>
648 <filter> operation_mode != '--only-error-correction'</filter>
649 </data>
650 </xml>
651 <xml name="out_sp">
652 <data name="out_sp" format="txt" from_work_dir="output/scaffolds.paths" label="${tool.name} on ${on_string}: Scaffolds paths">
653 <filter>'sp' in optional_output</filter>
654 <filter> operation_mode != '--only-error-correction'</filter>
655 </data>
656 </xml>
657 <xml name="out_ss">
658 <data name="out_ss" format="tabular" label="${tool.name} on ${on_string}: Scaffolds stats">
659 <actions>
660 <action name="column_names" type="metadata" default="name,length,coverage"/>
661 </actions>
662 <filter>'ss' in optional_output</filter>
663 <filter> operation_mode != '--only-error-correction'</filter>
664 </data>
665 </xml>
666 <xml name="out_rs">
667 <data name="out_rs" format="fasta" from_work_dir="output/raw_scaffolds.fasta" label="${tool.name} on ${on_string}: Raw scaffolds">
668 <filter>'rs' in optional_output</filter>
669 </data>
670 </xml>
671 <xml name="out_b">
672 <data name="out_b" format="txt" from_work_dir="output/hmm_statistics.txt" label="${tool.name} on ${on_string}: HMM statistics">
673 <filter>'b' in optional_output</filter>
674 </data>
675 </xml>
676 <xml name="out_dg">
677 <data name="out_dg" format="fasta" from_work_dir="output/domain_graph.dot" label="${tool.name} on ${on_string}: Domain graph">
678 <filter>'dg' in optional_output</filter>
679 </data>
680 </xml>
681 <!--
682 help
683 -->
684
685 <token name="@HELP_IN@"><![CDATA[
686
687 SPAdes takes as input paired-end reads, mate-pairs and single (unpaired) reads in FASTA and FASTQ. For IonTorrent data SPAdes also supports unpaired reads in unmapped BAM format (like the one produced by Torrent Server). However, in order to run read error correction, reads should be in FASTQ or BAM format. Sanger, Oxford Nanopore and PacBio CLR reads can be provided in both formats since SPAdes does not run error correction for these types of data.
688
689 To run SPAdes 3.15.3 you need at least one library of the following types:
690
691 - Illumina paired-end/high-quality mate-pairs/unpaired reads
692 - IonTorrent paired-end/high-quality mate-pairs/unpaired reads
693 - PacBio CCS reads
694 - Illumina and IonTorrent libraries should not be assembled together. All other types of input data are compatible. SPAdes should not be used if only PacBio CLR, Oxford Nanopore, Sanger reads or additional contigs are available.
695
696 SPAdes supports mate-pair only assembly. However, we recommend to use only high-quality mate-pair libraries in this case (e.g. that do not have a paired-end part). We tested mate-pair only pipeline using Illumina Nextera mate-pairs.
697
698 Notes:
699
700 - It is strongly suggested to provide multiple paired-end and mate-pair libraries according to their insert size (from smallest to longest).
701 - It is not recommended to run SPAdes on PacBio reads with low coverage (less than 5).
702 - We suggest not to run SPAdes on PacBio reads for large genomes.
703 - SPAdes accepts gzip-compressed files.
704
705 A detailed description can be found in the `input section <https://github.com/ablab/spades/#sec3.1>`_ of the manual.
706 ]]></token>
707 <token name="@HELP_OUT_AG@">
708 - Assembly graph
709 </token>
710 <token name="@HELP_OUT_AGS@">
711 - Assembly graph with scaffolds
712 </token>
713 <token name="@HELP_OUT_C@">
714 - Contigs
715 </token>
716 <token name="@HELP_OUT_CP@">
717 - Contigs paths in the assembly graph
718 </token>
719 <token name="@HELP_OUT_CS@">
720 - Contigs stats
721 </token>
722 <token name="@HELP_OUT_CR@">
723 - Corrected reads by BayesHammer
724 </token>
725 <token name="@HELP_OUT_L@">
726 - Log file
727 </token>
728 <token name="@HELP_OUT_S@">
729 - Scaffolds (recommended for use as resulting sequences)
730 </token>
731 <token name="@HELP_OUT_SP@">
732 - Scaffolds paths in the assembly graph
733 </token>
734 <token name="@HELP_OUT_SS@">
735 - Scaffolds stats
736 </token>
737 <token name="@HELP_WID@">
738 SPAdes - St. Petersburg genome assembler - is an assembly toolkit containing various assembly pipelines.
739 </token>
740 <token name="@IONTORRENT@"><![CDATA[
741 The selection of k-mer length is non-trivial for IonTorrent. If the dataset is more or less conventional (good coverage, not high GC, etc), then use our `recommendation for long reads <https://cab.spbu.ru/files/release3.12.0/manual.html#sec3.4>`_ (e.g. assemble using k-mer lengths 21,33,55,77,99,127). However, due to increased error rate some changes of k-mer lengths (e.g. selection of shorter ones) may be required. For example, if you ran SPAdes with k-mer lengths 21,33,55,77 and then decided to assemble the same data set using more iterations and larger values of K, you can run SPAdes once again specifying the same output folder and the following options: --restart-from k77 -k 21,33,55,77,99,127 --mismatch-correction -o <previous_output_dir>. Do not forget to copy contigs and scaffolds from the previous run. We're planning to tackle issue of selecting k-mer lengths for IonTorrent reads in next versions.
742
743 You may need no error correction for Hi-Q enzyme at all. However, we suggest trying to assemble your data with and without error correction and select the best variant.
744
745 For non-trivial datasets (e.g. with high GC, low or uneven coverage) we suggest to enable single-cell mode (setting --sc option) and use k-mer lengths of 21,33,55.
746
747 ]]></token>
748
749 </macros>