annotate bamCoverage.xml @ 27:bf1b1dcdd67b draft

Uploaded
author bgruening
date Mon, 17 Mar 2014 16:23:58 -0400
parents 2ad3b027dfcd
children f7712a057440
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
27
bf1b1dcdd67b Uploaded
bgruening
parents: 26
diff changeset
1 <tool id="deeptools_bamCoverage" name="bamCoverage" version="1.0.5">
26
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
2 <description> generates a coverage bigWig file from a given BAM file. Multiple options are available to count reads and normalize coverage. (bam2bigwig)</description>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
3 <expand macro="requirements" />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
4 <expand macro="stdio" />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
5 <macros>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
6 <token name="@BINARY@">bamCoverage</token>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
7 <import>deepTools_macros.xml</import>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
8 </macros>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
9 <command>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
10 bamCoverage
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
11
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
12 @THREADS@
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
13
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
14 --bam '$bamInput'
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
15 --bamIndex ${bamInput.metadata.bam_index}
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
16 --outFileName '$outFileName'
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
17 --outFileFormat '$outFileFormat'
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
18
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
19 --fragmentLength $fragmentLength
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
20 --binSize $binSize
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
21
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
22 #if $scaling.type=='rpkm':
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
23 --normalizeUsingRPKM
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
24 #elif $scaling.type=='1x':
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
25 #if $scaling.effectiveGenomeSize.effectiveGenomeSize_opt == "specific":
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
26 --normalizeTo1x $scaling.effectiveGenomeSize.effectiveGenomeSize
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
27 #else:
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
28 --normalizeTo1x $scaling.effectiveGenomeSize.effectiveGenomeSize_opt
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
29 #end if
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
30 #elif $scaling.type=='own':
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
31 --scaleFactor $scaling.scaleFactor
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
32 #end if
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
33
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
34 #if str($region).strip() != '':
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
35 --region '$region'
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
36 #end if
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
37
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
38 #if $advancedOpt.showAdvancedOpt == "yes":
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
39 #if $advancedOpt.smoothLength:
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
40 --smoothLength '$advancedOpt.smoothLength'
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
41 #end if
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
42
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
43 $advancedOpt.doNotExtendPairedEnds
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
44 $advancedOpt.ignoreDuplicates
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
45
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
46 #if $advancedOpt.minMappingQuality:
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
47 --minMappingQuality '$advancedOpt.minMappingQuality'
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
48 #end if
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
49
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
50 ##if str($advancedOpt.ignoreForNormalization).strip() != '':
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
51 ## --ignoreForNormalization $advancedOpt.ignoreForNormalization
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
52 ##end if
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
53
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
54 #end if
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
55 </command>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
56
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
57 <inputs>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
58 <param name="bamInput" format="bam" type="data" label="BAM file"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
59 help="The BAM file must be sorted."/>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
60
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
61 <param name="fragmentLength" type="integer" value="300" min="1"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
62 label="Length of the average fragment size"
27
bf1b1dcdd67b Uploaded
bgruening
parents: 26
diff changeset
63 help ="Reads will be extended to match this length unless they are paired-end, in which case they will be extended to match the fragment length. If this value is set to the read length or smaller, the read will not be extended. *Warning* the fragment length affects the normalization to 1x (see &quot;normalize coverage to 1x&quot;). Sequencing depth is defined as: (total number of mapped reads * fragment length) / effective genome size. *NOTE*: If the BAM files contain mated and unmated paired-end reads, unmated reads will be extended to match the fragment length."/>
26
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
64
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
65 <param name="binSize" type="integer" value="50" min="1"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
66 label="Bin size in bp"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
67 help="The genome will be divided in bins (also called tiles) of the specified length. For each bin the overlaping number of fragments (or reads) will be reported. If only half a fragment overlaps, this fraction will be reported. "/>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
68
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
69 <conditional name="scaling">
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
70 <param name="type" type="select" label="Scaling/Normalization method" >
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
71 <option value="1x">Normalize coverage to 1x</option>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
72 <option value="rpkm">Normalize to fragments (reads) per kilobase per million (RPKM)</option>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
73 <option value="own">Set your own scaling factor</option>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
74 <option value="no">Do not normalize or scale</option>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
75 </param>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
76 <when value="rpkm"/>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
77 <when value="no"/>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
78 <when value="1x">
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
79 <expand macro="effectiveGenomeSize" />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
80 </when>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
81 <when value="own">
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
82 <param name="scaleFactor" type="float" value="1" size="3"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
83 label="Scale factor to multiply all values" />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
84 </when>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
85 </conditional>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
86
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
87 <param name="outFileFormat" type="select" label="Coverage file format">
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
88 <option value="bigwig" selected="true">bigwig</option>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
89 <option value="bedgraph">bedgraph</option>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
90 </param>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
91
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
92 <expand macro="region_limit_operation" />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
93
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
94 <conditional name="advancedOpt">
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
95 <param name="showAdvancedOpt" type="select" label="Show advanced options" >
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
96 <option value="no" selected="true">no</option>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
97 <option value="yes">yes</option>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
98 </param>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
99 <when value="no" />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
100 <when value="yes">
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
101 <param name="smoothLength" type="integer" value="1" optional="true" min="1"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
102 label="Smooth values using the following length (in bp)"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
103 help ="The smooth length defines a window, larger than the bin size, to average the number of reads. For example, if the bin size is set to 20 bp and the smooth length is set to 60 bp, then, for each bin size the average of it and its left and right neighbors is considered. Any value smaller than the bin size will be ignored and no smoothing will be applied."/>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
104
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
105 <param name="doNotExtendPairedEnds" type="boolean" truevalue="--doNotExtendPairedEnds" falsevalue=""
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
106 label="Do not extend paired ends"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
107 help="If set, reads are not extended to match the fragment length reported in the BAM file, instead they will be extended to match the fragment length. Default is to extend the reads if paired end information is available."/>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
108
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
109 <param name="ignoreDuplicates" type="boolean" truevalue="--ignoreDuplicates" falsevalue=""
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
110 label="Ignore duplicates"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
111 help="If set, reads that have the same orientation and start position will be considered only once. If reads are paired, the mate position also has to coincide to ignore a read." />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
112
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
113 <param name="minMappingQuality" type="integer" optional="true" value="1" min="1"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
114 label="Minimum mapping quality"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
115 help= "If set, only reads that have a mapping quality score higher than the given value are considered. *Note* Bowtie's Mapping quality is related to uniqueness: the higher the score, the more unique is a read. A mapping quality defined by Bowtie of 10 or less indicates that there is at least a 1 in 10 chance that the read truly originated elsewhere."/>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
116
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
117 <!-- <param name="ignoreForNormalization" type="text" value="" size="50"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
118 label="regions that should be excluded for calculating the scaling factor"
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
119 help="Sometimes it makes sense to exclude certain regions when calculating the scaling factor. For example, if you know some regions that you suspect to be present more often in your sample's genome than in the reference genome that will therefore accumulate reads (CNV). Another typical example is the single X chromosome in male samples that should be scaled separately from the diploid autosomes. For example chrX,chrY,chr3. or chr10:12220-128932" />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
120 -->
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
121 </when>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
122 </conditional>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
123 </inputs>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
124 <outputs>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
125 <data format="bigwig" name="outFileName">
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
126 <change_format>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
127 <when input="outFileFormat" value="bigwig" format="bigwig" />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
128 <when input="outFileFormat" value="bedgraph" format="bedgraph" />
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
129 </change_format>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
130 </data>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
131 </outputs>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
132 <help>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
133
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
134 **What it does**
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
135
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
136 Given a BAM file, this tool generates a bigWig or bedGraph file with genome-wide coverage of fragment or read coverages.
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
137 The way the method works is by first calculating all the number of reads (either extended to match the fragment length or not)
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
138 that overlap each bin (a region of fixed length, i.e. 25 bp) in the genome. Bins with zero counts are skipped, i.e. not added to the output file.
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
139 The resulting read counts can be normalized using either a given scaling factor, the RPKM formula or to get a 1x depth of coverage (RPGC).
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
140
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
141
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
142 .. image:: $PATH_TO_IMAGES/norm_IGVsnapshot_indFiles.png
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
143
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
144
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
145 You can find more details on the bamCoverage wiki page: https://github.com/fidelram/deepTools/wiki/Normalizations#wiki-bamCoverage
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
146
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
147
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
148 **Output files**:
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
149
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
150 - coverage file either in bigWig or bedGraph format
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
151
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
152 -----
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
153
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
154 @REFERENCES@
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
155
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
156 </help>
2ad3b027dfcd Uploaded
bgruening
parents:
diff changeset
157 </tool>