comparison reduce_reads.xml @ 6:6dd67e9fd0e0 draft

ReduceReads added
author Jim Johnson <jj@umn.edu>
date Tue, 06 Nov 2012 10:32:16 -0600
parents
children f253357915e0
comparison
equal deleted inserted replaced
5:0ed800373b59 6:6dd67e9fd0e0
1 <tool id="gatk2_reduce_reads" name="Reduce Reads" version="0.0.4">
2 <description>in BAM files</description>
3 <requirements>
4 <requirement type="package" version="2.2">gatk</requirement>
5 <requirement type="package" version="0.1.18">samtools</requirement>
6 </requirements>
7 <command interpreter="python">gatk2_wrapper.py
8 --max_jvm_heap_fraction "1"
9 --stdout "${output_log}"
10 -d "-I" "${reference_source.input_bam}" "${reference_source.input_bam.ext}" "gatk_input"
11 #if str( $reference_source.input_bam.metadata.bam_index ) != "None":
12 -d "" "${reference_source.input_bam.metadata.bam_index}" "bam_index" "gatk_input" ##hardcode galaxy ext type as bam_index
13 #end if
14 -p 'java
15 -jar "\$GATK2_PATH/GenomeAnalysisTK.jar"
16 -T "ReduceReads"
17 -o "${output_bam}"
18 \$GATK2_SITE_OPTIONS
19 ##-et "NO_ET" -K "/data/galaxy/appList/GenomeAnalysisTK-2.0-36-gf5c1c1a/gatk2_key_file" ##ET no phone home
20 ##--num_threads 4 ##not supported yet
21 ##-log "${output_log}" ##don't use this to log to file, instead directly capture stdout
22 #if $reference_source.reference_source_selector != "history":
23 -R "${reference_source.ref_file.fields.path}"
24 #end if
25 #if str($input_recal) != 'None':
26 --BQSR "${input_recal}"
27 #end if
28 --disable_bam_indexing
29 '
30 ##start standard gatk options
31 #if $gatk_param_type.gatk_param_type_selector == "advanced":
32 #for $pedigree in $gatk_param_type.pedigree:
33 -p '--pedigree "${pedigree.pedigree_file}"'
34 #end for
35 #for $pedigree_string in $gatk_param_type.pedigree_string_repeat:
36 -p '--pedigreeString "${pedigree_string.pedigree_string}"'
37 #end for
38 -p '--pedigreeValidationType "${gatk_param_type.pedigree_validation_type}"'
39 #for $read_filter in $gatk_param_type.read_filter:
40 -p '--read_filter "${read_filter.read_filter_type.read_filter_type_selector}"
41 ###raise Exception( str( dir( $read_filter ) ) )
42 #for $name, $param in $read_filter.read_filter_type.iteritems():
43 #if $name not in [ "__current_case__", "read_filter_type_selector" ]:
44 #if hasattr( $param.input, 'truevalue' ):
45 ${param}
46 #else:
47 --${name} "${param}"
48 #end if
49 #end if
50 #end for
51 '
52 #end for
53 #for $interval_count, $input_intervals in enumerate( $gatk_param_type.input_interval_repeat ):
54 -d "--intervals" "${input_intervals.input_intervals}" "${input_intervals.input_intervals.ext}" "input_intervals_${interval_count}"
55 #end for
56
57 #for $interval_count, $input_intervals in enumerate( $gatk_param_type.input_exclude_interval_repeat ):
58 -d "--excludeIntervals" "${input_intervals.input_exclude_intervals}" "${input_intervals.input_exclude_intervals.ext}" "input_exlude_intervals_${interval_count}"
59 #end for
60
61 -p '--interval_set_rule "${gatk_param_type.interval_set_rule}"'
62
63 -p '--downsampling_type "${gatk_param_type.downsampling_type.downsampling_type_selector}"'
64 #if str( $gatk_param_type.downsampling_type.downsampling_type_selector ) != "NONE":
65 -p '--${gatk_param_type.downsampling_type.downsample_to_type.downsample_to_type_selector} "${gatk_param_type.downsampling_type.downsample_to_type.downsample_to_value}"'
66 #end if
67 -p '
68 --baq "${gatk_param_type.baq}"
69 --baqGapOpenPenalty "${gatk_param_type.baq_gap_open_penalty}"
70 ${gatk_param_type.use_original_qualities}
71 --defaultBaseQualities "${gatk_param_type.default_base_qualities}"
72 --validation_strictness "${gatk_param_type.validation_strictness}"
73 --interval_merging "${gatk_param_type.interval_merging}"
74 ${gatk_param_type.disable_experimental_low_memory_sharding}
75 ${gatk_param_type.non_deterministic_random_seed}
76 '
77 #for $rg_black_list_count, $rg_black_list in enumerate( $gatk_param_type.read_group_black_list_repeat ):
78 #if $rg_black_list.read_group_black_list_type.read_group_black_list_type_selector == "file":
79 -d "--read_group_black_list" "${rg_black_list.read_group_black_list_type.read_group_black_list}" "txt" "input_read_group_black_list_${rg_black_list_count}"
80 #else
81 -p '--read_group_black_list "${rg_black_list.read_group_black_list_type.read_group_black_list}"'
82 #end if
83 #end for
84 #end if
85
86 #if str( $reference_source.reference_source_selector ) == "history":
87 -d "-R" "${reference_source.ref_file}" "${reference_source.ref_file.ext}" "gatk_input"
88 #end if
89 ##end standard gatk options
90
91 ##start analysis specific options
92 #if $analysis_param_type.analysis_param_type_selector == "advanced":
93 -p '
94 #if $analysis_param_type.context_size.__str__.strip() != '':
95 --context_size $analysis_param_type.context_size
96 #end if
97 #if $analysis_param_type.downsample_coverage.__str__.strip() != '':
98 --downsample_coverage $analysis_param_type.downsample_coverage
99 #end if
100 #if $analysis_param_type.minimum_del_proportion_to_trigger_variant.__str__.strip() != '':
101 --minimum_del_proportion_to_trigger_variant $analysis_param_type.minimum_del_proportion_to_trigger_variant
102 #end if
103 #if $analysis_param_type.minimum_mapping_quality.__str__.strip() != '':
104 --minimum_mapping_quality $analysis_param_type.minimum_mapping_quality
105 #end if
106 #if $analysis_param_type.minimum_tail_qualities.__str__.strip() != '':
107 --minimum_tail_qualities $analysis_param_type.minimum_tail_qualities
108 #end if
109 #if $analysis_param_type.minimum_base_quality_to_consider.__str__.strip() != '':
110 --minimum_base_quality_to_consider $analysis_param_type.minimum_base_quality_to_consider
111 #end if
112 #if $analysis_param_type.minimum_alt_proportion_to_trigger_variant.__str__.strip() != '':
113 --minimum_alt_proportion_to_trigger_variant $analysis_param_type.minimum_alt_proportion_to_trigger_variant
114 #end if
115 $analysis_param_type.allow_polyploid_reduction
116 $analysis_param_type.dont_compress_read_names
117 $analysis_param_type.dont_hardclip_low_qual_tails
118 $analysis_param_type.dont_simplify_reads
119 $analysis_param_type.dont_use_softclipped_bases
120 $analysis_param_type.hard_clip_to_interval
121 $analysis_param_type.dont_hardclip_adaptor_sequences
122 '
123 #end if
124 </command>
125 <inputs>
126 <param name="input_recal" type="data" format="csv" optional="true" label="Covariates table recalibration file" help="-BQSR,--BQSR &amp;lt;recal_file&amp;gt;" />
127 <conditional name="reference_source">
128 <param name="reference_source_selector" type="select" label="Choose the source for the reference list">
129 <option value="cached">Locally cached</option>
130 <option value="history">History</option>
131 </param>
132 <when value="cached">
133 <param name="input_bam" type="data" format="bam" label="BAM file" help="-I,--input_file &amp;lt;input_file&amp;gt;">
134 <validator type="unspecified_build" />
135 <validator type="dataset_metadata_in_data_table" table_name="gatk2_picard_indexes" metadata_name="dbkey" metadata_column="dbkey" message="Sequences are not currently available for the specified build." /> <!-- fixme!!! this needs to be a select -->
136 </param>
137 <param name="ref_file" type="select" label="Using reference genome" help="-R,--reference_sequence &amp;lt;reference_sequence&amp;gt;" >
138 <options from_data_table="gatk2_picard_indexes">
139 <filter type="data_meta" key="dbkey" ref="input_bam" column="dbkey"/>
140 </options>
141 <validator type="no_options" message="A built-in reference genome is not available for the build associated with the selected input file"/>
142 </param>
143 </when>
144 <when value="history">
145 <param name="input_bam" type="data" format="bam" label="BAM file" help="-I,--input_file &amp;lt;input_file&amp;gt;" />
146 <param name="ref_file" type="data" format="fasta" label="Using reference file" help="-R,--reference_sequence &amp;lt;reference_sequence&amp;gt;">
147 <options>
148 <filter type="data_meta" key="dbkey" ref="input_bam" />
149 </options>
150 </param>
151 </when>
152 </conditional>
153
154 <conditional name="gatk_param_type">
155 <param name="gatk_param_type_selector" type="select" label="Basic or Advanced GATK options">
156 <option value="basic" selected="True">Basic</option>
157 <option value="advanced">Advanced</option>
158 </param>
159 <when value="basic">
160 <!-- Do nothing here -->
161 </when>
162 <when value="advanced">
163 <repeat name="pedigree" title="Pedigree file" help="-ped,--pedigree &amp;lt;pedigree&amp;gt;">
164 <param name="pedigree_file" type="data" format="txt" label="Pedigree files for samples"/>
165 </repeat>
166 <repeat name="pedigree_string_repeat" title="Pedigree string" help="-pedString,--pedigreeString &amp;lt;pedigreeString&amp;gt;">
167 <param name="pedigree_string" type="text" value="" label="Pedigree string for samples"/>
168 </repeat>
169 <param name="pedigree_validation_type" type="select" label="How strict should we be in validating the pedigree information" help="-pedValidationType,--pedigreeValidationType &amp;lt;pedigreeValidationType&amp;gt;">
170 <option value="STRICT" selected="True">STRICT</option>
171 <option value="SILENT">SILENT</option>
172 </param>
173 <repeat name="read_filter" title="Read Filter" help="-rf,--read_filter &amp;lt;read_filter&amp;gt;">
174 <conditional name="read_filter_type">
175 <param name="read_filter_type_selector" type="select" label="Read Filter Type">
176 <option value="BadCigar">BadCigar</option>
177 <option value="BadMate">BadMate</option>
178 <option value="DuplicateRead">DuplicateRead</option>
179 <option value="FailsVendorQualityCheck">FailsVendorQualityCheck</option>
180 <option value="MalformedRead">MalformedRead</option>
181 <option value="MappingQuality">MappingQuality</option>
182 <option value="MappingQualityUnavailable">MappingQualityUnavailable</option>
183 <option value="MappingQualityZero">MappingQualityZero</option>
184 <option value="MateSameStrand">MateSameStrand</option>
185 <option value="MaxInsertSize">MaxInsertSize</option>
186 <option value="MaxReadLength" selected="True">MaxReadLength</option>
187 <option value="MissingReadGroup">MissingReadGroup</option>
188 <option value="NoOriginalQualityScores">NoOriginalQualityScores</option>
189 <option value="NotPrimaryAlignment">NotPrimaryAlignment</option>
190 <option value="Platform454">Platform454</option>
191 <option value="Platform">Platform</option>
192 <option value="PlatformUnit">PlatformUnit</option>
193 <option value="ReadGroupBlackList">ReadGroupBlackList</option>
194 <option value="ReadName">ReadName</option>
195 <option value="ReadStrand">ReadStrand</option>
196 <option value="ReassignMappingQuality">ReassignMappingQuality</option>
197 <option value="Sample">Sample</option>
198 <option value="SingleReadGroup">SingleReadGroup</option>
199 <option value="UnmappedRead">UnmappedRead</option>
200 </param>
201 <when value="BadCigar">
202 <!-- no extra options -->
203 </when>
204 <when value="BadMate">
205 <!-- no extra options -->
206 </when>
207 <when value="DuplicateRead">
208 <!-- no extra options -->
209 </when>
210 <when value="FailsVendorQualityCheck">
211 <!-- no extra options -->
212 </when>
213 <when value="MalformedRead">
214 <!-- no extra options -->
215 </when>
216 <when value="MappingQuality">
217 <param name="min_mapping_quality_score" type="integer" value="10" label="Minimum read mapping quality required to consider a read for calling"/>
218 </when>
219 <when value="MappingQualityUnavailable">
220 <!-- no extra options -->
221 </when>
222 <when value="MappingQualityZero">
223 <!-- no extra options -->
224 </when>
225 <when value="MateSameStrand">
226 <!-- no extra options -->
227 </when>
228 <when value="MaxInsertSize">
229 <param name="maxInsertSize" type="integer" value="1000000" label="Discard reads with insert size greater than the specified value"/>
230 </when>
231 <when value="MaxReadLength">
232 <param name="maxReadLength" type="integer" value="76" label="Max Read Length"/>
233 </when>
234 <when value="MissingReadGroup">
235 <!-- no extra options -->
236 </when>
237 <when value="NoOriginalQualityScores">
238 <!-- no extra options -->
239 </when>
240 <when value="NotPrimaryAlignment">
241 <!-- no extra options -->
242 </when>
243 <when value="Platform454">
244 <!-- no extra options -->
245 </when>
246 <when value="Platform">
247 <param name="PLFilterName" type="text" value="" label="Discard reads with RG:PL attribute containing this string"/>
248 </when>
249 <when value="PlatformUnit">
250 <!-- no extra options -->
251 </when>
252 <when value="ReadGroupBlackList">
253 <!-- no extra options -->
254 </when>
255 <when value="ReadName">
256 <param name="readName" type="text" value="" label="Filter out all reads except those with this read name"/>
257 </when>
258 <when value="ReadStrand">
259 <param name="filterPositive" type="boolean" truevalue="--filterPositive" falsevalue="" label="Discard reads on the forward strand"/>
260 </when>
261 <when value="ReassignMappingQuality">
262 <param name="default_mapping_quality" type="integer" value="60" label="Default read mapping quality to assign to all reads"/>
263 </when>
264 <when value="Sample">
265 <param name="sample_to_keep" type="text" value="" label="The name of the sample(s) to keep, filtering out all others"/>
266 </when>
267 <when value="SingleReadGroup">
268 <param name="read_group_to_keep" type="integer" value="76" label="The name of the read group to keep, filtering out all others"/>
269 </when>
270 <when value="UnmappedRead">
271 <!-- no extra options -->
272 </when>
273 </conditional>
274 </repeat>
275 <repeat name="input_interval_repeat" title="Operate on Genomic intervals" help="-L,--intervals &amp;lt;intervals&amp;gt;">
276 <param name="input_intervals" type="data" format="bed,gatk_interval,picard_interval_list,vcf" label="Genomic intervals" />
277 </repeat>
278 <repeat name="input_exclude_interval_repeat" title="Exclude Genomic intervals" help="-XL,--excludeIntervals &amp;lt;excludeIntervals&amp;gt;">
279 <param name="input_exclude_intervals" type="data" format="bed,gatk_interval,picard_interval_list,vcf" label="Genomic intervals" />
280 </repeat>
281
282 <param name="interval_set_rule" type="select" label="Interval set rule" help="-isr,--interval_set_rule &amp;lt;interval_set_rule&amp;gt;">
283 <option value="UNION" selected="True">UNION</option>
284 <option value="INTERSECTION">INTERSECTION</option>
285 </param>
286
287 <conditional name="downsampling_type">
288 <param name="downsampling_type_selector" type="select" label="Type of reads downsampling to employ at a given locus" help="-dt,--downsampling_type &amp;lt;downsampling_type&amp;gt;">
289 <option value="NONE" selected="True">NONE</option>
290 <option value="ALL_READS">ALL_READS</option>
291 <option value="BY_SAMPLE">BY_SAMPLE</option>
292 </param>
293 <when value="NONE">
294 <!-- no more options here -->
295 </when>
296 <when value="ALL_READS">
297 <conditional name="downsample_to_type">
298 <param name="downsample_to_type_selector" type="select" label="Downsample method">
299 <option value="downsample_to_fraction" selected="True">Downsample by Fraction</option>
300 <option value="downsample_to_coverage">Downsample by Coverage</option>
301 </param>
302 <when value="downsample_to_fraction">
303 <param name="downsample_to_value" type="float" label="Fraction [0.0-1.0] of reads to downsample to" value="1" min="0" max="1" help="-dfrac,--downsample_to_fraction &amp;lt;downsample_to_fraction&amp;gt;"/>
304 </when>
305 <when value="downsample_to_coverage">
306 <param name="downsample_to_value" type="integer" label="Coverage to downsample to at any given locus" value="0" help="-dcov,--downsample_to_coverage &amp;lt;downsample_to_coverage&amp;gt;"/>
307 </when>
308 </conditional>
309 </when>
310 <when value="BY_SAMPLE">
311 <conditional name="downsample_to_type">
312 <param name="downsample_to_type_selector" type="select" label="Downsample method">
313 <option value="downsample_to_fraction" selected="True">Downsample by Fraction</option>
314 <option value="downsample_to_coverage">Downsample by Coverage</option>
315 </param>
316 <when value="downsample_to_fraction">
317 <param name="downsample_to_value" type="float" label="Fraction [0.0-1.0] of reads to downsample to" value="1" min="0" max="1" help="-dfrac,--downsample_to_fraction &amp;lt;downsample_to_fraction&amp;gt;"/>
318 </when>
319 <when value="downsample_to_coverage">
320 <param name="downsample_to_value" type="integer" label="Coverage to downsample to at any given locus" value="0" help="-dcov,--downsample_to_coverage &amp;lt;downsample_to_coverage&amp;gt;"/>
321 </when>
322 </conditional>
323 </when>
324 </conditional>
325 <param name="baq" type="select" label="Type of BAQ calculation to apply in the engine" help="-baq,--baq &amp;lt;baq&amp;gt;">
326 <option value="OFF" selected="True">OFF</option>
327 <option value="CALCULATE_AS_NECESSARY">CALCULATE_AS_NECESSARY</option>
328 <option value="RECALCULATE">RECALCULATE</option>
329 </param>
330 <param name="baq_gap_open_penalty" type="float" label="BAQ gap open penalty (Phred Scaled)" value="40" help="Default value is 40. 30 is perhaps better for whole genome call sets. -baqGOP,--baqGapOpenPenalty &amp;lt;baqGapOpenPenalty&amp;gt;" />
331 <param name="use_original_qualities" type="boolean" truevalue="--useOriginalQualities" falsevalue="" label="Use the original base quality scores from the OQ tag" help="-OQ,--useOriginalQualities" />
332 <param name="default_base_qualities" type="integer" label="Value to be used for all base quality scores, when some are missing" value="-1" help="-DBQ,--defaultBaseQualities &amp;lt;defaultBaseQualities&amp;gt;"/>
333 <param name="validation_strictness" type="select" label="How strict should we be with validation" help="-S,--validation_strictness &amp;lt;validation_strictness&amp;gt;">
334 <option value="STRICT" selected="True">STRICT</option>
335 <option value="LENIENT">LENIENT</option>
336 <option value="SILENT">SILENT</option>
337 <!-- <option value="DEFAULT_STRINGENCY">DEFAULT_STRINGENCY</option> listed in docs, but not valid value...-->
338 </param>
339 <param name="interval_merging" type="select" label="Interval merging rule" help="-im,--interval_merging &amp;lt;interval_merging&amp;gt;">
340 <option value="ALL" selected="True">ALL</option>
341 <option value="OVERLAPPING_ONLY">OVERLAPPING_ONLY</option>
342 </param>
343
344 <repeat name="read_group_black_list_repeat" title="Read group black list" help="-rgbl,--read_group_black_list &amp;lt;read_group_black_list&amp;gt;">
345 <conditional name="read_group_black_list_type">
346 <param name="read_group_black_list_type_selector" type="select" label="Type of reads read group black list">
347 <option value="file" selected="True">Filters in file</option>
348 <option value="text">Specify filters as a string</option>
349 </param>
350 <when value="file">
351 <param name="read_group_black_list" type="data" format="txt" label="Read group black list file" />
352 </when>
353 <when value="text">
354 <param name="read_group_black_list" type="text" value="tag:string" label="Read group black list tag:string" />
355 </when>
356 </conditional>
357 </repeat>
358
359 <param name="disable_experimental_low_memory_sharding" type="boolean" truevalue="--disable_experimental_low_memory_sharding" falsevalue="" label="Disable experimental low-memory sharding functionality." checked="False" help="--disable_experimental_low_memory_sharding"/>
360 <param name="non_deterministic_random_seed" type="boolean" truevalue="--nonDeterministicRandomSeed" falsevalue="" label="Makes the GATK behave non deterministically, that is, the random numbers generated will be different in every run" checked="False" help="-ndrs,--nonDeterministicRandomSeed"/>
361
362 </when>
363 </conditional>
364
365
366 <conditional name="analysis_param_type">
367 <param name="analysis_param_type_selector" type="select" label="Basic or Advanced Analysis options">
368 <option value="basic" selected="True">Basic</option>
369 <option value="advanced">Advanced</option>
370 </param>
371 <when value="basic">
372 <!-- Do nothing here -->
373 </when>
374 <when value="advanced">
375 <conditional name="default_read_group_type">
376 <param name="default_read_group_type_selector" type="select" label="Set default Read Group" help="--default_read_group">
377 <option value="default" selected="True">Don't Set</option>
378 <option value="set">Set</option>
379 </param>
380 <when value="default">
381 <!-- do nothing here -->
382 </when>
383 <when value="set">
384 <param name="default_read_group" type="text" value="Unknown" label="If a read has no read group then default to the provided String"/>
385 </when>
386 </conditional>
387 <param name="default_platform" type="select" label="Set default Platform" help="--default_platform">
388 <option value="default" selected="True">Don't Set</option>
389 <option value="illumina">illumina</option>
390 <option value="454">454</option>
391 <option value="solid">solid</option>
392 </param>
393 <conditional name="force_read_group_type">
394 <param name="force_read_group_type_selector" type="select" label="Force Read Group" help="--force_read_group">
395 <option value="default" selected="True">Don't Force</option>
396 <option value="set">Force</option>
397 </param>
398 <when value="default">
399 <!-- do nothing here -->
400 </when>
401 <when value="set">
402 <param name="force_read_group" type="text" value="Unknown" label="If provided, the read group ID of EVERY read will be forced to be the provided String."/>
403 </when>
404 </conditional>
405 <param name="force_platform" type="select" label="Force Platform" help="--force_platform">
406 <option value="default" selected="True">Don't Force</option>
407 <option value="illumina">illumina</option>
408 <option value="454">454</option>
409 <option value="solid">solid</option>
410 </param>
411 <param name="exception_if_no_tile" type="boolean" checked="False" truevalue="--exception_if_no_tile" falsevalue="" label="Throw an exception when no tile can be found" help="--exception_if_no_tile"/>
412 <conditional name="solid_options_type">
413 <param name="solid_options_type_selector" type="select" label="Set SOLiD specific options">
414 <option value="default" selected="True">Don't Set</option>
415 <option value="set">Set</option>
416 </param>
417 <when value="default">
418 <!-- do nothing here -->
419 </when>
420 <when value="set">
421 <param name="solid_recal_mode" type="select" label="How should we recalibrate solid bases in which the reference was inserted" help="-sMode,--solid_recal_mode &amp;lt;solid_recal_mode&amp;gt;">
422 <option value="default" selected="True">Don't set</option>
423 <option value="DO_NOTHING">DO_NOTHING</option>
424 <option value="SET_Q_ZERO">SET_Q_ZERO</option>
425 <option value="SET_Q_ZERO_BASE_N">SET_Q_ZERO_BASE_N</option>
426 <option value="REMOVE_REF_BIAS">REMOVE_REF_BIAS</option>
427 </param>
428 <param name="solid_nocall_strategy" type="select" label="Behavior of the recalibrator when it encounters no calls" help="-solid_nocall_strategy,--solid_nocall_strategy &amp;lt;solid_nocall_strategy&amp;gt;">
429 <option value="default" selected="True">Don't set</option>
430 <option value="THROW_EXCEPTION">THROW_EXCEPTION</option>
431 <option value="LEAVE_READ_UNRECALIBRATED">LEAVE_READ_UNRECALIBRATED</option>
432 <option value="PURGE_READ">PURGE_READ</option>
433 </param>
434 </when>
435 </conditional>
436 <param name="simplify_bam" type="boolean" checked="False" truevalue="-simplifyBAM" falsevalue="" label="Simplify BAM" help="-simplifyBAM,--simplifyBAM"/>
437 <param name="window_size_nqs" type="integer" value="5" label="Window size used by MinimumNQSCovariate" help="--window_size_nqs"/>
438 <param name="homopolymer_nback" type="integer" value="7" label="Number of previous bases to look at in HomopolymerCovariate" help="-nback,--homopolymer_nback &amp;lt;homopolymer_nback&amp;gt;" />
439 <param name="preserve_qscores_less_than" type="integer" value="5" label="Bases with quality scores less than this threshold won't be recalibrated" help="-pQ,--preserve_qscores_less_than &amp;lt;preserve_qscores_less_than&amp;gt;"/>
440 <param name="smoothing" type="integer" value="1" label="smoothing" help="-sm,--smoothing &amp;lt;smoothing&amp;gt;"/>
441 <param name="max_quality_score" type="integer" value="50" label="Max quality score" help="-maxQ,--max_quality_score &amp;lt;max_quality_score&amp;gt;"/>
442 <param name="do_not_write_original_quals" type="boolean" checked="False" truevalue="--doNotWriteOriginalQuals" falsevalue="" label="Do Not Write Original Quality tag" help="-noOQs,--doNotWriteOriginalQuals"/>
443 </when>
444 </conditional>
445
446 <conditional name="analysis_param_type">
447 <param name="analysis_param_type_selector" type="select" label="Basic or Advanced Analysis options">
448 <option value="basic" selected="True">Basic</option>
449 <option value="advanced">Advanced</option>
450 </param>
451 <when value="basic">
452 <!-- Do nothing here -->
453 </when>
454 <when value="advanced">
455 <param name="allow_polyploid_reduction" type="boolean" checked="False" truevalue="-polyploid" falsevalue="" label="Allow polyploid-based reduction" help="--allow_polyploid_reduction / -polyploid Allow the experimental polyploid-based reduction capabilities"/>
456 <param name="context_size" type="integer" value="10" optional="true" label="context_size" help="The number of bases to keep around mismatches (potential variation)">
457 </param>
458 <param name="dont_compress_read_names" type="boolean" checked="False" truevalue="-nocmp_names" falsevalue="" label="Do not compress read names." help="--dont_compress_read_names / -nocmp_names By default, ReduceReads will compress read names to numbers and guarantee uniqueness and reads with similar name will still have similar compressed names. Note: If you scatter/gather there is no guarantee that read name uniqueness will be maintained -- in this case we recommend not compressing."/>
459 <param name="dont_hardclip_low_qual_tails" type="boolean" checked="False" truevalue="-noclip_tail" falsevalue="" label="Do not hard clip the low quality tails of the reads" help="--dont_hardclip_low_qual_tails / -noclip_tail This option overrides the argument of minimum tail quality"/>
460
461 <param name="dont_simplify_reads" type="boolean" checked="False" truevalue="-nosimplify" falsevalue="" label="Do not simplify read" help="--dont_simplify_reads / -nosimplify Do not simplify read (strip away all extra information of the read -- anything other than bases, quals and read group)."/>
462 <param name="dont_use_softclipped_bases" type="boolean" checked="False" truevalue="-no_soft" falsevalue="" label="Do not use high quality soft-clipped bases" help="--dont_use_softclipped_bases / -no_soft Do not use high quality soft-clipped bases. By default, ReduceReads will hard clip away any low quality soft clipped base left by the aligner and use the high quality soft clipped bases in it's traversal algorithm to identify variant regions. The minimum quality for soft clipped bases is the same as the minimum base quality to consider (minqual)"/>
463 <param name="downsample_coverage" type="integer" value="250" optional="true" label="Downsample the coverage of a variable region" help="Downsamples the coverage of a variable region approximately (guarantees the minimum to be equal to this). A value of 0 turns downsampling off.">
464 </param>
465 <param name="hard_clip_to_interval" type="boolean" checked="False" truevalue="-clip_int" falsevalue="" label="Hard clip all incoming reads" help="--hard_clip_to_interval / -clip_int Optionally hard clip all incoming reads to the desired intervals. The hard clips will happen exactly at the interval border."/>
466 <param name="minimum_del_proportion_to_trigger_variant" type="float" value="0.05" optional="true" label="Minimum proportion of indels in a site to trigger a variant region" help="--minimum_del_proportion_to_trigger_variant / -mindel Minimum proportion of indels in a site to trigger a variant region. Anything below this will be considered consensus. ">
467 </param>
468 <param name="minimum_mapping_quality" type="integer" value="20" optional="true" label="Minimum mapping quality for consensus read" help="--minimum_mapping_quality / -minmap The minimum mapping quality to be considered for the consensus synthetic read. Reads that have mapping quality below this threshold will not be counted towards consensus, but are still counted towards variable regions.">
469 </param>
470 <param name="minimum_tail_qualities" type="integer" value="2" optional="true" label="Minimum tail quality" help="--minimum_tail_qualities / -mintail Reads have notoriously low quality bases on the tails (left and right). Consecutive bases with quality lower than this threshold will be hard clipped off before entering the reduce reads algorithm.">
471 <validator type="in_range" message="value between 0 and 127" min="0" max="127"/>
472 </param>
473 <param name="minimum_base_quality_to_consider" type="integer" value="20" optional="true" label="Minimum mapping quality for consensus read" help="--minimum_mapping_quality / -minmap The minimum mapping quality to be considered for the consensus synthetic read. Reads that have mapping quality below this threshold will not be counted towards consensus, but are still counted towards variable regions.">
474 <validator type="in_range" message="value between 0 and 127" min="0" max="127"/>
475 </param>
476 <param name="minimum_alt_proportion_to_trigger_variant" type="float" value="0.05" optional="true" label="Minimum proportion of mismatches in a site to trigger a variant region" help="--minimum_alt_proportion_to_trigger_variant / -minvar Minimum proportion of mismatches in a site to trigger a variant region. Anything below this will be considered consensus.">
477 <validator type="in_range" message="value between 0.00 and 1.00" min="0.0" max="1.0"/>
478 </param>
479 <param name="dont_hardclip_adaptor_sequences" type="boolean" checked="False" truevalue="-noclip_ad" falsevalue="" label="Do not hard clip adaptor sequences" help="--dont_hardclip_adaptor_sequences / -noclip_ad Do not hard clip adaptor sequences. Note: You don't have to turn this on for reads that are not mate paired. The program will behave correctly in those cases."/>
480 </when>
481 </conditional>
482
483 <!--
484 java -Xmx4g -jar GenomeAnalysisTK.jar \
485 -R ref.fasta \
486 -T ReduceReads \
487 -I myData.bam \
488 -o myData.reduced.bam
489
490 Argument details
491 -+-allow_polyploid_reduction / -polyploid ( boolean with default value false )
492 . Allow the experimental polyploid-based reduction capabilities of this tool
493
494 -+-context_size / -cs ( int with default value 10 )
495 . The number of bases to keep around mismatches (potential variation)
496
497 -+-dont_compress_read_names / -nocmp_names ( boolean with default value false )
498 . Do not compress read names. By default, ReduceReads will compress read names to numbers and guarantee uniqueness and reads with similar name will still have similar compressed names. Note: If you scatter/gather there is no guarantee that read name uniqueness will be maintained -+- in this case we recommend not compressing.
499
500 -+-dont_hardclip_low_qual_tails / -noclip_tail ( boolean with default value false )
501 . Do not hard clip the low quality tails of the reads. This option overrides the argument of minimum tail quality.
502
503 -+-dont_simplify_reads / -nosimplify ( boolean with default value false )
504 . Do not simplify read (strip away all extra information of the read -+- anything other than bases, quals and read group).
505
506 -+-dont_use_softclipped_bases / -no_soft ( boolean with default value false )
507 . Do not use high quality soft-clipped bases. By default, ReduceReads will hard clip away any low quality soft clipped base left by the aligner and use the high quality soft clipped bases in it's traversal algorithm to identify variant regions. The minimum quality for soft clipped bases is the same as the minimum base quality to consider (minqual)
508
509 -+-downsample_coverage / -ds ( int with default value 250 )
510 . Downsamples the coverage of a variable region approximately (guarantees the minimum to be equal to this). A value of 0 turns downsampling off.
511
512 -+-hard_clip_to_interval / -clip_int ( boolean with default value false )
513 . Optionally hard clip all incoming reads to the desired intervals. The hard clips will happen exactly at the interval border.
514
515 -mindel / -+-minimum_del_proportion_to_trigger_variant ( double with default value 0.05 )
516 . Minimum proportion of indels in a site to trigger a variant region. Anything below this will be considered consensus.
517
518 -+-minimum_mapping_quality / -minmap ( int with default value 20 )
519 . The minimum mapping quality to be considered for the consensus synthetic read. Reads that have mapping quality below this threshold will not be counted towards consensus, but are still counted towards variable regions.
520
521 -+-minimum_tail_qualities / -mintail ( byte with default value 2 )
522 . Reads have notoriously low quality bases on the tails (left and right). Consecutive bases with quality lower than this threshold will be hard clipped off before entering the reduce reads algorithm.
523
524 -minqual / -+-minimum_base_quality_to_consider ( byte with default value 20 )
525 . The minimum base quality to be considered for the consensus synthetic read. Reads that have base quality below this threshold will not be counted towards consensus, but are still counted towards variable regions.
526
527 -minvar / -+-minimum_alt_proportion_to_trigger_variant ( double with default value 0.05 )
528 . Minimum proportion of mismatches in a site to trigger a variant region. Anything below this will be considered consensus.
529
530 -noclip_ad / -+-dont_hardclip_adaptor_sequences ( boolean with default value false )
531 . Do not hard clip adaptor sequences. Note: You don't have to turn this on for reads that are not mate paired. The program will behave correctly in those cases.
532
533 -+-out / -o ( StingSAMFileWriter with default value stdout )
534 An output file created by the walker. Will overwrite contents if file exists.
535
536 -->
537 </inputs>
538 <outputs>
539 <data format="bam" name="output_bam" label="${tool.name} on ${on_string} (BAM)" />
540 <data format="txt" name="output_log" label="${tool.name} on ${on_string} (log)" />
541 </outputs>
542 <tests>
543 <test>
544 <param name="input_recal" value="gatk/gatk_count_covariates/gatk_count_covariates_out_1.csv" ftype="csv" />
545 <param name="reference_source_selector" value="history" />
546 <param name="ref_file" value="phiX.fasta" ftype="fasta" />
547 <param name="input_bam" value="gatk/gatk_indel_realigner/gatk_indel_realigner_out_1.bam" ftype="bam" />
548 <param name="gatk_param_type_selector" value="basic" />
549 <param name="analysis_param_type_selector" value="basic" />
550 <output name="output_bam" file="gatk/gatk_table_recalibration/gatk_table_recalibration_out_1.bam" ftype="bam" lines_diff="4" />
551 <output name="output_log" file="gatk/gatk_table_recalibration/gatk_table_recalibration_out_1.log.contains" compare="contains" />
552 </test>
553 </tests>
554 <help>
555 **What it does**
556
557 ReduceReads
558 Reduces the BAM file using read based compression that keeps only essential information for variant calling
559
560 This walker will generated reduced versions of the BAM files that still follow the BAM spec and contain all the information necessary for the GSA variant calling pipeline. Some options allow you to tune in how much compression you want to achieve. The default values have been shown to reduce a typical whole exome BAM file 100x. The higher the coverage, the bigger the savings in file size and performance of the downstream tools.
561
562 For more information on using read based compression in the GATK, see this `tool specific page &lt;http://www.broadinstitute.org/gatk/gatkdocs/org_broadinstitute_sting_gatk_walkers_compression_reducereads_ReduceReads.html&gt;`_.
563
564 To learn about best practices for variant detection using GATK, see this `overview &lt;http://www.broadinstitute.org/gatk/guide/topic?name=best-practices&gt;`_.
565
566 If you encounter errors, please view the `GATK FAQ &lt;http://www.broadinstitute.org/gatk/guide/topic?name=faqs&gt;`_.
567
568 ------
569
570 **Inputs**
571
572 GenomeAnalysisTK: PrintReads accepts an aligned BAM and a recalibration CSV input files.
573
574
575 **Outputs**
576
577 The output is in BAM format.
578
579
580 Go `here &lt;http://www.broadinstitute.org/gatk/guide/topic?name=intro&gt;`_ for details on GATK file formats.
581
582 -------
583
584 **Settings**::
585
586 default_read_group If a read has no read group then default to the provided String.
587 default_platform If a read has no platform then default to the provided String. Valid options are illumina, 454, and solid.
588 force_read_group If provided, the read group ID of EVERY read will be forced to be the provided String. This is useful to collapse all data into a single read group.
589 force_platform If provided, the platform of EVERY read will be forced to be the provided String. Valid options are illumina, 454, and solid.
590 window_size_nqs The window size used by MinimumNQSCovariate for its calculation
591 homopolymer_nback The number of previous bases to look at in HomopolymerCovariate
592 exception_if_no_tile If provided, TileCovariate will throw an exception when no tile can be found. The default behavior is to use tile = -1
593 solid_recal_mode How should we recalibrate solid bases in whichthe reference was inserted? Options = DO_NOTHING, SET_Q_ZERO, SET_Q_ZERO_BASE_N, or REMOVE_REF_BIAS (DO_NOTHING|SET_Q_ZERO|SET_Q_ZERO_BASE_N|REMOVE_REF_BIAS)
594 solid_nocall_strategy Defines the behavior of the recalibrator when it encounters no calls in the color space. Options = THROW_EXCEPTION, LEAVE_READ_UNRECALIBRATED, or PURGE_READ (THROW_EXCEPTION|LEAVE_READ_UNRECALIBRATED|PURGE_READ)
595 recal_file Filename for the input covariates table recalibration .csv file
596 out The output BAM file
597 bam_compression Compression level to use for writing BAM files
598 disable_bam_indexing Turn off on-the-fly creation of indices for output BAM files.
599 simplifyBAM If provided, output BAM files will be simplified to include just key reads for downstream variation discovery analyses (removing duplicates, PF-, non-primary reads), as well stripping all extended tags from the kept reads except the read group identifier
600 preserve_qscores_less_than Bases with quality scores less than this threshold won't be recalibrated, default=5. In general it's unsafe to change qualities scores below &lt; 5, since base callers use these values to indicate random or bad bases
601 smoothing Number of imaginary counts to add to each bin bin order to smooth out bins with few data points, default=1
602 max_quality_score The integer value at which to cap the quality scores, default=50
603 doNotWriteOriginalQuals If true, we will not write the original quality (OQ) tag for each read
604
605 ------
606
607 **Citation**
608
609 For the underlying tool, please cite `DePristo MA, Banks E, Poplin R, Garimella KV, Maguire JR, Hartl C, Philippakis AA, del Angel G, Rivas MA, Hanna M, McKenna A, Fennell TJ, Kernytsky AM, Sivachenko AY, Cibulskis K, Gabriel SB, Altshuler D, Daly MJ. A framework for variation discovery and genotyping using next-generation DNA sequencing data. Nat Genet. 2011 May;43(5):491-8. &lt;http://www.ncbi.nlm.nih.gov/pubmed/21478889&gt;`_
610
611 Please also site `McKenna A, Hanna M, Banks E, Sivachenko A, Cibulskis K, Kernytsky A, Garimella K, Altshuler D, Gabriel S, Daly M, DePristo MA (2010). The Genome Analysis Toolkit: a MapReduce framework for analyzing next-generation DNA sequencing data. Genome Res. 20:1297-303. Epub 2010 Jul 19. &lt;http://www.ncbi.nlm.nih.gov/pubmed/20644199&gt;`_
612
613 If you use this tool in Galaxy, please cite `Blankenberg D, Von Kuster G, Coraor N, Ananda G, Lazarus R, Mangan M, Nekrutenko A, Taylor J. Galaxy: a web-based genome analysis tool for experimentalists. Curr Protoc Mol Biol. 2010 Jan;Chapter 19:Unit 19.10.1-21. &lt;http://www.ncbi.nlm.nih.gov/pubmed/20069535&gt;`_
614
615 </help>
616 </tool>