-
Notifications
You must be signed in to change notification settings - Fork 58
/
single_sample_sv_callers.cwl
298 lines (290 loc) · 8.98 KB
/
single_sample_sv_callers.cwl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
#!/usr/bin/env cwl-runner
cwlVersion: v1.0
class: Workflow
label: "Subworkflow to allow calling different SV callers which require bam files as inputs"
requirements:
- class: ScatterFeatureRequirement
- class: MultipleInputFeatureRequirement
- class: SubworkflowFeatureRequirement
inputs:
bam:
type: File
secondaryFiles: [.bai,^.bai]
reference:
type: string
cnvkit_diagram:
type: boolean?
cnvkit_drop_low_coverage:
type: boolean?
cnvkit_method:
type: string?
cnvkit_reference_cnn:
type: File
cnvkit_scatter_plot:
type: boolean?
cnvkit_male_reference:
type: boolean?
cnvkit_vcf_name:
type: string?
manta_call_regions:
type: File?
secondaryFiles: [.tbi]
manta_non_wgs:
type: boolean?
manta_output_contigs:
type: boolean?
merge_max_distance:
type: int
merge_min_svs:
type: int
merge_same_type:
type: boolean
merge_same_strand:
type: boolean
merge_estimate_sv_distance:
type: boolean
merge_min_sv_size:
type: int
smoove_exclude_regions:
type: File?
snps_vcf:
type: File?
genome_build:
type: string
sv_alt_abundance_percentage:
type: double?
sv_paired_count:
type: int?
sv_split_count:
type: int?
cnv_deletion_depth:
type: double?
cnv_duplication_depth:
type: double?
cnv_filter_min_size:
type: int?
outputs:
cn_diagram:
type: File?
outputSource: run_cnvkit/cn_diagram
cn_scatter_plot:
type: File?
outputSource: run_cnvkit/cn_scatter_plot
tumor_antitarget_coverage:
type: File
outputSource: run_cnvkit/tumor_antitarget_coverage
tumor_target_coverage:
type: File
outputSource: run_cnvkit/tumor_target_coverage
tumor_bin_level_ratios:
type: File
outputSource: run_cnvkit/tumor_bin_level_ratios
tumor_segmented_ratios:
type: File
outputSource: run_cnvkit/tumor_segmented_ratios
cnvkit_filtered_vcf:
type: File
outputSource: run_cnvkit_filter/filtered_vcf
cnvkit_vcf:
type: File
outputSource: run_cnvkit_raw_index/indexed_vcf
cnvnator_cn_file:
type: File
outputSource: run_cnvnator/cn_file
cnvnator_filtered_vcf:
type: File
outputSource: run_cnvnator_filter/filtered_vcf
cnvnator_root:
type: File
outputSource: run_cnvnator/root_file
cnvnator_vcf:
type: File
outputSource: run_cnvnator_raw_index/indexed_vcf
manta_diploid_variants:
type: File?
outputSource: run_manta/diploid_variants
manta_filtered_vcf:
type: File
outputSource: run_manta_filter/filtered_vcf
manta_somatic_variants:
type: File?
outputSource: run_manta/somatic_variants
manta_all_candidates:
type: File
outputSource: run_manta/all_candidates
manta_small_candidates:
type: File
outputSource: run_manta/small_candidates
manta_tumor_only_variants:
type: File?
outputSource: run_manta/tumor_only_variants
smoove_output_variants:
type: File
outputSource: run_smoove/output_vcf
smoove_filtered_vcf:
type: File
outputSource: run_smoove_filter/filtered_vcf
survivor_merged_vcf:
type: File
outputSource: run_merge/survivor_merged_sv_vcf
survivor_merged_annotated_tsv:
type: File
outputSource: run_merge/survivor_merged_annotated_tsv
bcftools_merged_vcf:
type: File
outputSource: run_merge/bcftools_merged_sv_vcf
bcftools_merged_annotated_tsv:
type: File
outputSource: run_merge/bcftools_merged_annotated_tsv
bcftools_merged_filtered_annotated_tsv:
type: File
outputSource: run_merge/bcftools_merged_filtered_annotated_tsv
steps:
run_cnvkit:
run: cnvkit_single_sample.cwl
in:
diagram: cnvkit_diagram
drop_low_coverage: cnvkit_drop_low_coverage
method: cnvkit_method
reference_cnn: cnvkit_reference_cnn
tumor_bam: bam
scatter_plot: cnvkit_scatter_plot
male_reference: cnvkit_male_reference
cnvkit_vcf_name: cnvkit_vcf_name
segment_filter:
default: "cn"
out:
[cn_diagram, cn_scatter_plot, tumor_antitarget_coverage, tumor_target_coverage, tumor_bin_level_ratios, tumor_segmented_ratios, cnvkit_vcf]
run_cnvkit_raw_bgzip:
run: ../tools/bgzip.cwl
in:
file: run_cnvkit/cnvkit_vcf
out:
[bgzipped_file]
run_cnvkit_raw_index:
run: ../tools/index_vcf.cwl
in:
vcf: run_cnvkit_raw_bgzip/bgzipped_file
out:
[indexed_vcf]
run_cnvkit_filter:
run: sv_depth_caller_filter.cwl
in:
deletion_depth: cnv_deletion_depth
duplication_depth: cnv_duplication_depth
reference: reference
min_sv_size: cnv_filter_min_size
output_vcf_name:
default: "filtered_cnvkit.vcf"
sv_vcf: run_cnvkit/cnvkit_vcf
vcf_source:
default: "cnvkit"
out:
[filtered_vcf]
run_cnvnator:
run: ../tools/cnvnator.cwl
in:
bam: bam
reference: reference
sample_name:
default: "cnvnator"
out:
[vcf, root_file, cn_file]
run_cnvnator_raw_bgzip:
run: ../tools/bgzip.cwl
in:
file: run_cnvnator/vcf
out:
[bgzipped_file]
run_cnvnator_raw_index:
run: ../tools/index_vcf.cwl
in:
vcf: run_cnvnator_raw_bgzip/bgzipped_file
out:
[indexed_vcf]
run_cnvnator_filter:
run: sv_depth_caller_filter.cwl
in:
deletion_depth: cnv_deletion_depth
duplication_depth: cnv_duplication_depth
reference: reference
min_sv_size: cnv_filter_min_size
output_vcf_name:
default: "filtered_cnvnator.vcf"
sv_vcf: run_cnvnator/vcf
vcf_source:
default: "cnvnator"
out:
[filtered_vcf]
run_manta:
run: ../tools/manta_somatic.cwl
in:
call_regions: manta_call_regions
non_wgs: manta_non_wgs
output_contigs: manta_output_contigs
reference: reference
tumor_bam: bam
out:
[diploid_variants, somatic_variants, all_candidates, small_candidates, tumor_only_variants]
run_manta_filter:
run: sv_paired_read_caller_filter.cwl
in:
abundance_percentage: sv_alt_abundance_percentage
bam: bam
deletion_depth: cnv_deletion_depth
duplication_depth: cnv_duplication_depth
output_vcf_name:
default: "filtered_manta.vcf"
reference: reference
snps_vcf: snps_vcf
sv_paired_count: sv_paired_count
sv_split_count: sv_split_count
sv_vcf: run_manta/tumor_only_variants
vcf_source:
default: "manta"
out:
[filtered_vcf]
run_smoove:
run: ../tools/smoove.cwl
in:
bams:
source: [bam]
linkMerge: merge_flattened
exclude_regions: smoove_exclude_regions
reference: reference
out:
[output_vcf]
run_smoove_filter:
run: sv_paired_read_caller_filter.cwl
in:
abundance_percentage: sv_alt_abundance_percentage
bam: bam
deletion_depth: cnv_deletion_depth
duplication_depth: cnv_duplication_depth
output_vcf_name:
default: "filtered_smoove.vcf"
reference: reference
snps_vcf: snps_vcf
sv_paired_count: sv_paired_count
sv_split_count: sv_split_count
sv_vcf: run_smoove/output_vcf
vcf_source:
default: "smoove"
out:
[filtered_vcf]
run_merge:
run: merge_svs.cwl
in:
estimate_sv_distance: merge_estimate_sv_distance
genome_build: genome_build
max_distance_to_merge: merge_max_distance
minimum_sv_calls: merge_min_svs
minimum_sv_size: merge_min_sv_size
same_strand: merge_same_strand
same_type: merge_same_type
snps_vcf: snps_vcf
sv_vcfs:
source: [run_cnvkit_filter/filtered_vcf, run_cnvnator_filter/filtered_vcf, run_manta_filter/filtered_vcf, run_smoove_filter/filtered_vcf]
linkMerge: merge_flattened
out:
[bcftools_merged_sv_vcf, bcftools_merged_annotated_tsv, bcftools_merged_filtered_annotated_tsv, survivor_merged_sv_vcf, survivor_merged_annotated_tsv]