comparison optitype.xml @ 0:fd974c5df8bc draft default tip

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/optitype1 commit bb5ff6e9d2a643bd8931e8a8912bda72af0b5489"
author iuc
date Wed, 17 Feb 2021 08:10:24 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:fd974c5df8bc
1 <tool id="optitype" name="OptiType" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@">
2 <description>HLA genotyping predictions from NGS data</description>
3 <macros>
4 <token name="@TOOL_VERSION@">1.3.5</token>
5 <token name="@VERSION_SUFFIX@">0</token>
6 </macros>
7 <requirements>
8 <requirement type="package" version="@TOOL_VERSION@">optitype</requirement>
9 </requirements>
10 <command detect_errors="aggressive">
11 <![CDATA[
12 export MPLCONFIGDIR=\$TEMP &&
13 #set $fastqs = []
14 #if str( $fastq_input.fastq_input_selector ) == "paired":
15 ln -s '${fastq_input.fastq_input1}' reads_1.fastq
16 && ln -s '${fastq_input.fastq_input2}' reads_2.fastq
17 #set $fastqs = ['reads_1.fastq','reads_2.fastq']
18 #elif str( $fastq_input.fastq_input_selector ) == "paired_collection":
19 ln -s '${fastq_input.fastq_input1.forward}' reads_1.fastq
20 && ln -s '${fastq_input.fastq_input1.reverse}' reads_2.fastq
21 #set $fastqs = ['reads_1.fastq','reads_2.fastq']
22 #elif str( $fastq_input.fastq_input_selector ) == "single":
23 ln -s '${fastq_input.fastq_input1}' reads.fastq
24 #set $fastqs = ['reads.fastq']
25 #end if
26 && RAZERS3=`which razers3`
27 && sed "s#path_to_razers3#\$RAZERS3#" '$optitype_config' | sed "s/threads=16/threads=\${GALAXY_SLOTS}/" > config.ini
28 #set $input_fq = ' '.join($fastqs)
29 && OptiTypePipeline.py
30 $read_type --input ${' '.join($fastqs)}
31 #if str($beta) != '':
32 --beta $beta
33 #end if
34 #if str($enumerations) != '':
35 --enumerate $enumerations
36 #end if
37 --config "`pwd`/config.ini"
38 --outdir outdir
39 && cp outdir/*/*_coverage_plot.pdf '$coverage_plot'
40 && cp outdir/*/*_result.tsv '$result'
41 ]]>
42 </command>
43 <configfiles>
44 <configfile name="optitype_config"><![CDATA[
45 [mapping]
46
47 # Absolute path to RazerS3 binary, and number of threads to use for mapping
48
49 razers3=path_to_razers3
50 threads=16
51
52 [ilp]
53
54 # A Pyomo-supported ILP solver. The solver must be globally accessible in the
55 # environment OptiType is run, so make sure to include it in PATH.
56 # Note: this is NOT a path to the solver binary, but a keyword argument for
57 # Pyomo. Examples: glpk, cplex, cbc.
58
59 solver=$solver
60 threads=1
61
62 [behavior]
63
64 # tempdir=/path/to/tempdir # we may enable this setting later. Not used now.
65
66 # Delete intermediate bam files produced by RazerS3 after OptiType finished
67 # loading them. If you plan to re-analyze your samples with different settings
68 # disabling this option can be a time-saver, as you'll be able to pass the bam
69 # files to OptiType directly as input and spare the expensive read mapping
70 # step.
71
72 deletebam=true
73
74 # In paired-end mode one might want to use reads with just one mapped end (e.g.,
75 # the other end falls outside the reference region). This setting allows the
76 # user to keep them with an optionally reduced weight. A value of 0 means they
77 # are discarded for typing, 0.2 means single reads are "worth" 20% of paired
78 # reads, and a value of 1 means they are treated as valuable as properly mapped
79 # read pairs. Note: unpaired reads will be reported on the result coverage plots
80 # for completeness, regardless of this setting.
81
82 unpaired_weight=$unpaired_weight
83
84 # We call a read pair discordant if its two ends best-map to two disjoint sets
85 # of alleles. Such reads can be either omitted or either of their ends treated
86 # as unpaired hits. Note: discordant read pairs are reported on the coverage
87 # plots as unpaired reads, regardless of this setting.
88
89 use_discordant=$use_discordant
90 ]]></configfile>
91 </configfiles>
92 <inputs>
93 <conditional name="fastq_input">
94 <param name="fastq_input_selector" type="select" label="Single or Paired-end reads" help="Select between paired and single end data">
95 <option value="paired">Paired</option>
96 <option value="single">Single</option>
97 <option value="paired_collection">Paired Collection</option>
98 </param>
99 <when value="paired">
100 <param name="fastq_input1" type="data" format="fastqsanger" label="Select first set of reads" help="Specify dataset with forward reads"/>
101 <param name="fastq_input2" type="data" format="fastqsanger" label="Select second set of reads" help="Specify dataset with reverse reads"/>
102 </when>
103 <when value="single">
104 <param name="fastq_input1" type="data" format="fastqsanger" label="Select fastq dataset" help="Specify dataset with single reads"/>
105 </when>
106 <when value="paired_collection">
107 <param name="fastq_input1" format="fastqsanger" type="data_collection" collection_type="paired" label="Select a paired collection" help="See help section for an explanation of dataset collections"/>
108 </when>
109 </conditional>
110 <param name="read_type" type="select" label="Nucleotide Type" help="">
111 <option value="--rna">RNA</option>
112 <option value="--dna">DNA</option>
113 </param>
114 <param name="beta" type="float" value="" min="0.0" max="0.1" optional="true" label="homozygosity beta" help="The beta value for for homozygosity detection (Leave blank for default: 0.009)"/>
115 <param name="enumerations" type="integer" value="" min="1" max="5" optional="true" label="Enumerations" help="The number of enumerations (Leave blank for default: 1)"/>
116 <param name="solver" type="select" label="ILP solver" help="">
117 <option value="glpk">glpk</option>
118 <!-- Not currently in OptiType conda package
119 <option value="cbc">cbc</option>
120 <option value="cplex">cplex</option>
121 -->
122 </param>
123 <param name="unpaired_weight" type="float" value="0" min="0.0" max="1.0" label="unpaired_weight">
124 <help><![CDATA[
125 In paired-end mode one might want to use reads with just one mapped end (e.g.,
126 the other end falls outside the reference region). This setting allows the
127 user to keep them with an optionally reduced weight. A value of 0 means they
128 are discarded for typing, 0.2 means single reads are "worth" 20% of paired
129 reads, and a value of 1 means they are treated as valuable as properly mapped
130 read pairs. Note: unpaired reads will be reported on the result coverage plots
131 for completeness, regardless of this setting. ]]>
132 </help>
133 </param>
134 <param name="use_discordant" type="boolean" truevalue="true" falsevalue="false" checked="false" label="use_discordant">
135 <help><![CDATA[
136 We call a read pair discordant if its two ends best-map to two disjoint sets
137 of alleles. Such reads can be either omitted or either of their ends treated
138 as unpaired hits. Note: discordant read pairs are reported on the coverage
139 plots as unpaired reads, regardless of this setting. ]]>
140 </help>
141 </param>
142 </inputs>
143 <outputs>
144 <data name="coverage_plot" format="pdf" label="${tool.name} on ${on_string} coverage_plot.pdf"/>
145 <data name="result" format="tabular" label="${tool.name} on ${on_string} result.tsv">
146 <actions>
147 <action name="column_names" type="metadata" default="Solution,A1,A2,B1,B2,C1,C2,Reads,Objective"/>
148 </actions>
149 </data>
150 </outputs>
151 <tests>
152 <test>
153 <conditional name="fastq_input">
154 <param name="fastq_input_selector" value="paired"/>
155 <param name="fastq_input1" ftype="fastqsanger" value="rna/CRC_81_N_1_fished.fastq"/>
156 <param name="fastq_input2" ftype="fastqsanger" value="rna/CRC_81_N_2_fished.fastq"/>
157 </conditional>
158 <param name="read_type" value="--rna"/>
159 <param name="solver" value="glpk"/>
160 <output name="result">
161 <assert_contents>
162 <has_text_matching expression="0\tA\*31:01\tA\*68:01\tB\*40:01\tB\*51:01\tC\*03:04\tC\*15:02\t13\d+.\d+\t12\d+.\d+"/>
163 </assert_contents>
164 </output>
165 </test>
166 <test>
167 <conditional name="fastq_input">
168 <param name="fastq_input_selector" value="paired"/>
169 <param name="fastq_input1" ftype="fastqsanger" value="exome/NA11995_SRR766010_1_fished.fastq"/>
170 <param name="fastq_input2" ftype="fastqsanger" value="exome/NA11995_SRR766010_2_fished.fastq"/>
171 </conditional>
172 <param name="read_type" value="--dna"/>
173 <param name="solver" value="glpk"/>
174 <param name="enumerations" value="2"/>
175 <param name="unpaired_weight" value="0.2"/>
176 <output name="result">
177 <assert_contents>
178 <has_text_matching expression="0\tA\*01:01\tA\*01:01\tB\*08:01\tB\*57:01\tC\*06:02\tC\*07:01\t3\d+.\d+\t3\d+.\d+"/>
179 <has_text_matching expression="1\tA\*01:01\tA\*01:01\tB\*08:01\tB\*08:01\tC\*06:02\tC\*07:01\t3\d+.\d+\t3\d+.\d+"/>
180 </assert_contents>
181 </output>
182 </test>
183 </tests>
184 <help>
185 <![CDATA[
186 **OptiType**
187 ============
188
189 OptiType_ is a novel HLA genotyping algorithm based on integer linear programming, capable of producing accurate 4-digit HLA genotyping predictions from NGS data by simultaneously selecting all major and minor HLA Class I alleles.
190
191 **INPUTS**
192
193 RNA or DNA sequences in fastq format.
194
195 **OUTPUTS**
196
197 result.tsv A TAB-separated file of HLA genotyping predictions:
198
199 ::
200
201 A1 A2 B1 B2 C1 C2 Reads Objective
202 0 A*31:01 A*68:01 B*40:01 B*51:01 C*15:02 C*03:04 132 128.43599999999998
203
204
205 coverage_plot.pdf Plots of coverage of HLA genotyping predictions
206
207 .. _OptiType: https://github.com/FRED-2/OptiType
208 ]]>
209 </help>
210 <citations>
211 <citation type="doi">10.1093/bioinformatics/btu548</citation>
212 </citations>
213 </tool>