comparison pal_finder_wrapper.xml @ 0:3f908e7fff4f draft

Uploaded first version to toolshed.
author pjbriggs
date Thu, 11 Dec 2014 09:23:24 -0500
parents
children 771ebe02636f
comparison
equal deleted inserted replaced
-1:000000000000 0:3f908e7fff4f
1 <tool id="microsat_pal_finder" name="pal_finder" version="0.02.04.1">
2 <description>Find microsatellite repeat elements sequencing reads and design PCR primers to amplify them</description>
3 <command interpreter="bash">pal_finder_wrapper.sh
4 #if str( $platform.platform_type ) == "illumina"
5 $platform.input_fastq_r1 $platform.input_fastq_r2
6 #else
7 --454 $platform.input_fasta
8 #end if
9 $output_microsat_summary $output_pal_summary
10 #if str( $platform.platform_type ) == "illumina" and $platform.filter_microsats
11 --filter_microsats $output_filtered_microsats
12 #end if
13 #if $keep_config_file
14 --output_config_file $output_config_file
15 #end if
16 --primer-prefix $primer_prefix
17 --2merMinReps $min_2mer_repeats
18 --3merMinReps $min_3mer_repeats
19 --4merMinReps $min_4mer_repeats
20 --5merMinReps $min_5mer_repeats
21 --6merMinReps $min_6mer_repeats
22 #if str( $primer.primer_options ) == "custom"
23 --primer-opt-size $primer.primer_opt_size
24 --primer-min-size $primer.primer_min_size
25 --primer-max-size $primer.primer_max_size
26 --primer-min-gc $primer.primer_min_gc
27 --primer-max-gc $primer.primer_max_gc
28 --primer-gc-clamp $primer.primer_gc_clamp
29 --primer-max-end-gc $primer.primer_max_end_gc
30 --primer-min-tm $primer.primer_min_tm
31 --primer-max-tm $primer.primer_max_tm
32 --primer-opt-tm $primer.primer_opt_tm
33 --primer-pair-max-diff-tm $primer.primer_pair_max_diff_tm
34 #end if
35 #if str( $mispriming.mispriming_options ) == "custom"
36 --primer-mispriming-library $mispriming.mispriming_library
37 #end if
38 </command>
39 <requirements>
40 <requirement type="package" version="0.02.04">pal_finder</requirement>
41 <requirement type="package" version="2.0.0">primer3_core</requirement>
42 </requirements>
43 <inputs>
44 <param name="primer_prefix" type="text" value="test" size="25" label="Primer prefix" help="This prefix will be added to the beginning of all primer names" />
45 <conditional name="platform">
46 <param name="platform_type" type="select" label="Sequencing platform used to generate data" help="Currently pal_finder only handles Illumina paired-end reads and 454 single-end reads" >
47 <option value="illumina" selected="true">Illumina</option>
48 <option value="454">454</option>
49 </param>
50 <when value="illumina">
51 <param name="input_fastq_r1" type="data" format="fastqsanger" label="Illumina fastq file (read 1)" />
52 <param name="input_fastq_r2" type="data" format="fastqsanger" label="Illumina fastq file (read 2)" />
53 <param name="filter_microsats" type="boolean" truevalue="True" falsevalue="False"
54 label="Filter and sort the microsatellites" checked="True"
55 help="Filter pal_finder results to only include lines with primer sequences and remove non-perfect repeats" />
56 </when>
57 <when value="454">
58 <param name="input_fasta" type="data" format="fasta" label="454 fasta file with raw reads" />
59 </when>
60 </conditional>
61 <param name="min_2mer_repeats" type="integer" value="6" label="Minimum number of 2-mer repeat units to detect" help="Set to zero to ignore repeats of this n-mer unit" />
62 <param name="min_3mer_repeats" type="integer" value="0" label="Minimum number of 3-mer repeat units" help="Set to zero to ignore repeats of this n-mer unit" />
63 <param name="min_4mer_repeats" type="integer" value="0" label="Minimum number of 4-mer repeat units" help="Set to zero to ignore repeats of this n-mer unit" />
64 <param name="min_5mer_repeats" type="integer" value="0" label="Minimum number of 5-mer repeat units" help="Set to zero to ignore repeats of this n-mer unit" />
65 <param name="min_6mer_repeats" type="integer" value="0" label="Minimum number of 6-mer repeat units" help="Set to zero to ignore repeats of this n-mer unit" />
66 <conditional name="mispriming">
67 <param name="mispriming_options" type="select" label="Mispriming library to use" help="Specify file of nucleotide sequences to avoid amplifying (PRIMER_MISPRIMING_LIBRARY)">
68 <option value="default">Default from pal_finder</option>
69 <option value="custom">Custom sequences from history</option>
70 </param>
71 <when value="default">
72 </when>
73 <when value="custom">
74 <param name="mispriming_library" type="data" format="fasta" label="Select mispriming library from history" help="Fasta file containing sequences to avoid amplifying" />
75 </when>
76 </conditional>
77 <conditional name="primer">
78 <param name="primer_options" type="select" label="Primer settings to use" help="Advanced users can customise the settings for primer3 for more control">
79 <option value="default">Defaults for pal_finder</option>
80 <option value="custom">Custom</option>
81 </param>
82 <when value="custom">
83 <param name="primer_opt_size" type="integer" value="20"
84 label="Optimum length (in bases) of a primer (PRIMER_OPT_SIZE)"
85 help="Primer3 will attempt to pick primers close to this length" />
86 <param name="primer_min_size" type="integer" value="18"
87 label="Minimum acceptable length (in bases) of a primer (PRIMER_MIN_SIZE)"
88 help="Must be greater than 0 and less than or equal to PRIMER_MAX_SIZE" />
89 <param name="primer_max_size" type="integer" value="30"
90 label="Maximum acceptable length (in bases) of a primer (PRIMER_MAX_SIZE)"
91 help="Currently this parameter cannot be larger than 35. This limit is governed by maximum oligo size for which primer3's melting-temperature is valid" />
92 <param name="primer_min_gc" type="float" value="30.0"
93 label="Minimum allowable percentage of Gs and Cs in any primer (PRIMER_MIN_GC)" />
94 <param name="primer_max_gc" type="float" value="80.0"
95 label="Maximum allowable percentage of Gs and Cs in any primer (PRIMER_MAX_GC)" />
96 <param name="primer_gc_clamp" type="integer" value="2"
97 label="Specify number of consecutive Gs and Cs at 3' end of both the left and right primer (PRIMER_GC_CLAMP)" />
98 <param name="primer_max_end_gc" type="integer" value="5"
99 label="Maximum number of Gs or Cs allowed in last five 3' bases of a left or right primer (PRIMER_MAX_END_GC)" />
100 <param name="primer_min_tm" type="float" value="58.0"
101 label="Minimum acceptable melting temperature for a primer oligo (PRIMER_MIN_TM)"
102 help="Temperature should be in degrees Celsius" />
103 <param name="primer_max_tm" type="float" value="65.0"
104 label="Maximum acceptable melting temperature for a primer oligo (PRIMER_MAX_TM)"
105 help="Temperature should be in degrees Celsius" />
106 <param name="primer_opt_tm" type="float" value="62.0"
107 label="Optimum melting temperature for a primer (PRIMER_OPT_TM)"
108 help="Temperature should be in degrees Celsius" />
109 <param name="primer_pair_max_diff_tm" type="float" value="2.0"
110 label="Maximum acceptable difference between melting temperatures of left and right primers (PRIMER_PAIR_MAX_DIFF_TM)"
111 help="Temperature should be in degrees Celsius" />
112 </when>
113 </conditional>
114 <param name="keep_config_file" type="boolean" truevalue="True" falsevalue="False"
115 label="Output the config file to the history"
116 help="Can be used to run pal_finder outside of Galaxy" />
117 </inputs>
118 <outputs>
119 <data name="output_microsat_summary" format="txt" label="${tool.name} on ${on_string} for ${primer_prefix} (microsatellite types)" />
120 <data name="output_pal_summary" format="tabular" label="${tool.name} on ${on_string} for ${primer_prefix} (microsatellites with read IDs and primer pairs)" />
121 <data name="output_filtered_microsats" format="tabular" label="${tool.name} on ${on_string} for ${primer_prefix} (filtered and sorted microsatellites)">
122 <filter>platform['platform_type'] == 'illumina' and platform['filter_microsats']</filter>
123 </data>
124 <data name="output_config_file" format="txt" label="${tool.name} on ${on_string} for ${primer_prefix} (config file)">
125 <filter>keep_config_file is True</filter>
126 </data>
127 </outputs>
128 <tests>
129 <test>
130 <!-- Test with Illumina input -->
131 <param name="platform_type" value="illumina" />
132 <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
133 <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
134 <!--
135 **NB** outputs have to be specified in order that they appear in the
136 tool (which is the order they will be written to the history) - the
137 test framework seems to use the order and ignores the "name" attribute
138 -->
139 <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
140 <output name="output_pal_summary" file="illuminaPE_microsats.out" />
141 <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats.out" />
142 </test>
143 <test>
144 <!-- Test with 454 input -->
145 <param name="platform_type" value="454" />
146 <param name="input_fasta" value="454_in.fa" ftype="fasta" />
147 <!--
148 **NB** outputs have to be specified in order that they appear in the
149 tool (which is the order they will be written to the history) - the
150 test framework seems to use the order and ignores the "name" attribute
151 -->
152 <output name="output_microsat_summary" file="454_microsat_types.out" />
153 <output name="output_pal_summary" file="454_microsats.out" />
154 </test>
155 </tests>
156 <help>
157 .. class:: infomark
158
159 **What it does**
160
161 This tool runs the pal_finder program, which finds microsatellite repeat elements
162 directly from raw 454 or Illumina paired-end sequencing reads. It then designs PCR
163 primers to amplify these repeat loci (Potentially Amplifiable Loci: PAL).
164
165 Optionally for Illumina data, the output from pal_finder can also be filtered to
166 remove any motifs without primer sequences, and with non-perfect microsatellites.
167 The microsatellites are then ranked by motif size (largest to smallest).
168
169 Pal_finder runs the primer3_core program; information on the settings used in
170 primer3_core can be found in the Primer3 manual at
171 http://primer3.sourceforge.net/primer3_manual.htm
172
173 -------------
174
175 .. class:: infomark
176
177 **Credits**
178
179 This Galaxy tool has been developed by Peter Briggs within the Bioinformatics Core
180 Facility at the University of Manchester. It runs the pal_finder package which can be
181 obtained from http://sourceforge.net/projects/palfinder/:
182
183 * PLoS One. 2012; 7(2): e30953 "Rapid Microsatellite Identification from Illumina Paired-End
184 Genomic Sequencing in Two Birds and a Snake" Todd A. Castoe, Alexander W. Poole, A. P.
185 Jason de Koning, Kenneth L. Jones, Diana F. Tomback, Sara J. Oyler-McCance, Jennifer A.
186 Fike, Stacey L. Lance, Jeffrey W. Streicher, Eric N. Smith, and David D. Pollock
187
188 The paper is available at http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3279355/
189
190 This tool is compatible with pal_finder version 0.02.04, which in turn runs the
191 primer3_core program (version 2.0.0-alpha is required, available from
192 http://primer3.sourceforge.net/releases.php):
193
194 * Steve Rozen and Helen J. Skaletsky (2000) "Primer3 on the WWW for general users and for
195 biologist programmers". In: Krawetz S, Misener S (eds) Bioinformatics Methods and
196 Protocols: Methods in Molecular Biology. Humana Press, Totowa, NJ, pp 365-386
197
198 The paper is available at
199 http://purl.com/STEVEROZEN/papers/rozen-and-skaletsky-2000-primer3.pdf
200
201 The filtering and sorting of the pal_finder output for Illumina data is performed
202 using a Perl script written by Graeme Fox at the University of Manchester, and which
203 is included with this tool.
204
205 Please kindly acknowledge both this Galaxy tool, the pal_finder and primer3 packages, and
206 the utility script if you use it in your work.
207 </help>
208 <citations>
209 <!--
210 See https://wiki.galaxyproject.org/Admin/Tools/ToolConfigSyntax#A.3Ccitations.3E_tag_set
211 Can be either DOI or Bibtex
212 Use http://www.bioinformatics.org/texmed/ to convert PubMed to Bibtex
213 -->
214 <citation type="doi">10.1371/journal.pone.0030953</citation>
215 <citation type="bibtex">@Article{pmid10547847,
216 Author="Rozen, S. and Skaletsky, H. ",
217 Title="{{P}rimer3 on the {W}{W}{W} for general users and for biologist programmers}",
218 Journal="Methods Mol. Biol.",
219 Year="2000",
220 Volume="132",
221 Pages="365--386",
222 URL="{http://purl.com/STEVEROZEN/papers/rozen-and-skaletsky-2000-primer3.pdf}"
223 }</citation>
224 </citations>
225 </tool>