Mercurial > repos > jjohnson > optitype
changeset 4:111d2508ab15 draft
Uploaded
author | jjohnson |
---|---|
date | Mon, 07 Aug 2017 15:46:02 -0400 |
parents | 4f78281c42ff |
children | 044f0a2e2a36 |
files | optitype.xml tool_dependencies.xml |
diffstat | 2 files changed, 142 insertions(+), 84 deletions(-) [+] |
line wrap: on
line diff
--- a/optitype.xml Mon Nov 23 09:56:42 2015 -0500 +++ b/optitype.xml Mon Aug 07 15:46:02 2017 -0400 @@ -1,80 +1,153 @@ -<tool id="optitype" name="OptiType" version="1.0.0"> - <description>HLA genotyping predictions from NGS data</description> - <requirements> - <requirement type="package" version="1.8.12">hdf5</requirement> - <requirement type="package" version="3.4.0">razers3</requirement> - <requirement type="package" version="1.0">optitype</requirement> - <requirement type="package" version="2.9.5">cbc</requirement> - </requirements> +<tool id="optitype" name="OptiType" version="1.2.1"> + <description>HLA genotyping predictions from NGS data</description> + <requirements> + <requirement type="package" version="1.2.1">optitype</requirement> + </requirements> <stdio> - <exit_code range="1:" level="fatal" description="Error Running optitype" /> + <exit_code range="1:" level="fatal" description="Error Running optitype" /> </stdio> - <command> + <command> <![CDATA[ #set $fastqs = [] #if str( $fastq_input.fastq_input_selector ) == "paired": - ln -s "${fastq_input.fastq_input1}" reads_1.fastq - && ln -s "${fastq_input.fastq_input2}" reads_2.fastq - #set $fastqs = ['reads_1.fastq','reads_2.fastq'] + ln -s "${fastq_input.fastq_input1}" reads_1.fastq + && ln -s "${fastq_input.fastq_input2}" reads_2.fastq + #set $fastqs = ['reads_1.fastq','reads_2.fastq'] #elif str( $fastq_input.fastq_input_selector ) == "paired_collection": - ln -s "${fastq_input.fastq_input1.forward}" reads_1.fastq - && ln -s "${fastq_input.fastq_input1.reverse}" reads_2.fastq - #set $fastqs = ['reads_1.fastq','reads_2.fastq'] + ln -s "${fastq_input.fastq_input1.forward}" reads_1.fastq + && ln -s "${fastq_input.fastq_input1.reverse}" reads_2.fastq + #set $fastqs = ['reads_1.fastq','reads_2.fastq'] #elif str( $fastq_input.fastq_input_selector ) == "single": - ln -s "${fastq_input.fastq_input1}" reads.fastq - #set $fastqs = ['reads.fastq'] + ln -s "${fastq_input.fastq_input1}" reads.fastq + #set $fastqs = ['reads.fastq'] #end if && cp \$OPTITYPE_DIR/config.ini . +&& sed "s/path_to_razers3/`which razers3`/" '$optitype_config' | sed "s/threads=16/threads=\$GALAXY_SLOTS/" > config.ini && ln -s \$OPTITYPE_DIR/data data #set $input_fq = ' '.join($fastqs) -&& python \$OPTITYPE_DIR/OptiTypePipeline.py -$read_type --input ${' '.join($fastqs)} +&& OptiTypePipeline.py +$read_type --input ${' '.join($fastqs)} #if str($beta) != '': --beta $beta #end if #if str($enumerations) != '': --enumerate $enumerations #end if +--config "`pwd`/config.ini" --outdir $outdir && cp $outdir/*/*_coverage_plot.pdf $coverage_plot && cp $outdir/*/*_result.tsv $result ]]> - </command> - <inputs> - <conditional name="fastq_input"> - <param name="fastq_input_selector" type="select" label="Single or Paired-end reads" help="Select between paired and single end data"> - <option value="paired">Paired</option> - <option value="single">Single</option> - <option value="paired_collection">Paired Collection</option> - </param> - <when value="paired"> - <param name="fastq_input1" type="data" format="fastqsanger" label="Select first set of reads" help="Specify dataset with forward reads"/> - <param name="fastq_input2" type="data" format="fastqsanger" label="Select second set of reads" help="Specify dataset with reverse reads"/> - </when> - <when value="single"> - <param name="fastq_input1" type="data" format="fastqsanger" label="Select fastq dataset" help="Specify dataset with single reads"/> - </when> - <when value="paired_collection"> - <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"/> - </when> - </conditional> - <param name="read_type" type="select" label="Nucleotide Type" help=""> - <option value="--rna">RNA</option> - <option value="--dna">DNA</option> - </param> - <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)"/> - <param name="enumerations" type="integer" value="" min="1" max="5" optional="true" label="Enumerations" help="The number of enumerations (Leave blank for default: 1)"/> - <param name="outdir" type="hidden" value="output_dir"/> - </inputs> - <outputs> - <data format="pdf" name="coverage_plot" label="${tool.name} on ${on_string} coverage_plot.pdf"/> - <data format="tabular" name="result" label="${tool.name} on ${on_string} result.tsv"/> - </outputs> - <tests> - <test> - </test> - </tests> - <help> + </command> + <configfiles> + <configfile name="optitype_config"><![CDATA[ +[mapping] + +# Absolute path to RazerS3 binary, and number of threads to use for mapping + +razers3=path_to_razers3 +threads=16 + +[ilp] + +# A Pyomo-supported ILP solver. The solver must be globally accessible in the +# environment OptiType is run, so make sure to include it in PATH. +# Note: this is NOT a path to the solver binary, but a keyword argument for +# Pyomo. Examples: glpk, cplex, cbc. + +solver=$solver +threads=1 + +[behavior] + +# tempdir=/path/to/tempdir # we may enable this setting later. Not used now. + +# Delete intermediate bam files produced by RazerS3 after OptiType finished +# loading them. If you plan to re-analyze your samples with different settings +# disabling this option can be a time-saver, as you'll be able to pass the bam +# files to OptiType directly as input and spare the expensive read mapping +# step. + +deletebam=true + +# In paired-end mode one might want to use reads with just one mapped end (e.g., +# the other end falls outside the reference region). This setting allows the +# user to keep them with an optionally reduced weight. A value of 0 means they +# are discarded for typing, 0.2 means single reads are "worth" 20% of paired +# reads, and a value of 1 means they are treated as valuable as properly mapped +# read pairs. Note: unpaired reads will be reported on the result coverage plots +# for completeness, regardless of this setting. + +unpaired_weight=$unpaired_weight + +# We call a read pair discordant if its two ends best-map to two disjoint sets +# of alleles. Such reads can be either omitted or either of their ends treated +# as unpaired hits. Note: discordant read pairs are reported on the coverage +# plots as unpaired reads, regardless of this setting. + +use_discordant=$use_discordant + ]]></configfile> + </configfiles> + <inputs> + <conditional name="fastq_input"> + <param name="fastq_input_selector" type="select" label="Single or Paired-end reads" help="Select between paired and single end data"> + <option value="paired">Paired</option> + <option value="single">Single</option> + <option value="paired_collection">Paired Collection</option> + </param> + <when value="paired"> + <param name="fastq_input1" type="data" format="fastqsanger" label="Select first set of reads" help="Specify dataset with forward reads"/> + <param name="fastq_input2" type="data" format="fastqsanger" label="Select second set of reads" help="Specify dataset with reverse reads"/> + </when> + <when value="single"> + <param name="fastq_input1" type="data" format="fastqsanger" label="Select fastq dataset" help="Specify dataset with single reads"/> + </when> + <when value="paired_collection"> + <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"/> + </when> + </conditional> + <param name="read_type" type="select" label="Nucleotide Type" help=""> + <option value="--rna">RNA</option> + <option value="--dna">DNA</option> + </param> + <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)"/> + <param name="enumerations" type="integer" value="" min="1" max="5" optional="true" label="Enumerations" help="The number of enumerations (Leave blank for default: 1)"/> + <param name="solver" type="select" label="ILP solver" help=""> + <option value="glpk">glpk</option> + <!-- + <option value="cbc">cbc</option> + --> + </param> + <param name="unpaired_weight" type="float" value="0" min="0.0" max="1.0" label="unpaired_weight"> + <help><![CDATA[ +In paired-end mode one might want to use reads with just one mapped end (e.g., +the other end falls outside the reference region). This setting allows the +user to keep them with an optionally reduced weight. A value of 0 means they +are discarded for typing, 0.2 means single reads are "worth" 20% of paired +reads, and a value of 1 means they are treated as valuable as properly mapped +read pairs. Note: unpaired reads will be reported on the result coverage plots +for completeness, regardless of this setting. ]]> + </help> + </param> + <param name="use_discordant" type="boolean" truevalue="true" falsevalue="false" checked="false" label="use_discordant"> + <help><![CDATA[ +We call a read pair discordant if its two ends best-map to two disjoint sets +of alleles. Such reads can be either omitted or either of their ends treated +as unpaired hits. Note: discordant read pairs are reported on the coverage +plots as unpaired reads, regardless of this setting. ]]> + </help> + </param> + <param name="outdir" type="hidden" value="output_dir"/> + </inputs> + <outputs> + <data format="pdf" name="coverage_plot" label="${tool.name} on ${on_string} coverage_plot.pdf"/> + <data format="tabular" name="result" label="${tool.name} on ${on_string} result.tsv"/> + </outputs> + <tests> + <test> + </test> + </tests> + <help> <![CDATA[ **OptiType** ============ @@ -83,33 +156,33 @@ **INPUTS** - RNA or DNA sequences in fastq format. + RNA or DNA sequences in fastq format. **OPTIONS** - --beta <BETA_VALUE> The beta value for for homozygosity detection (see cited paper). - Default: 0.009. Handle with care. - --enumerate <ENUMERATIONS> Number of enumerations. - OptiType will output the optimal solution and the top N-1 suboptimal solutions in the results. - Default: 1 + --beta <BETA_VALUE> The beta value for for homozygosity detection (see cited paper). + Default: 0.009. Handle with care. + --enumerate <ENUMERATIONS> Number of enumerations. + OptiType will output the optimal solution and the top N-1 suboptimal solutions in the results. + Default: 1 **OUTPUTS** - result.tsv A TAB-separated file of HLA genotyping predictions: + result.tsv A TAB-separated file of HLA genotyping predictions: - :: + :: A1 A2 B1 B2 C1 C2 Reads Objective 0 A*31:01 A*68:01 B*40:01 B*51:01 C*15:02 C*03:04 132 128.43599999999998 - coverage_plot.pdf Plots of coverage of HLA genotyping predictions + coverage_plot.pdf Plots of coverage of HLA genotyping predictions .. _OptiType: https://github.com/FRED-2/OptiType ]]> - </help> - <citations> - <citation type="doi">10.1093/bioinformatics/btu548</citation> - </citations> + </help> + <citations> + <citation type="doi">10.1093/bioinformatics/btu548</citation> + </citations> </tool>
--- a/tool_dependencies.xml Mon Nov 23 09:56:42 2015 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ -<?xml version="1.0"?> -<tool_dependency> - <package name="hdf5" version="1.8.12"> - <repository changeset_revision="b6d5355e3754" name="package_hdf5_1_8_12" owner="iuc" toolshed="https://testtoolshed.g2.bx.psu.edu" /> - </package> - <package name="razers3" version="3.4.0"> - <repository changeset_revision="98fbcf8559a9" name="package_razers3_3_4_0" owner="jjohnson" toolshed="https://testtoolshed.g2.bx.psu.edu" /> - </package> - <package name="optitype" version="1.0"> - <repository changeset_revision="6bbc6df0b3d4" name="package_optitype_0_1" owner="jjohnson" toolshed="https://testtoolshed.g2.bx.psu.edu" /> - </package> - <package name="cbc" version="2.9.5"> - <repository changeset_revision="a00e1bc0658c" name="package_cbc_2_9_5" owner="jjohnson" toolshed="https://testtoolshed.g2.bx.psu.edu" /> - </package> -</tool_dependency>