0
|
1 <tool id="art_illumina" name="ART Illumina" version="2014.11.03.0">
|
|
2 <description>simulates sequencing data</description>
|
|
3 <macros>
|
|
4 <import>macros.xml</import>
|
|
5 </macros>
|
|
6 <expand macro="stdio" />
|
|
7 <command><![CDATA[
|
|
8 art_illumina
|
|
9
|
|
10 #if str($sam) == "-s":
|
|
11 --samout
|
|
12 #end if
|
|
13
|
|
14 #if not str($aln) == "-a":
|
|
15 --noALN
|
|
16 #end if
|
|
17
|
|
18 #if str($generate.choice) == "paired_end":
|
|
19 --paired
|
|
20 --mflen $generate.fragment_size
|
|
21 --sdev $generate.fragment_sd
|
|
22 #else if str($generate.choice) == "mate_pair":
|
|
23 --matepair
|
|
24 --mflen $generate.fragment_size
|
|
25 --sdev $generate.fragment_sd
|
|
26 #end if
|
|
27
|
|
28 --in $input_seq_file
|
|
29 --len $read_length
|
|
30 --fcov $fold_coverage
|
|
31
|
|
32 $amplicon
|
|
33
|
|
34 --insRate $insRate
|
|
35 --insRate2 $insRate2
|
|
36 --delRate $delRate
|
|
37 --delRate2 $delRate2
|
|
38
|
|
39 #if $rndSeed and $rndSeed > -1:
|
|
40 --rndSeed $rndSeed
|
|
41 #end if
|
|
42
|
|
43 --out output;
|
|
44 ]]></command>
|
|
45 <inputs>
|
|
46 <param label="DNA/RNA reference sequence" format="fasta" name="input_seq_file" type="data"/>
|
|
47 <param label="the fold of read coverage over the reference sequences" name="fold_coverage" type="integer" value="20"/>
|
|
48 <param label="length of reads to be simulated" name="read_length" type="integer" value="100"/>
|
|
49 <param label="amplicon sequencing simulation" name="amplicon" type="boolean" truevalue="--amplicon" falsevalue="" />
|
|
50
|
|
51 <conditional name="generate">
|
|
52 <param name="choice" type="select" label="Type of data to generate">
|
|
53 <option value="single_end">Single-End</option>
|
|
54 <option value="paired_end">Paired-End</option>
|
|
55 <option value="mate_pair">Mate-Pair</option>
|
|
56 </param>
|
|
57 <when value="single_end">
|
|
58 </when>
|
|
59 <when value="paired_end">
|
|
60 <expand macro="frag_len_sd" />
|
|
61 </when>
|
|
62 <when value="mate_pair">
|
|
63 <expand macro="frag_len_sd" />
|
|
64 </when>
|
|
65 </conditional>
|
|
66
|
|
67 <expand macro="aln" />
|
|
68 <expand macro="sam" />
|
|
69
|
|
70 <param label="the first-read insertion rate" help="(--insRate)" name="insRate" type="float" value="0.00009" />
|
|
71 <param label="the second-read insertion rate" help="(--insRate2)" name="insRate2" type="float" value="0.00015" />
|
|
72 <param label="the first-read deletion rate" help="(--delRate)" name="delRate" type="float" value="0.00011" />
|
|
73 <param label="the second-read deletion rate" help="(--delRate2)" name="delRate2" type="float" value="0.00023" />
|
|
74
|
|
75 <expand macro="rndSeed" />
|
|
76 <!-- todo: id, errfree, masN, qShift(2), sepProf -->
|
|
77 </inputs>
|
|
78 <outputs>
|
|
79 <!-- Single End -->
|
|
80 <data format="fastq" name="output_fq1_single" from_work_dir="output.fq" label="Simulated of Illumina sequencing of $input_seq_file.name">
|
|
81 <filter>generate['choice'] == "single_end"</filter>
|
|
82 </data>
|
|
83
|
|
84 <!-- Paired End -->
|
|
85 <data format="fastq" name="output_fq1_paired" from_work_dir="output1.fq" label="Simulated of Illumina sequencing of $input_seq_file.name (Forward)">
|
|
86 <filter>generate['choice'] != "single_end"</filter>
|
|
87 </data>
|
|
88 <data format="fastq" name="output_fq2_paired" from_work_dir="output2.fq" label="Simulated of Illumina sequencing of $input_seq_file.name (Reverse)">
|
|
89 <filter>generate['choice'] != "single_end"</filter>
|
|
90 </data>
|
|
91 <data format="sam" name="output_sam" from_work_dir="output.sam" label="Mapping of Simulated Illumina data to $input_seq_file.name">
|
|
92 <filter>sam</filter>
|
|
93 </data>
|
|
94
|
|
95 <!-- Single End -->
|
|
96 <data format="aln" name="output_aln1_single" from_work_dir="output.aln" label="Alignment of Simulated Illumina data to $input_seq_file.name">
|
|
97 <filter>aln and generate['choice'] == "single_end"</filter>
|
|
98 </data>
|
|
99
|
|
100 <!-- paired end -->
|
|
101 <data format="aln" name="output_aln1_paired" from_work_dir="output1.aln" label="Alignment of Simulated Illumina data to $input_seq_file.name">
|
|
102 <filter>aln and generate['choice'] != "single_end"</filter>
|
|
103 </data>
|
|
104 <data format="aln" name="output_aln2_paired" from_work_dir="output2.aln" label="Alignment of Simulated Illumina data to $input_seq_file.name">
|
|
105 <filter>aln and generate['choice'] != "single_end"</filter>
|
|
106 </data>
|
|
107 </outputs>
|
|
108 <tests>
|
|
109 <test>
|
|
110 <param name="rndSeed" value="42" />
|
|
111 <param name="input_seq_file" value="input.fa" />
|
|
112 <param name="fold_coverage" value="20" />
|
|
113 <param name="read_length" value="200" />
|
|
114 <param name="choice" value="single_end" />
|
|
115 <param name="aln" value="True" />
|
|
116 <param name="sam" value="True" />
|
|
117
|
|
118 <output name="output_fq1_single" file="art.illumina.01.fq" />
|
|
119 <output name="output_aln1_single" file="art.illumina.01.aln" lines_diff="2"/>
|
|
120 <output name="output_sam" file="art.illumina.01.sam" lines_diff="2"/>
|
|
121 </test>
|
|
122 <test>
|
|
123 <param name="rndSeed" value="42" />
|
|
124 <param name="input_seq_file" value="input.fa" />
|
|
125 <param name="fold_coverage" value="20" />
|
|
126 <param name="read_length" value="200" />
|
|
127 <param name="choice" value="paired_end" />
|
|
128 <param name="fragment_size" value="300" />
|
|
129 <param name="fragment_sd" value="10" />
|
|
130 <param name="aln" value="True" />
|
|
131 <param name="sam" value="True" />
|
|
132
|
|
133 <output name="output_fq1_paired" file="art.illumina.021.fq" />
|
|
134 <output name="output_fq2_paired" file="art.illumina.022.fq" />
|
|
135 <output name="output_aln1_paired" file="art.illumina.021.aln" lines_diff="2"/>
|
|
136 <output name="output_aln2_paired" file="art.illumina.022.aln" lines_diff="2"/>
|
|
137 <output name="output_sam" file="art.illumina.02.sam" lines_diff="2"/>
|
|
138 </test>
|
|
139 </tests>
|
|
140 <help><![CDATA[
|
|
141 Art Illumina Simulator
|
|
142 ======================
|
|
143
|
|
144 ART (art_Illumina Q version) is a simulation program to generate sequence read
|
|
145 data of Illumina sequencers. ART generates reads according to the empirical
|
|
146 read quality profile summarized from large real read data. ART has been using
|
|
147 for testing or benchmarking a variety of methods or tools for next-generation
|
|
148 sequencing data analysis, including read alignment, de novo assembly, detection
|
|
149 of SNP, CNV, or other structure variation.
|
|
150
|
|
151 art_Illumina can generate single-end, paired-end, mate-pair reads, and
|
|
152 amplicon sequencing simulation of Illumina sequencing platform. Its outputs
|
|
153 include FASTQ read, ALN and/or SAM alignment files.
|
|
154
|
|
155 ]]></help>
|
|
156 <expand macro="citation" />
|
|
157 </tool>
|
|
158
|