forked from biowdl/tasks
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathspades.wdl
More file actions
86 lines (81 loc) · 2.75 KB
/
Copy pathspades.wdl
File metadata and controls
86 lines (81 loc) · 2.75 KB
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
version 1.0
task Spades {
input {
String outputDir
String? preCommand
File read1
File? read2
File? interlacedReads
File? sangerReads
File? pacbioReads
File? nanoporeReads
File? tslrContigs
File? trustedContigs
File? untrustedContigs
Boolean? singleCell
Boolean? metagenomic
Boolean? rna
Boolean? plasmid
Boolean? ionTorrent
Boolean? onlyErrorCorrection
Boolean? onlyAssembler
Boolean? careful
Boolean? disableGzipOutput
Boolean? disableRepeatResolution
File? dataset
Int threads = 1
Float memoryGb = 16.0
File? tmpDir
String? k
Float? covCutoff
Int? phredOffset
}
Int clusterMemory = ceil(memoryGb / threads * 1.2)
Int memoryArg = ceil(memoryGb)
command {
set -e -o pipefail
~{preCommand}
spades.py \
~{"-o " + outputDir} \
~{true="--sc" false="" singleCell} \
~{true="--meta" false="" metagenomic} \
~{true="--rna" false="" rna} \
~{true="--plasmid" false="" plasmid} \
~{true="--iontorrent" false="" ionTorrent} \
~{"--12 " + interlacedReads} \
~{true="-1" false="-s" defined(read2)} ~{read1} \
~{"-2 " + read2} \
~{"--sanger " + sangerReads} \
~{"--pacbio " + pacbioReads} \
~{"--nanopore " + nanoporeReads} \
~{"--tslr " + tslrContigs} \
~{"--trusted-contigs " + trustedContigs} \
~{"--untrusted-contigs " + untrustedContigs} \
~{true="--only-error-correction" false="" onlyErrorCorrection} \
~{true="--only-assembler" false="" onlyAssembler} \
~{true="--careful" false="" careful} \
~{true="--disable-gzip-output" false="" disableGzipOutput} \
~{true="--disable-rr" false="" disableRepeatResolution} \
~{"--dataset " + dataset} \
~{"--threads " + threads} \
~{"--memory " + memoryArg} \
~{"-k " + k} \
~{"--cov-cutoff " + covCutoff} \
~{"--phred-offset " + phredOffset}
}
output {
Array[File] correctedReads = glob(outputDir + "/corrected/*.fastq*")
File scaffolds = outputDir + "/scaffolds.fasta"
File contigs = outputDir + "/contigs.fasta"
File assemblyGraphWithScaffoldsGfa = outputDir + "/assembly_graph_with_scaffolds.gfa"
File assemblyGraphFastg = outputDir + "/assembly_graph.fastg"
File contigsPaths = outputDir + "/contigs.paths"
File scaffoldsPaths = outputDir + "/scaffolds.paths"
File params = outputDir + "/params.txt"
File log = outputDir + "/spades.log"
}
runtime {
cpu: threads
memory: clusterMemory
}
}