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
|
|
17 workdir=`pwd`;
|
|
18 echo "workdir is \$workdir";
|
|
19 cd \$LOCAL;
|
|
20 echo "Running Trinity from `pwd`";
|
|
21
|
0
|
22 Trinity --max_memory "\${MEM}G"
|
|
23 --CPU "\${GALAXY_SLOTS:-16}"
|
1
|
24 --bflyHeapSpaceMax "32G"
|
|
25 --bflyHeapSpaceInit "2G"
|
|
26 --bflyGCThreads "6"
|
0
|
27
|
|
28 ## Inputs.
|
|
29 #if str($inputs.paired_or_single) == "paired":
|
|
30 --left $inputs.left_input --right $inputs.right_input
|
|
31 #if $inputs.left_input.ext == 'fa':
|
|
32 --seqType fa
|
|
33 #else:
|
|
34 --seqType fq
|
|
35 #end if
|
|
36 #if str($inputs.library_type) != "undefined":
|
|
37 --SS_lib_type $inputs.library_type
|
|
38 #end if
|
|
39 --group_pairs_distance $inputs.group_pairs_distance
|
|
40 #else:
|
|
41 --single $inputs.input
|
|
42 #if str($inputs.input.ext) == 'fa':
|
|
43 --seqType fa
|
|
44 #else:
|
|
45 --seqType fq
|
|
46 #end if
|
|
47 #if str($inputs.library_type) != "undefined":
|
|
48 --SS_lib_type $inputs.library_type
|
|
49 #end if
|
|
50 #end if
|
|
51
|
|
52 ## Additional parameters.
|
|
53 #if str($additional_params.use_additional) == "yes":
|
|
54 --min_kmer_cov $additional_params.min_kmer_cov --max_reads_per_graph $additional_params.max_reads_per_graph
|
|
55 #if $additional_params.bfly_opts != 'None':
|
|
56 --bfly_opts " $additional_params.bfly_opts "
|
|
57 #end if
|
|
58 #end if
|
|
59
|
|
60 ## direct to output
|
|
61 > $trinity_log 2>&1
|
|
62
|
|
63 ## if Trinity fails, output the end of the log to stderr for Galaxy, and touch the output file for Pulsar
|
1
|
64 || (ec=\$? ; cp -pr . \$workdir; cd \$workdir; cat $trinity_log >&2 ; mkdir -p trinity_out_dir ; touch trinity_out_dir/Trinity.fasta ; exit \$ec);
|
|
65
|
|
66 cp -pr . \$workdir;
|
|
67 cd \$workdir;
|
0
|
68
|
|
69 </command>
|
|
70 <stdio>
|
|
71 <exit_code range="1:" level="fatal" description="Program failed" />
|
|
72 <exit_code range=":-1" level="fatal" description="DRM killed job" />
|
|
73 </stdio>
|
|
74 <inputs>
|
|
75 <conditional name="inputs">
|
|
76 <param name="paired_or_single" type="select" label="Paired or Single-end data?">
|
|
77 <option value="paired">Paired</option>
|
|
78 <option value="single">Single</option>
|
|
79 </param>
|
|
80 <when value="paired">
|
|
81 <param format="fasta,fastq" name="left_input" type="data" label="Left/Forward strand reads" help=""/>
|
|
82 <param format="fasta,fastq" name="right_input" type="data" label="Right/Reverse strand reads" help=""/>
|
|
83 <param name="library_type" type="select" label="Strand-specific Library Type">
|
|
84 <option value="undefined">Not set</option>
|
|
85 <option value="FR">FR</option>
|
|
86 <option value="RF">RF</option>
|
|
87 </param>
|
|
88 <param name="group_pairs_distance" type="integer" value="500" min="1" label="Group pairs distance" help="Maximum length expected between fragment pairs"/>
|
|
89 <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" />
|
|
90 </when>
|
|
91 <when value="single">
|
|
92 <param format="fasta,fastq" name="input" type="data" label="Single-end reads" help=""/>
|
|
93 <param name="library_type" type="select" label="Strand-specific Library Type">
|
|
94 <option value="undefined">Not set</option>
|
|
95 <option value="F">F</option>
|
|
96 <option value="R">R</option>
|
|
97 </param>
|
|
98 <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" />
|
|
99 </when>
|
|
100 </conditional>
|
|
101
|
|
102 <conditional name="additional_params">
|
|
103 <param name="use_additional" type="select" label="Use Additional Params?">
|
|
104 <option value="no">No</option>
|
|
105 <option value="yes">Yes</option>
|
|
106 </param>
|
|
107 <when value="no">
|
|
108 </when>
|
|
109 <when value="yes">
|
|
110 <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" />
|
|
111 <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" />
|
|
112 <param name="bfly_opts" type="text" value="None" label="bfly_opts" help="Options to pass on to Butterfly" />
|
|
113 <param name="min_contig_length" type="integer" value="200" min="1" label="Minimum Contig Length" help=""/>
|
|
114 </when>
|
|
115 </conditional>
|
|
116 </inputs>
|
|
117 <outputs>
|
|
118 <data format="txt" name="trinity_log" label="${tool.name} on ${on_string}: log" />
|
|
119 <data format="fasta" name="assembled_transcripts" label="${tool.name} on ${on_string}: Assembled Transcripts" from_work_dir="trinity_out_dir/Trinity.fasta"/>
|
|
120 </outputs>
|
|
121 <tests>
|
|
122 </tests>
|
|
123 <help>
|
1
|
124 .. 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
|
125
|
|
126 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.
|
|
127
|
|
128 .. _Trinity: http://trinityrnaseq.github.io
|
|
129 .. _Pittsburgh Supercomputing Center: http://www.psc.edu
|
1
|
130 .. _Bridges: http://www.psc.edu/bridges
|
0
|
131 </help>
|
|
132 </tool>
|