0
|
1 <tool id="trinity_psc" name="Trinity" version="0.0.1">
|
|
2
|
|
3 <!-- Written by Jeremy Goecks, now maintained here by bhaas and additional
|
|
4 modifications by Nate Coraor -->
|
1
|
5 <description>(Beta) De novo assembly of RNA-Seq data Using Trinity on PSC's Bridges</description>
|
0
|
6 <requirements>
|
1
|
7 <!-- These are versions available as modules on Bridges -->
|
|
8 <requirement type="package" version="1.1.2">bowtie</requirement>
|
|
9 <requirement type="package" version="1.3">samtools</requirement>
|
0
|
10 <requirement type="package" version="jre7">java</requirement>
|
1
|
11 <requirement type="package" version="5.18.4">perl</requirement>
|
|
12 <requirement type="package" version="2.2.0">trinity</requirement>
|
0
|
13 </requirements>
|
|
14 <command>
|
1
|
15 MEM=`expr "\${GALAXY_SLOTS:-16}" \* 48 - 16` ;
|
|
16
|
2
|
17 workdir=`pwd`;
|
1
|
18 echo "workdir is \$workdir";
|
2
|
19 cd \$LOCAL;
|
|
20 echo "Running Trinity from `pwd`";
|
1
|
21
|
0
|
22 Trinity --max_memory "\${MEM}G"
|
|
23 --CPU "\${GALAXY_SLOTS:-16}"
|
1
|
24 --bflyHeapSpaceMax "32G"
|
|
25 --bflyHeapSpaceInit "2G"
|
|
26 --bflyGCThreads "6"
|
2
|
27
|
|
28 #if $additional_params.use_additional == "yes" and $additional_params.normalize_reads == "yes":
|
|
29 --normalize_reads
|
|
30 #end if
|
0
|
31
|
|
32 ## Inputs.
|
|
33 #if str($inputs.paired_or_single) == "paired":
|
|
34 --left $inputs.left_input --right $inputs.right_input
|
|
35 #if $inputs.left_input.ext == 'fa':
|
|
36 --seqType fa
|
|
37 #else:
|
|
38 --seqType fq
|
|
39 #end if
|
|
40 #if str($inputs.library_type) != "undefined":
|
|
41 --SS_lib_type $inputs.library_type
|
|
42 #end if
|
|
43 --group_pairs_distance $inputs.group_pairs_distance
|
|
44 #else:
|
|
45 --single $inputs.input
|
|
46 #if str($inputs.input.ext) == 'fa':
|
|
47 --seqType fa
|
|
48 #else:
|
|
49 --seqType fq
|
|
50 #end if
|
|
51 #if str($inputs.library_type) != "undefined":
|
|
52 --SS_lib_type $inputs.library_type
|
|
53 #end if
|
|
54 #end if
|
|
55
|
|
56 ## Additional parameters.
|
|
57 #if str($additional_params.use_additional) == "yes":
|
|
58 --min_kmer_cov $additional_params.min_kmer_cov --max_reads_per_graph $additional_params.max_reads_per_graph
|
|
59 #if $additional_params.bfly_opts != 'None':
|
|
60 --bfly_opts " $additional_params.bfly_opts "
|
|
61 #end if
|
|
62 #end if
|
|
63
|
|
64 ## direct to output
|
|
65 > $trinity_log 2>&1
|
|
66
|
|
67 ## if Trinity fails, output the end of the log to stderr for Galaxy, and touch the output file for Pulsar
|
1
|
68 || (ec=\$? ; cp -pr . \$workdir; cd \$workdir; cat $trinity_log >&2 ; mkdir -p trinity_out_dir ; touch trinity_out_dir/Trinity.fasta ; exit \$ec);
|
|
69
|
|
70 cp -pr . \$workdir;
|
|
71 cd \$workdir;
|
0
|
72
|
|
73 </command>
|
|
74 <stdio>
|
|
75 <exit_code range="1:" level="fatal" description="Program failed" />
|
|
76 <exit_code range=":-1" level="fatal" description="DRM killed job" />
|
|
77 </stdio>
|
|
78 <inputs>
|
|
79 <conditional name="inputs">
|
|
80 <param name="paired_or_single" type="select" label="Paired or Single-end data?">
|
|
81 <option value="paired">Paired</option>
|
|
82 <option value="single">Single</option>
|
|
83 </param>
|
|
84 <when value="paired">
|
|
85 <param format="fasta,fastq" name="left_input" type="data" label="Left/Forward strand reads" help=""/>
|
|
86 <param format="fasta,fastq" name="right_input" type="data" label="Right/Reverse strand reads" help=""/>
|
|
87 <param name="library_type" type="select" label="Strand-specific Library Type">
|
|
88 <option value="undefined">Not set</option>
|
|
89 <option value="FR">FR</option>
|
|
90 <option value="RF">RF</option>
|
|
91 </param>
|
|
92 <param name="group_pairs_distance" type="integer" value="500" min="1" label="Group pairs distance" help="Maximum length expected between fragment pairs"/>
|
|
93 <param name="path_reinforcement_distance" type="integer" value="75" min="1" label="Path reinforcement distance" help="Minimum read overlap required for path extension in the graph" />
|
|
94 </when>
|
|
95 <when value="single">
|
|
96 <param format="fasta,fastq" name="input" type="data" label="Single-end reads" help=""/>
|
|
97 <param name="library_type" type="select" label="Strand-specific Library Type">
|
|
98 <option value="undefined">Not set</option>
|
|
99 <option value="F">F</option>
|
|
100 <option value="R">R</option>
|
|
101 </param>
|
|
102 <param name="path_reinforcement_distance" type="integer" value="40" min="1" label="Path reinforcement distance" help="Minimum read overlap required for path extension in the graph" />
|
|
103 </when>
|
|
104 </conditional>
|
|
105
|
|
106 <conditional name="additional_params">
|
|
107 <param name="use_additional" type="select" label="Use Additional Params?">
|
|
108 <option value="no">No</option>
|
|
109 <option value="yes">Yes</option>
|
|
110 </param>
|
|
111 <when value="no">
|
|
112 </when>
|
|
113 <when value="yes">
|
|
114 <param name="min_kmer_cov" type="integer" value="1" min="1" label="inchworm_min_kmer_cov" help="Minimum kmer coverage required by Inchworm for initial contig construction" />
|
|
115 <param name="max_reads_per_graph" type="integer" value="20000000" min="10000" label="chrysalis_max_reads_per_graph" help="Maximum number of reads to be anchored within each transcript graph by Chrysalis" />
|
|
116 <param name="bfly_opts" type="text" value="None" label="bfly_opts" help="Options to pass on to Butterfly" />
|
|
117 <param name="min_contig_length" type="integer" value="200" min="1" label="Minimum Contig Length" help=""/>
|
2
|
118 <param name="min_contig_length" type="integer" value="200" min="1" label="Minimum Contig Length" help=""/>
|
|
119 <param name="normalize_reads" type="boolean" truevalue="yes" falsevalue="no" help="(--normalize_reads) Normalize reads, can decrease runtime and memory requirements for datasets exceeding 300M pairs"/>
|
0
|
120 </when>
|
|
121 </conditional>
|
|
122 </inputs>
|
|
123 <outputs>
|
|
124 <data format="txt" name="trinity_log" label="${tool.name} on ${on_string}: log" />
|
|
125 <data format="fasta" name="assembled_transcripts" label="${tool.name} on ${on_string}: Assembled Transcripts" from_work_dir="trinity_out_dir/Trinity.fasta"/>
|
|
126 </outputs>
|
|
127 <tests>
|
|
128 </tests>
|
|
129 <help>
|
1
|
130 .. warning:: This version of Trinity, which runs on Bridges_ at the `Pittsburgh Supercomputing Center`_, is a **beta** version. It may not be possible to rerun the same version of this tool, Trinity itself, or its other dependencies (Bowtie, SAMtools) in the future. **When rerunning this tool on the same data, it should, but cannot be guaranteed to reproduce the exact same results to the level of certainty as other Galaxy tools.**
|
0
|
131
|
|
132 Trinity is a de novo transcript assembler that uses RNA-seq data as input. This tool runs all Trinity_ commands--Inchworm, Chrysalis, and Butterfly--in a single pass.
|
|
133
|
|
134 .. _Trinity: http://trinityrnaseq.github.io
|
|
135 .. _Pittsburgh Supercomputing Center: http://www.psc.edu
|
1
|
136 .. _Bridges: http://www.psc.edu/bridges
|
0
|
137 </help>
|
|
138 </tool>
|