annotate bamCoverage.xml @ 29:60788be7b346 draft

Uploaded
author bgruening
date Sat, 21 Dec 2013 17:30:26 -0500
parents e43b4015b4cc
children fc3830717e24
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
24
e43b4015b4cc Uploaded
bgruening
parents: 22
diff changeset
1 <tool id="deeptools_bamCoverage" name="bamCoverage" version="1.0.2">
10
a68a771625d2 Uploaded
bgruening
parents: 9
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>
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
3 <expand macro="requirements" />
22
8710187d1eb5 Uploaded
bgruening
parents: 21
diff changeset
4 <expand macro="stdio" />
10
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
5 <macros>
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
6 <import>deepTools_macros.xml</import>
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
7 </macros>
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
8 <command>
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
9 bamCoverage
1
21d563d5f2b2 Uploaded
bgruening
parents: 0
diff changeset
10
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
11 @THREADS@
1
21d563d5f2b2 Uploaded
bgruening
parents: 0
diff changeset
12
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
13 --bam '$bamInput'
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
14 --bamIndex ${bamInput.metadata.bam_index}
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
15 --outFileName '$outFileName'
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
16 --outFileFormat '$outFileFormat'
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
17
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
18 --fragmentLength $fragmentLength
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
19 --binSize $binSize
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
20
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
21 #if $scaling.type=='rpkm':
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
22 --normalizeUsingRPKM
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
23 #elif $scaling.type=='1x':
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
24 --normalizeTo1x $scaling.normalizeTo1x
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
25 #elif $scaling.type=='own':
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
26 --scaleFactor $scaling.scaleFactor
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
27 #end if
6
c5847db0cb41 Uploaded
bgruening
parents: 5
diff changeset
28
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
29 #if $advancedOpt.showAdvancedOpt == "yes":
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
30 #if $advancedOpt.smoothLength:
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
31 --smoothLength '$advancedOpt.smoothLength'
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
32 #end if
1
21d563d5f2b2 Uploaded
bgruening
parents: 0
diff changeset
33
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
34 #if str($advancedOpt.region.value) != '':
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
35 --region '$advancedOpt.region'
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
36 #end if
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
37 $advancedOpt.doNotExtendPairedEnds
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
38 $advancedOpt.ignoreDuplicates
1
21d563d5f2b2 Uploaded
bgruening
parents: 0
diff changeset
39
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
40 #if $advancedOpt.minMappingQuality:
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
41 --minMappingQuality '$advancedOpt.minMappingQuality'
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
42 #end if
1
21d563d5f2b2 Uploaded
bgruening
parents: 0
diff changeset
43
29
60788be7b346 Uploaded
bgruening
parents: 24
diff changeset
44 ##if str($advancedOpt.ignoreForNormalization).strip() != '':
60788be7b346 Uploaded
bgruening
parents: 24
diff changeset
45 ## --ignoreForNormalization $advancedOpt.ignoreForNormalization
60788be7b346 Uploaded
bgruening
parents: 24
diff changeset
46 ##end if
60788be7b346 Uploaded
bgruening
parents: 24
diff changeset
47
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
48 #end if
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
49 </command>
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
50
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
51 <inputs>
21
8436c195dd6c Uploaded
bgruening
parents: 14
diff changeset
52 <param name="bamInput" format="bam" type="data" label="BAM file"
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
53 help="The BAM file must be sorted."/>
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
54
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
55 <param name="fragmentLength" type="integer" value="300" min="1"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
56 label="Length of the average fragment size"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
57 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;). The formula to normalize using the sequencing depth is genomeSize/(number of mapped reads * fragment length). *NOTE*: If the BAM files contain mated and unmated paired-end reads, unmated reads will be extended to match the fragment length."/>
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
58
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
59 <param name="binSize" type="integer" value="50" min="1"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
60 label="Bin size in bp"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
61 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. "/>
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
62
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
63 <conditional name="scaling">
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
64 <param name="type" type="select" label="Scaling/Normalization method" >
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
65 <option value="1x">Normalize coverage to 1x</option>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
66 <option value="rpkm">Normalize to fragments (reads) per kilobase per million (RPKM)</option>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
67 <option value="own">Set your own scaling factor</option>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
68 <option value="no">Do not normalize or scale</option>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
69 </param>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
70 <when value="rpkm"/>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
71 <when value="no"/>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
72 <when value="1x">
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
73 <param name="normalizeTo1x" type="integer" value="2150570000"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
74 label="Genome size"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
75 help ="Enter the genome size to normalize the reads counts. Sequencing depth is defined as the total number of mapped reads * fragment length / effective genome size. To use this option, the effective genome size has to be given. Common values are: mm9: 2150570000, hg19:2451960000, dm3:121400000 and ce10:93260000."/>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
76 </when>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
77 <when value="own">
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
78 <param name="scaleFactor" type="float" value="1" size="3"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
79 label="Scale factor to multiply all values" />
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
80 </when>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
81 </conditional>
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
82
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
83 <param name="outFileFormat" type="select" label="Coverage file format">
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
84 <option value="bigwig" selected="true">bigwig</option>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
85 <option value="bedgraph">bedgraph</option>
1
21d563d5f2b2 Uploaded
bgruening
parents: 0
diff changeset
86 </param>
21d563d5f2b2 Uploaded
bgruening
parents: 0
diff changeset
87
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
88 <conditional name="advancedOpt">
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
89 <param name="showAdvancedOpt" type="select" label="Show advanced options" >
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
90 <option value="no" selected="true">no</option>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
91 <option value="yes">yes</option>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
92 </param>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
93 <when value="no" />
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
94 <when value="yes">
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
95 <param name="smoothLength" type="integer" value="1" optional="true" min="1"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
96 label="Smooth values using the following length (in bp)"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
97 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."/>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
98
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
99 <param name="region" type="text" value=""
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
100 label="Region of the genome to limit the operation to"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
101 help="This is useful when testing parameters to reduce the computing time. The format is chr:start:end, for example &quot;chr10&quot; or &quot;chr10:456700:891000&quot;" />
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
102
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
103 <param name="doNotExtendPairedEnds" type="boolean" truevalue="--doNotExtendPairedEnds" falsevalue=""
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
104 label="Do not extend paired ends"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
105 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."/>
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
106
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
107 <param name="ignoreDuplicates" type="boolean" truevalue="--ignoreDuplicates" falsevalue=""
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
108 label="Ignore duplicates"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
109 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." />
1
21d563d5f2b2 Uploaded
bgruening
parents: 0
diff changeset
110
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
111 <param name="minMappingQuality" type="integer" optional="true" value="1" min="1"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
112 label="Minimum mapping quality"
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
113 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."/>
29
60788be7b346 Uploaded
bgruening
parents: 24
diff changeset
114
60788be7b346 Uploaded
bgruening
parents: 24
diff changeset
115 <!-- <param name="ignoreForNormalization" type="text" value="" size="50"
60788be7b346 Uploaded
bgruening
parents: 24
diff changeset
116 label="regions that should be excluded for calculating the scaling factor"
60788be7b346 Uploaded
bgruening
parents: 24
diff changeset
117 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" />
60788be7b346 Uploaded
bgruening
parents: 24
diff changeset
118 -->
14
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
119 </when>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
120 </conditional>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
121 </inputs>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
122 <outputs>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
123 <data format="bigwig" name="outFileName">
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
124 <change_format>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
125 <when input="outFileFormat" value="bigwig" format="bigwig" />
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
126 <when input="outFileFormat" value="bedgraph" format="bedgraph" />
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
127 </change_format>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
128 </data>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
129 </outputs>
b0d64a9930d6 Uploaded
bgruening
parents: 10
diff changeset
130 <help>
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
131
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
132 **What it does**
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
133
10
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
134 Given a BAM file, this tool generates a bigWig or bedGraph file of fragment or read coverages.
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
135 The way the method works is by first calculating all the number of reads (either extended to match the fragment length or not)
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
136 that overlap each bin in the genome. Bins with zero counts are skipped, i.e. not added to the output file.
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
137 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).
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
138
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
139
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
140 .. image:: $PATH_TO_IMAGES/norm_IGVsnapshot_indFiles.png
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
141
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
142
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
143 **Output files**:
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
144
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
145 - coverage file either in bigWig or bedGraph format
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
146
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
147 -----
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
148
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
149 .. class:: infomark
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
150
10
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
151 @REFERENCES@
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
152
10
a68a771625d2 Uploaded
bgruening
parents: 9
diff changeset
153 </help>
0
09b65c12a75a Uploaded
bgruening
parents:
diff changeset
154 </tool>