15
|
1 <tool id="gatk2_reduce_reads" name="Reduce Reads" version="@VERSION@.0">
|
|
2 <description>in BAM files</description>
|
|
3 <macros>
|
|
4 <import>gatk2_macros.xml</import>
|
|
5 </macros>
|
|
6 <expand macro="requirements" />
|
|
7 <expand macro="version_command" />
|
|
8 <command interpreter="python">
|
|
9 gatk2_wrapper.py
|
|
10 --stdout "${output_log}"
|
|
11 -d "-I" "${reference_source.input_bam}" "${reference_source.input_bam.ext}" "gatk_input"
|
|
12 #if str( $reference_source.input_bam.metadata.bam_index ) != "None":
|
|
13 -d "" "${reference_source.input_bam.metadata.bam_index}" "bam_index" "gatk_input" ##hardcode galaxy ext type as bam_index
|
|
14 #end if
|
|
15 -p '
|
|
16 @JAR_PATH@
|
|
17 -T "ReduceReads"
|
|
18 -o "${output_bam}"
|
|
19
|
|
20 \$GATK2_SITE_OPTIONS
|
|
21
|
|
22 ## according to http://www.broadinstitute.org/gatk/guide/article?id=1975
|
|
23 --num_cpu_threads_per_data_thread 1
|
|
24
|
|
25 #if $reference_source.reference_source_selector != "history":
|
|
26 -R "${reference_source.ref_file.fields.path}"
|
|
27 #end if
|
|
28 #if str($input_recal) != 'None':
|
|
29 --BQSR "${input_recal}"
|
|
30 #end if
|
|
31 --disable_bam_indexing
|
|
32 '
|
|
33 #include source=$standard_gatk_options#
|
|
34
|
|
35 ##start analysis specific options
|
|
36 #if $analysis_param_type.analysis_param_type_selector == "advanced":
|
|
37 -p '
|
|
38 #if $analysis_param_type.context_size.__str__.strip() != '':
|
|
39 --context_size $analysis_param_type.context_size
|
|
40 #end if
|
|
41 #if $analysis_param_type.downsample_coverage.__str__.strip() != '':
|
|
42 --downsample_coverage $analysis_param_type.downsample_coverage
|
|
43 #end if
|
|
44 #if $analysis_param_type.minimum_del_proportion_to_trigger_variant.__str__.strip() != '':
|
|
45 --minimum_del_proportion_to_trigger_variant $analysis_param_type.minimum_del_proportion_to_trigger_variant
|
|
46 #end if
|
|
47 #if $analysis_param_type.minimum_mapping_quality.__str__.strip() != '':
|
|
48 --minimum_mapping_quality $analysis_param_type.minimum_mapping_quality
|
|
49 #end if
|
|
50 #if $analysis_param_type.minimum_tail_qualities.__str__.strip() != '':
|
|
51 --minimum_tail_qualities $analysis_param_type.minimum_tail_qualities
|
|
52 #end if
|
|
53 #if $analysis_param_type.minimum_base_quality_to_consider.__str__.strip() != '':
|
|
54 --minimum_base_quality_to_consider $analysis_param_type.minimum_base_quality_to_consider
|
|
55 #end if
|
|
56 #if $analysis_param_type.minimum_alt_proportion_to_trigger_variant.__str__.strip() != '':
|
|
57 --minimum_alt_proportion_to_trigger_variant $analysis_param_type.minimum_alt_proportion_to_trigger_variant
|
|
58 #end if
|
|
59 $analysis_param_type.allow_polyploid_reduction
|
|
60 $analysis_param_type.dont_compress_read_names
|
|
61 $analysis_param_type.dont_hardclip_low_qual_tails
|
|
62 $analysis_param_type.dont_simplify_reads
|
|
63 $analysis_param_type.dont_use_softclipped_bases
|
|
64 $analysis_param_type.hard_clip_to_interval
|
|
65 $analysis_param_type.dont_hardclip_adaptor_sequences
|
|
66 '
|
|
67 #end if
|
|
68 </command>
|
|
69 <inputs>
|
|
70 <param name="input_recal" type="data" format="csv" optional="true" label="Covariates table recalibration file" help="The input covariates table file which enables on-the-fly base quality score recalibration. Enables on-the-fly recalibrate of base qualities. The covariates tables are produced by the BaseQualityScoreRecalibrator tool. Please be aware that one should only run recalibration with the covariates file created on the same input bam(s) (-BQSR,--BQSR &lt;recal_file&gt;)" />
|
|
71 <conditional name="reference_source">
|
|
72 <expand macro="reference_source_selector_param" />
|
|
73 <when value="cached">
|
|
74 <param name="input_bam" type="data" format="bam" label="BAM file" help="-I,--input_file &lt;input_file&gt;">
|
|
75 <validator type="unspecified_build" />
|
|
76 <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 -->
|
|
77 </param>
|
|
78 <param name="ref_file" type="select" label="Using reference genome" help="-R,--reference_sequence &lt;reference_sequence&gt;" >
|
|
79 <options from_data_table="gatk2_picard_indexes">
|
|
80 <filter type="data_meta" key="dbkey" ref="input_bam" column="dbkey"/>
|
|
81 </options>
|
|
82 <validator type="no_options" message="A built-in reference genome is not available for the build associated with the selected input file"/>
|
|
83 </param>
|
|
84 </when>
|
|
85 <when value="history">
|
|
86 <param name="input_bam" type="data" format="bam" label="BAM file" help="-I,--input_file &lt;input_file&gt;" />
|
|
87 <param name="ref_file" type="data" format="fasta" label="Using reference file" help="-R,--reference_sequence &lt;reference_sequence&gt;">
|
|
88 <options>
|
|
89 <filter type="data_meta" key="dbkey" ref="input_bam" />
|
|
90 </options>
|
|
91 </param>
|
|
92 </when>
|
|
93 </conditional>
|
|
94
|
|
95 <expand macro="gatk_param_type_conditional" />
|
|
96
|
|
97 <conditional name="analysis_param_type">
|
|
98 <param name="analysis_param_type_selector" type="select" label="Basic or Advanced Analysis options">
|
|
99 <option value="basic" selected="True">Basic</option>
|
|
100 <option value="advanced">Advanced</option>
|
|
101 </param>
|
|
102 <when value="basic">
|
|
103 <!-- Do nothing here -->
|
|
104 </when>
|
|
105 <when value="advanced">
|
|
106 <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"/>
|
|
107 <param name="context_size" type="integer" value="10" optional="true" label="context_size" help="The number of bases to keep around mismatches (potential variation)">
|
|
108 </param>
|
|
109 <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."/>
|
|
110 <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"/>
|
|
111
|
|
112 <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)."/>
|
|
113 <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)"/>
|
|
114 <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.">
|
|
115 </param>
|
|
116 <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."/>
|
|
117 <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. ">
|
|
118 </param>
|
|
119 <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.">
|
|
120 </param>
|
|
121 <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.">
|
|
122 <validator type="in_range" message="value between 0 and 127" min="0" max="127"/>
|
|
123 </param>
|
|
124 <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.">
|
|
125 <validator type="in_range" message="value between 0 and 127" min="0" max="127"/>
|
|
126 </param>
|
|
127 <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.">
|
|
128 <validator type="in_range" message="value between 0.00 and 1.00" min="0.0" max="1.0"/>
|
|
129 </param>
|
|
130 <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."/>
|
|
131 </when>
|
|
132 </conditional>
|
|
133 </inputs>
|
|
134 <outputs>
|
|
135 <data format="bam" name="output_bam" label="${tool.name} on ${on_string} (BAM)" />
|
|
136 <data format="txt" name="output_log" label="${tool.name} on ${on_string} (log)" />
|
|
137 </outputs>
|
|
138 <tests>
|
|
139 <test>
|
|
140 <param name="input_recal" value="gatk/gatk_count_covariates/gatk_count_covariates_out_1.csv" ftype="csv" />
|
|
141 <param name="reference_source_selector" value="history" />
|
|
142 <param name="ref_file" value="phiX.fasta" ftype="fasta" />
|
|
143 <param name="input_bam" value="gatk/gatk_indel_realigner/gatk_indel_realigner_out_1.bam" ftype="bam" />
|
|
144 <param name="gatk_param_type_selector" value="basic" />
|
|
145 <param name="analysis_param_type_selector" value="basic" />
|
|
146 <output name="output_bam" file="gatk/gatk_table_recalibration/gatk_table_recalibration_out_1.bam" ftype="bam" lines_diff="4" />
|
|
147 <output name="output_log" file="gatk/gatk_table_recalibration/gatk_table_recalibration_out_1.log.contains" compare="contains" />
|
|
148 </test>
|
|
149 </tests>
|
|
150 <help>
|
|
151 **What it does**
|
|
152
|
|
153 ReduceReads
|
|
154 Reduces the BAM file using read based compression that keeps only essential information for variant calling
|
|
155
|
|
156 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.
|
|
157
|
|
158 .. For more information on using read based compression in the GATK, see this `tool specific page <http://www.broadinstitute.org/gatk/gatkdocs/org_broadinstitute_sting_gatk_walkers_compression_reducereads_ReduceReads.html>`_.
|
|
159
|
|
160 To learn about best practices for variant detection using GATK, see this `overview <http://www.broadinstitute.org/gatk/guide/topic?name=best-practices>`_.
|
|
161
|
|
162 If you encounter errors, please view the `GATK FAQ <http://www.broadinstitute.org/gatk/guide/topic?name=faqs>`_.
|
|
163
|
|
164 ------
|
|
165
|
|
166 **Inputs**
|
|
167
|
|
168 GenomeAnalysisTK: PrintReads accepts an aligned BAM and a recalibration CSV input files.
|
|
169
|
|
170
|
|
171 **Outputs**
|
|
172
|
|
173 The output is in BAM format.
|
|
174
|
|
175
|
|
176 Go `here <http://www.broadinstitute.org/gatk/guide/topic?name=intro>`_ for details on GATK file formats.
|
|
177
|
|
178 -------
|
|
179
|
|
180 **Settings**::
|
|
181
|
|
182
|
|
183 --allow_polyploid_reduction / -polyploid ( boolean with default value false )
|
|
184 Allow the experimental polyploid-based reduction capabilities of this tool
|
|
185
|
|
186 --context_size / -cs ( int with default value 10 )
|
|
187 The number of bases to keep around mismatches (potential variation)
|
|
188
|
|
189 --dont_compress_read_names / -nocmp_names ( boolean with default value false )
|
|
190 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.
|
|
191
|
|
192 --dont_hardclip_low_qual_tails / -noclip_tail ( boolean with default value false )
|
|
193 Do not hard clip the low quality tails of the reads. This option overrides the argument of minimum tail quality.
|
|
194
|
|
195 --dont_simplify_reads / -nosimplify ( boolean with default value false )
|
|
196 Do not simplify read (strip away all extra information of the read -- anything other than bases, quals and read group).
|
|
197
|
|
198 --dont_use_softclipped_bases / -no_soft ( boolean with default value false )
|
|
199 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)
|
|
200
|
|
201 --downsample_coverage / -ds ( int with default value 250 )
|
|
202 Downsamples the coverage of a variable region approximately (guarantees the minimum to be equal to this). A value of 0 turns downsampling off.
|
|
203
|
|
204 --hard_clip_to_interval / -clip_int ( boolean with default value false )
|
|
205 Optionally hard clip all incoming reads to the desired intervals. The hard clips will happen exactly at the interval border.
|
|
206
|
|
207 -mindel / --minimum_del_proportion_to_trigger_variant ( double with default value 0.05 )
|
|
208 Minimum proportion of indels in a site to trigger a variant region. Anything below this will be considered consensus.
|
|
209
|
|
210 --minimum_mapping_quality / -minmap ( int with default value 20 )
|
|
211 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.
|
|
212
|
|
213 --minimum_tail_qualities / -mintail ( byte with default value 2 )
|
|
214 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.
|
|
215
|
|
216 -minqual / --minimum_base_quality_to_consider ( byte with default value 20 )
|
|
217 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.
|
|
218
|
|
219 -minvar / --minimum_alt_proportion_to_trigger_variant ( double with default value 0.05 )
|
|
220 Minimum proportion of mismatches in a site to trigger a variant region. Anything below this will be considered consensus.
|
|
221
|
|
222 -noclip_ad / --dont_hardclip_adaptor_sequences ( boolean with default value false )
|
|
223 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.
|
|
224
|
|
225 @CITATION_SECTION@
|
|
226 </help>
|
|
227 <expand macro="citations" />
|
|
228 </tool>
|