comparison velvetoptimiser.xml @ 5:82398ba86ba7 draft default tip

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/velvetoptimiser commit 87fc41195cd9d05d431e8363c31898ce07369ed3"
author iuc
date Sat, 27 Nov 2021 10:38:38 +0000
parents 4a53b89fa703
children
comparison
equal deleted inserted replaced
4:4a53b89fa703 5:82398ba86ba7
1 <tool id="velvetoptimiser" name="VelvetOptimiser" version="2.2.6+galaxy1"> 1 <tool id="velvetoptimiser" name="VelvetOptimiser" version="2.2.6+galaxy2">
2 <description>Automatically optimize Velvet assemblies</description> 2 <description>Automatically optimize Velvet assemblies</description>
3 <xrefs>
4 <xref type="bio.tools">velvetoptimiser</xref>
5 </xrefs>
3 <requirements> 6 <requirements>
4 <requirement type="package" version="1.2.10">velvet</requirement> 7 <requirement type="package" version="1.2.10">velvet</requirement>
5 <requirement type="package" version="2.2.6">perl-velvetoptimiser</requirement> 8 <requirement type="package" version="2.2.6">perl-velvetoptimiser</requirement>
6 </requirements> 9 </requirements>
7 <version_command>VelvetOptimiser.pl --version</version_command> 10 <version_command>VelvetOptimiser.pl --version</version_command>
13 ## export OMP_THREAD_LIMIT=1 && 16 ## export OMP_THREAD_LIMIT=1 &&
14 VelvetOptimiser.pl 17 VelvetOptimiser.pl
15 -t "\${GALAXY_SLOTS:-1}" 18 -t "\${GALAXY_SLOTS:-1}"
16 -s $start_kmer 19 -s $start_kmer
17 -e $end_kmer 20 -e $end_kmer
21 -x $kmer_step
18 -d out 22 -d out
19 -f " 23 -f "
20 #for $i in $files: 24 #for $i in $files:
21 -${i.filetype} 25 -${i.filetype}
22 26
59 '$i.paired_type.input1' 63 '$i.paired_type.input1'
60 #end if 64 #end if
61 #end for 65 #end for
62 " 66 "
63 67
64 ##if str($advanced.advanced_select) == "advanced" 68 $advanced.verbose
65 $advanced.verbose 69 -k '$advanced.optFuncKmer'
66 -k '$advanced.optFuncKmer' 70 -c '$advanced.optFuncCov'
67 -c '$advanced.optFuncCov' 71 #if str($advanced.velvetg_opts) != ""
68 #if str($advanced.velvetg_opts) != "" 72 -o '$advanced.velvetg_opts'
69 -o '$advanced.velvetg_opts' 73 #end if
70 #end if 74 -m $advanced.minCutoff
71 -m $advanced.minCutoff 75 -z $advanced.maxCutoff
72 -z $advanced.maxCutoff
73 ##end if
74 76
75 ]]></command> 77 ]]></command>
76 <inputs> 78 <inputs>
77 <param name="start_kmer" type="integer" value="31" label="Start k-mer size" help="Odd integer, Lower limit of k-mer size range to search for optimum value" /> 79 <param name="start_kmer" argument="-s" type="integer" value="31" min="11" max="191" label="Start k-mer size" help="Odd integer, Lower limit of k-mer size range to search for optimum value">
78 <param name="end_kmer" type="integer" value="191" label="End k-mer size" help="Odd integer, Upper limit of k-mer size range to search for optimum value" /> 80 <validator type="expression" message="Value needs to be odd">int(value) % 2 == 1</validator>
79 <param name="kmer_step" type="integer" value="2" label="K-mer search step size" help="Even integer, the k-mer value step size when searching the range" /> 81 </param>
82 <param name="end_kmer" argument="-e" type="integer" value="191" min="11" max="191" label="End k-mer size" help="Odd integer, Upper limit of k-mer size range to search for optimum value">
83 <validator type="expression" message="Value needs to be odd">int(value) % 2 == 1</validator>
84 </param>
85 <param name="kmer_step" argument="-x" type="integer" value="2" min="2" max="189" label="K-mer search step size" help="Even integer, the k-mer value step size when searching the range">
86 <validator type="expression" message="Value needs to be even">int(value) % 2 == 0</validator>
87 </param>
80 88
81 <repeat name="files" title="Input files" min="1"> 89 <repeat name="files" title="Input files" min="1">
82 <param name="filetype" label="Input file type" type="select" help="Input file type"> 90 <param name="filetype" label="Input file type" type="select" help="Input file type">
83 <option value="fastq">Fastq</option> 91 <option value="fastq">Fastq</option>
84 <option value="fasta">Fasta</option> 92 <option value="fasta">Fasta</option>
106 </when> 114 </when>
107 </conditional> 115 </conditional>
108 </repeat> 116 </repeat>
109 117
110 <section name="advanced" title="Advanced Options" expanded="false"> 118 <section name="advanced" title="Advanced Options" expanded="false">
111 <param name="verbose" type="boolean" checked="false" truevalue="-v" falsevalue="" label="Verbose" help="Include verbose velvet output in log file" /> 119 <param name="verbose" argument="-v" type="boolean" checked="false" truevalue="-v" falsevalue="" label="Verbose" help="Include verbose velvet output in log file" />
112 <param name="optFuncKmer" type="text" value="n50" label="K-mer optimisation function" help="See help below for possibilities!"/> 120 <param name="optFuncKmer" argument="-k" type="text" value="n50" label="K-mer optimisation function" help="See help below for possibilities!"/>
113 <param name="optFuncCov" type="text" value="Lbp" label="Coverage cutoff optimisation function" help="See help below for possibilities!"/> 121 <param name="optFuncCov" argument="-c" type="text" value="Lbp" label="Coverage cutoff optimisation function" help="See help below for possibilities!"/>
114 <param name="velvetg_opts" type="text" value="" label="Other velvetg options" help="Add any other required velvetg options from the advanced set"/> 122 <param name="velvetg_opts" argument="-o" type="text" value="" label="Other velvetg options" help="Add any other required velvetg options from the advanced set"/>
115 <param name="minCutoff" type="integer" value="0" label="Minimum coverage cutoff" help="The minimum coverage cutoff to consider in the optimisation"/> 123 <param name="minCutoff" argument="-m" type="integer" value="0" label="Minimum coverage cutoff" help="The minimum coverage cutoff to consider in the optimisation"/>
116 <param name="maxCutoff" type="float" value="0.8" label="Maximum coverage cutoff" help="The maximum coverage cutoff to consider expressed as a fraction of the calculated expected coverage."/> 124 <param name="maxCutoff" argument="-z" type="float" value="0.8" label="Maximum coverage cutoff" help="The maximum coverage cutoff to consider expressed as a fraction of the calculated expected coverage."/>
117 </section> 125 </section>
118 </inputs> 126 </inputs>
119 127
120 <outputs> 128 <outputs>
121 <data format="fasta" name="contigs" label="${tool.name} on ${on_string}: Contigs" from_work_dir="out/contigs.fa"/> 129 <data format="fasta" name="contigs" label="${tool.name} on ${on_string}: Contigs" from_work_dir="out/contigs.fa"/>
234 242
235 **Hash Length** 243 **Hash Length**
236 244
237 The hash length, also known as k-mer length, corresponds to the length, in base pairs, of the words being hashed. 245 The hash length, also known as k-mer length, corresponds to the length, in base pairs, of the words being hashed.
238 246
239 The hash length is the length of the k-mers being entered in the hash table. Firstly, you must observe three technical constraints:: 247 The hash length is the length of the k-mers being entered in the hash table. Firstly, you must observe three technical constraints:
240 - it must be an odd number, to avoid palindromes. If you put in an even number, Velvet will just decrement it and proceed. 248
241 - it must be below or equal to MAXKMERHASH length (cf. 2.3.3, by default 31bp), because it is stored on 64 bits 249 - it must be an odd number, to avoid palindromes. If you put in an even number, Velvet will just decrement it and proceed.
242 - it must be strictly inferior to read length, otherwise you simply will not observe any overlaps between reads, for obvious reasons. 250 - it must be below or equal to MAXKMERHASH length (cf. 2.3.3, by default 31bp), because it is stored on 64 bits
251 - it must be strictly inferior to read length, otherwise you simply will not observe any overlaps between reads, for obvious reasons.
252
243 253
244 Now you still have quite a lot of possibilities. As is often the case, it's a trade-off between specificity and sensitivity. Longer kmers bring you more specificity (i.e. less spurious overlaps) but lowers coverage (cf. below)... so there's a sweet spot to be found with time and experience. 254 Now you still have quite a lot of possibilities. As is often the case, it's a trade-off between specificity and sensitivity. Longer kmers bring you more specificity (i.e. less spurious overlaps) but lowers coverage (cf. below)... so there's a sweet spot to be found with time and experience.
245 We like to think in terms of "k-mer coverage", i.e. how many times has a k-mer been seen among the reads. The relation between k-mer coverage Ck and standard (nucleotide-wise) coverage C is Ck = C * (L - k + 1)/L where k is your hash length, and L you read length. 255 We like to think in terms of "k-mer coverage", i.e. how many times has a k-mer been seen among the reads. The relation between k-mer coverage Ck and standard (nucleotide-wise) coverage C is Ck = C * (L - k + 1)/L where k is your hash length, and L you read length.
246 Experience shows that this kmer coverage should be above 10 to start getting decent results. If Ck is above 20, you might be "wasting" coverage. Experience also shows that empirical tests with different values for k are not that costly to run! VelvetOptimiser automates these tests for you. 256 Experience shows that this kmer coverage should be above 10 to start getting decent results. If Ck is above 20, you might be "wasting" coverage. Experience also shows that empirical tests with different values for k are not that costly to run! VelvetOptimiser automates these tests for you.
247 257
272 **Input Files** 282 **Input Files**
273 283
274 Velvet works mainly with fasta and fastq formats. For paired-end reads, the assumption is that each read is next to its mate 284 Velvet works mainly with fasta and fastq formats. For paired-end reads, the assumption is that each read is next to its mate
275 read. In other words, if the reads are indexed from 0, then reads 0 and 1 are paired, 2 and 3, 4 and 5, etc. 285 read. In other words, if the reads are indexed from 0, then reads 0 and 1 are paired, 2 and 3, 4 and 5, etc.
276 286
277 Supported file formats are:: 287 Supported file formats are: fasta, fastq, bam
278 288
279 fasta 289 Read categories are:
280 fastq 290
281 bam 291 - short (default)
282 292 - shortPaired
283 Read categories are:: 293 - long (for Sanger, 454 or even reference sequences)
284 294 - longPaired
285 short (default) 295 - reference (for pre-mapped sam or bam files - see Velvet manual for details on how to use this option)
286 shortPaired
287 long (for Sanger, 454 or even reference sequences)
288 longPaired
289 reference (for pre-mapped sam or bam files - see Velvet manual for details on how to use this option)
290
291
292 ]]></help> 296 ]]></help>
293 <citations> 297 <citations>
294 <citation type="bibtex">@UNPUBLISHED{GLADMAN2012, 298 <citation type="bibtex">@UNPUBLISHED{GLADMAN2012,
295 author = "Gladman Simon", 299 author = "Gladman Simon",
296 title = "VelvetOptimiser", 300 title = "VelvetOptimiser",