-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
480 lines (363 loc) · 22.7 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
<!doctype html>
<!-- The Time Machine GitHub pages theme was designed and developed by Jon Rohan, on Feb 7, 2012. -->
<!-- Follow him for fun. http://twitter.com/jonrohan. Tail his code on http://github.com/jonrohan -->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<link rel="stylesheet" href="stylesheets/stylesheet.css" media="screen"/>
<link rel="stylesheet" href="stylesheets/pygment_trac.css"/>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" src="javascripts/script.js"></script>
<title>Electric-eel-pond</title>
<meta name="description" content="RNAseq pipeline for HPCC at MSU">
<meta name="viewport" content="width=device-width,initial-scale=1">
</head>
<body>
<div class="wrapper">
<header>
<h1 class="title">Electric-eel-pond</h1>
</header>
<div id="container">
<p class="tagline">RNAseq pipeline for HPCC at MSU</p>
<div id="main" role="main">
<div class="download-bar">
<div class="inner">
<a href="https://github.com/gallant-lab/electric-eel-pond/tarball/master" class="download-button tar"><span>Download</span></a>
<a href="https://github.com/gallant-lab/electric-eel-pond/zipball/master" class="download-button zip"><span>Download</span></a>
<a href="https://github.com/gallant-lab/electric-eel-pond" class="code">View Electric-eel-pond on GitHub</a>
</div>
<span class="blc"></span><span class="trc"></span>
</div>
<article class="markdown-body">
<p><a name="top"></a></p>
<h1>
<a name="electric-eelpond" class="anchor" href="#electric-eelpond"><span class="octicon octicon-link"></span></a>Electric Eelpond</h1>
<p>Written by Justin Rucinski and Sophia Sdao</p>
<h2>
<a name="table-of-contents" class="anchor" href="#table-of-contents"><span class="octicon octicon-link"></span></a>Table of Contents</h2>
<ul>
<li><a href="#step1">Step 1- Cleaning the reads</a></li>
<li><a href="#step2">Step 2- Running Trinity</a></li>
<li><a href="#step3">Step 3- RSEM quantification</a></li>
<li><a href="#step4">Step 4- mpiBLAST</a></li>
</ul><p><a name="step1"></a></p>
<h2>
<a name="step-1--cleaning-the-reads" class="anchor" href="#step-1--cleaning-the-reads"><span class="octicon octicon-link"></span></a>Step 1- Cleaning the reads</h2>
<hr><h3>
<a name="overview" class="anchor" href="#overview"><span class="octicon octicon-link"></span></a>Overview:</h3>
<p>Electric Eelpond Step 1 removes adapter sequences, interleaves the paired ends, and quality filters the reads. </p>
<h3>
<a name="command-arguments" class="anchor" href="#command-arguments"><span class="octicon octicon-link"></span></a>Command Arguments:</h3>
<ul>
<li>
<p><code>-h</code>, <code>--help</code></p>
<p>Display help message and exit.</p>
</li>
<li>
<p><code>-m</code>, <code>--msu</code></p>
<p>Indicate using Michigan State University file naming convention. Only valid in absence of <code>-c</code>. Default option.</p>
<p>Example Michigan State University file name: <br><strong>NAR_I_EO_AGTCAA_L001_R1_001.fastq.gz</strong></p>
</li>
<li>
<p><code>-c</code>, <code>--cornell</code></p>
<p>Indicate using Cornell University file naming convention. Only valid in absence of <code>-m</code>.</p>
<p>Example Cornell file name: <br><strong>468_3676_4104_N_PKINGN_6898_CCGTCC_R1.fastq.gz</strong> </p>
</li>
<li>
<p><code>-s</code>, <code>--split</code></p>
<p>Split paired reads into R1 and R2 files after quality filtering.</p>
</li>
<li>
<p><code>-i</code>, <code>--inputdir</code> <path></p>
<p>Name of input directory where files are located.</p>
</li>
<li>
<p><code>-o</code>, <code>--outputdir</code> <path></p>
<p>Name of output directory. Does not have to exist prior to runtime.</p>
</li>
<li>
<p><code>-t</code>, <code>--threads</code> <int></p>
<p>Number of threads requested. Enter as a digit. Incorrect syntax will result in an error message followed by termination of the program. Default is 1 thread.</p>
</li>
<li>
<p><code>-r</code>, <code>--reqmem</code> <int></p>
<p>Gb of memory requested. Enter as a digit. Incorrect syntax will result in an error message followed by termination of the program. Default is 12Gb.</p>
</li>
<li>
<p><code>-w</code>, <code>--walltime</code> <(h)h:mm:ss></p>
<p>Estimated time required for job. Enter as "(h)h:mm:ss". Incorrect syntax will result in an error message followed by termination of the program. Default is 4:00:00.</p>
</li>
</ul><h3>
<a name="requirements" class="anchor" href="#requirements"><span class="octicon octicon-link"></span></a>Requirements:</h3>
<ul>
<li>The file names must follow the MSU or Cornell naming conventions.</li>
<li>Files must end in <em>.fastq.gz</em>
</li>
<li>Files must be located inside the same folder.</li>
<li>One sample per run</li>
</ul><h3>
<a name="process" class="anchor" href="#process"><span class="octicon octicon-link"></span></a>Process:</h3>
<p>Electric Eelpond Step 1 requires an input of a directory containing the fastq.gz files and returns quality trimmed and filtered gzipped files in the designated output directory.</p>
<ol>
<li>
<p>Creating the receipt</p>
<p>Step 1 will create a new text file named "receipt.txt" and save it to the output directory after documenting the date and time.</p>
</li>
<li>
<p>Concatenating lanes</p>
<p>Step 1 will check for multiple lanes according to either the Michigan State University or Cornell University naming convention of fastq.gz files. Enter flag <code>-m</code> (or <code>--msu</code>) to indicate Michigan State University naming convention or <code>-c</code> (or <code>--cornell</code>) to indicate Cornell University naming convention. Use of both <code>-m</code> and <code>-c</code> flags in the same command will result in an error message followed by termination of the program. Michigan State University convention will default when neither <code>-m</code> nor <code>-c</code> flags are specified in the command. If multiple lanes of a similar sample are found, Step 1 will concatenate the files together after prompting the user for confirmation of the concatenation process. All prompts and responses will be written to the receipt.</p>
</li>
<li>
<p>Writing the qsub script and submitting the job</p>
<p>After appropriate files have been concatenated, Step 1 will sort the files into R1 and R2 files and create a .qsub submission script. The .qsub file will be named according to sample name and saved in the output directory.
Using the <code>-t</code>, <code>-r</code>, and <code>-w</code> flags in the command allows customization of number of cores, required memory, and walltime needed to complete the job. Default number of cores is 1, default memory is 12Gb, and default walltime is 4 hours. This information will be written to the receipt.</p>
<h4>
<a name="the-qsub-commands" class="anchor" href="#the-qsub-commands"><span class="octicon octicon-link"></span></a>The qsub commands:</h4>
<ul>
<li>Trimmomatic removes adapter sequences.</li>
<li>Interleaves paired ends.</li>
<li>Concatenates orphaned reads.</li>
<li>Quality filter paired and single-end reads.</li>
<li>Remove remaining orphaned reads.</li>
<li>Cleans up directory such that only receipt.txt, <code>*.pe.qc.fq.gz</code> (paired-end reads), and <code>*.se.qc.fq.gz</code> (single-end reads) remain. These are the final cleaned reads.</li>
<li>If <code>-s</code> is called in command, splits paired reads (<code>*.pe.qc.fq.gz</code>) into R1 and R2 files. </li>
</ul>
<p>Errors and outputs from each command in the qsub will be written to the receipt.</p>
</li>
</ol><p><a href="#top">Back to the top</a></p>
<p><a name="step2"></a></p>
<h2>
<a name="step-2--running-trinity" class="anchor" href="#step-2--running-trinity"><span class="octicon octicon-link"></span></a>Step 2- Running Trinity</h2>
<hr><h3>
<a name="overview-1" class="anchor" href="#overview-1"><span class="octicon octicon-link"></span></a>Overview:</h3>
<p>Submit files to Trinity for transcriptome assembly.</p>
<h3>
<a name="command-arguments-1" class="anchor" href="#command-arguments-1"><span class="octicon octicon-link"></span></a>Command Arguments:</h3>
<ul>
<li>
<p><code>-h</code>, <code>--help</code></p>
<p>Display help message and exit.</p>
</li>
<li>
<p><code>-n</code>, <code>--normalization</code></p>
<p>Applies normalization to reads before running Trinity.</p>
</li>
<li>
<p><code>-d</code>, <code>--inputdirs</code> <path(s)></p>
<p>List of names of input directories to traverse. At least one input directory required. Only valid in absence of <code>-i</code>.</p>
</li>
<li>
<p><code>-i</code>, <code>--inputfiles</code> <path(s)></p>
<p>List of names of input files. At least one input file required. Only valid in absence of <code>-d</code>.</p>
</li>
<li>
<p><code>-o</code>, <code>--outputdir</code> <path></p>
<p>Name of output directory. Does not have to be created prior to runtime.</p>
</li>
<li>
<p><code>-t</code>, <code>--threads</code> <int></p>
<p>Number of threads requested. Enter as a digit. Incorrect syntax will result in an error message followed by termination of the program.</p>
</li>
<li>
<p><code>-r</code>, <code>--reqmem</code> <int></p>
<p>Gb of memory requested. Enter as a digit. Incorrect syntax will result in an error message followed by termination of the program.</p>
</li>
<li>
<p><code>-w</code>, <code>--walltime</code> <(h)h:mm:ss></p>
<p>Estimated time required for job. Enter as "(h)h:mm:ss". Incorrect syntax will result in an error message followed by termination of the program. Default is 20:00:00.</p>
</li>
</ul><h3>
<a name="process-1" class="anchor" href="#process-1"><span class="octicon octicon-link"></span></a>Process:</h3>
<p>Electric Eelpond Step 2 requires input in the form of either directories of quality filtered files or the quality filtered files themselves, and returns an assembled transcriptome in the designated output directory by calling an appropriate Trinity command. </p>
<ol>
<li>
<p>Creating the receipt</p>
<p>Step 2 will create a new text file named "receipt.txt" and save it to the output directory after documenting the date and time.</p>
</li>
<li>
<p>Prompting for missing arguments</p>
<p>Unlike Step 1, Step 2 does not store default values for required memory and number of threads. If "-r" and "-t" are not used in the command, Step 2 will prompt the user to enter values. If walltime is not given, the default is 20 hours. The option to wait to choose an amount of memory based on an estimation calculated by the program is given to the user. This information is written to the receipt.</p>
</li>
<li>
<p>Read recognition and sorting</p>
<p>Step 2 expects the reads to be separated into R1, R2 (each ending in ".fastq.gz.pe.qc.fq.gz"), and single-ended reads (ending in ".fastq.gz.se.qc.fq.gz"). If using Electric Eelpond Step 1 to quality filter, use of the "-s" flag in the Step 1 command will return these exact files.</p>
<p>If the "-i" is used in the command, Step 2 will sort only those input files into left, right, and single-ended reads. If the "-d" is used instead, Step 2 will traverse all subdirectories within the input directories and find all files ending with ".fastq.gz.pe.qc.fq.gz" and ".fastq.gz.se.qc.fq.gz" and sort them into left, right, and single-ended files. </p>
<p>Upon completion of the sorting, Step 2 will prompt the user for confirmation of correct sorting, as well as prompt for confirmation for use of single-ended files in Trinity. When the user confirms, the names and directories of all files used are written to the receipt, and memory estimation commences if necessary. The user will be given a recommended amount of memory to use in Gb, based on the rule: 1Gb per 1 million reads. The choice of required memory is written to the receipt.</p>
</li>
<li>
<p>Writing the qsub and submitting the job</p>
<p>At this point, Step 2 uses the number of threads, required memory, and walltime arguments along with the confirmed left and right files to use to write the qsub script. If single-ended reads are being used, they are treated as left arguments in Trinity. If "-n" is used in the command, the Trinity argument " --normalize_reads" is added. All output from Trinity is written to the receipt. The .qsub file is saved in the output directory. The final assembly is saved in Trinity.fasta.</p>
</li>
</ol><h3>
<a name="a-few-notes-about-trinity" class="anchor" href="#a-few-notes-about-trinity"><span class="octicon octicon-link"></span></a>A few notes about Trinity:</h3>
<p>Since Trinity modifies the original files in the original directory it is crucial to only run one job per input directory at a time. If a job times out or fails it can be restarted provided the user has not deleted any data Trinity has produced.</p>
<h4>
<a name="resources" class="anchor" href="#resources"><span class="octicon octicon-link"></span></a>Resources:</h4>
<ul>
<li>
<a href="http://trinityrnaseq.sourceforge.net" target="_blank">Trinity home page</a>
</li>
</ul><p><a href="#top">Back to the top</a></p>
<p><a name="step3"></a></p>
<h2>
<a name="step-3--rsem-quantification" class="anchor" href="#step-3--rsem-quantification"><span class="octicon octicon-link"></span></a>Step 3- RSEM quantification</h2>
<hr><h3>
<a name="overview-2" class="anchor" href="#overview-2"><span class="octicon octicon-link"></span></a>Overview:</h3>
<p>Performs alignment and abundance estimation using RSEM provided by Trinity.</p>
<h3>
<a name="command-arguments-2" class="anchor" href="#command-arguments-2"><span class="octicon octicon-link"></span></a>Command Arguments:</h3>
<ul>
<li>
<p><code>-h</code>, <code>--help</code></p>
<p>Display help message and exit.</p>
</li>
<li>
<p><code>--ref</code> <filepath></p>
<p>Path to reference file (.fasta).</p>
</li>
<li>
<p><code>--left</code> <filepath></p>
<p>Path to left read file (R1).</p>
</li>
<li>
<p><code>--right</code> <filepath></p>
<p>Path to right read file (R2).</p>
</li>
<li>
<p><code>-o</code>, <code>--outputdir</code> <path></p>
<p>Name of output directory. Does not have to be created prior to runtime.</p>
</li>
<li>
<p><code>-t</code>, <code>--threads</code> <int></p>
<p>Number of threads requested. Enter as a digit. Incorrect syntax will result in an error message followed by termination of the program.</p>
</li>
<li>
<p><code>-r</code>, <code>--reqmem</code> <int></p>
<p>Gb of memory requested. Enter as a digit. Incorrect syntax will result in an error message followed by termination of the program.</p>
</li>
<li>
<p><code>-w</code>, <code>--walltime</code> <(h)h:mm:ss></p>
<p>Estimated time required for job. Enter as "(h)h:mm:ss". Incorrect syntax will result in an error message followed by termination of the program. Default is 20:00:00.</p>
</li>
</ul><h3>
<a name="process-2" class="anchor" href="#process-2"><span class="octicon octicon-link"></span></a>Process:</h3>
<p>Electric EelPond Step 3 takes in two input files, a left and a right read (from step 1), and performs abundance estimation using a reference database file (Trinity.fasta from step 2).</p>
<p>Generated output files are placed in the output directory. Output from the program is placed in receipt.txt.</p>
<p>Step 3 prompts for user confirmation of the input arguments before submitting to the HPCC.</p>
<h4>
<a name="resources-1" class="anchor" href="#resources-1"><span class="octicon octicon-link"></span></a>Resources:</h4>
<ul>
<li>
<a href="http://trinityrnaseq.sourceforge.net/analysis/abundance_estimation.html" target="_blank">Trinity abundance estimation</a>
</li>
</ul><p><a href="#top">Back to the top</a></p>
<p><a name="step4"></a></p>
<h2>
<a name="step-4--mpiblast" class="anchor" href="#step-4--mpiblast"><span class="octicon octicon-link"></span></a>Step 4- mpiBLAST</h2>
<hr><h3>
<a name="overview-3" class="anchor" href="#overview-3"><span class="octicon octicon-link"></span></a>Overview:</h3>
<p>Step 4 sends a database and a transcriptome through mpiBLAST and stores the hits in a results.txt file.</p>
<h3>
<a name="the-command-arguments" class="anchor" href="#the-command-arguments"><span class="octicon octicon-link"></span></a>The Command Arguments:</h3>
<ul>
<li>
<p><code>-h</code>, <code>--help</code></p>
<p>Display help message and exit.</p>
</li>
<li>
<p><code>-b</code>, <code>--blasttype</code> <string></p>
<p>Type of blast to perform. Choose from:</p>
<ul>
<li><p>blastp (amino acid query sequence against a protein sequence database)</p></li>
<li><p>blastn (nucleotide query sequence against a nucleotide sequence database)</p></li>
<li><p>blastx (nucleotide query sequence translated in all reading frames against a protein sequence database)</p></li>
<li><p>tblastn (protein query sequence against a nucleotide sequence database dynamically translated in all reading frames)</p></li>
<li><p>tblastx (compares the six-frame translations of a nucleotide query sequence against the six-frame translations of a nucleotide sequence database. Please note that tblastx program cannot be used with the nr database on the BLAST Web page. )</p></li>
</ul>
</li>
<li>
<p><code>-i</code>, <code>--input</code> <filepath></p>
<p>Name of input query to search against database. Include entire path in argument.</p>
</li>
<li>
<p><code>-d</code>, <code>--database</code> <string></p>
<p>Name of database. Do not include path.</p>
</li>
<li>
<p><code>-o</code>, <code>--outputdir</code> <path></p>
<p>Name of output directory. Does not have to be created prior to runtime.</p>
</li>
<li>
<p><code>-t</code>, <code>--threads</code> <int></p>
<p>Number of threads requested. Enter as a digit. Incorrect syntax will result in an error message followed by termination of the program.</p>
</li>
<li>
<p><code>-r</code>, <code>--reqmem</code> <int></p>
<p>Gb of memory requested. Enter as a digit. Incorrect syntax will result in an error message followed by termination of the program.</p>
</li>
<li>
<p><code>-w</code>, <code>--walltime</code> <(h)h:mm:ss></p>
<p>Estimated time required for job. Enter as "(h)h:mm:ss". Incorrect syntax will result in an error message followed by termination of the program. Default is 20:00:00.</p>
</li>
<li>
<p><code>-n</code>, <code>--nodes</code> <int></p>
<p>Number of nodes requested.</p>
</li>
</ul><h3>
<a name="the-process" class="anchor" href="#the-process"><span class="octicon octicon-link"></span></a>The Process:</h3>
<p>Electric Eelpond calls the mpiBLAST exec command to BLAST the data against a chosen database. mpiBLAST takes advantage of parallel computing to process fragments of a database simultaneously using multiple nodes. Before Electric Eelpond Step 4 can be run, the user must fragment the database into a chosen directory and create a .ncbirc file in his/her home directory.</p>
<h4>
<a name="fragmenting-the-database" class="anchor" href="#fragmenting-the-database"><span class="octicon octicon-link"></span></a>Fragmenting the Database:</h4>
<p>To fragment a database into N (number of) fragments, enter these commands:</p>
<pre><code>module load mpiBLAST
</code></pre>
<pre><code>mpiformatdb -N [number of fragments] -i [name of database] -o T -n [path/to/fragment/directory] -p [T if protein database/F if nucleotide database]
</code></pre>
<p>In the fragment directory you should now see the fragments of the database.</p>
<h4>
<a name="creating-the-ncbirc-file" class="anchor" href="#creating-the-ncbirc-file"><span class="octicon octicon-link"></span></a>Creating the .ncbirc File:</h4>
<p>In your home directory, create a .ncbirc file with the following lines:</p>
<pre><code>[NCBI]
Data=/opt/software/mpiBLAST/mpiblast-1.6.0/ncbi/data
[BLAST]
BLASTDB=/path/to/fragments/directory
BLASTMAT=/opt/software/mpiBLAST/mpiblast-1.6.0/ncbi/data
[mpiBLAST]
Shared=/path/to/fragments/directory
Local=/path/to/temp/directory
</code></pre>
<p>Check that BLASTDB and SHARED are both the path to the fragments created using the above mpiformatdb command. LOCAL will be created in the mpiBLAST exec command and deleted after finishing. It is recommended that the user stores the LOCAL (temporary) directory in /mnt/scratch for easy file managment.</p>
<h4>
<a name="running-electric-eelpond-step-4" class="anchor" href="#running-electric-eelpond-step-4"><span class="octicon octicon-link"></span></a>Running Electric Eelpond Step 4:</h4>
<p>After the database has been fragmented into the [mpiBLAST] Shared directory and the .ncbirc file has been created in the home directory, Electric Eelpond Step 4 can commence. Request at least (2 + number of database fragments) nodes, and at least (2 + number of database fragments) Gb memory. Request appropriately more memory for larger databases.<br>
When inputting the <code>-d</code> argument, enter only the root name of your database, not the entire path name. The .ncbirc file, if formatted correctly, will tell mpiBLAST exactly how to access the fragmented database.
The Jobname will be the same name as the output directory.</p>
<h4>
<a name="the-output" class="anchor" href="#the-output"><span class="octicon octicon-link"></span></a>The Output:</h4>
<p>After mpiBLAST finishes, the output directory should contain a time.txt, results.txt, error.txt, and output.txt in addition to the BLAST.qsub and receipt.txt. The results.txt file contains the blast hit data. output.txt contains information about the resources requested and required.</p>
<h3>
<a name="resources-2" class="anchor" href="#resources-2"><span class="octicon octicon-link"></span></a>Resources:</h3>
<p><a href="https://wiki.hpcc.msu.edu/display/Bioinfo/Using+mpiBLAST" target="_blank">HPCC tutorial: Using mpiBLAST</a></p>
<p><a href="http://www.ncbi.nlm.nih.gov/BLAST/blast_program.shtml" target="_blank">BLAST programs</a></p>
<p><a href="http://blast.ncbi.nlm.nih.gov/Blast.cgi" target="_blank">BLAST website</a></p>
<p><a href="#top">Back to the top</a></p>
</article>
</div>
</div>
<footer>
<div class="owner">
<p><a href="https://github.com/gallant-lab" class="avatar"><img src="https://avatars3.githubusercontent.com/u/8058079?s=60" width="48" height="48"/></a> <a href="https://github.com/gallant-lab">gallant-lab</a> maintains <a href="https://github.com/gallant-lab/electric-eel-pond">Electric-eel-pond</a></p>
</div>
<div class="creds">
<small>This page generated using <a href="http://pages.github.com/">GitHub Pages</a><br/>theme by <a href="https://twitter.com/jonrohan/">Jon Rohan</a></small>
</div>
</footer>
</div>
<div class="current-section">
<a href="#top">Scroll to top</a>
<a href="https://github.com/gallant-lab/electric-eel-pond/tarball/master" class="tar">tar</a><a href="https://github.com/gallant-lab/electric-eel-pond/zipball/master" class="zip">zip</a><a href="" class="code">source code</a>
<p class="name"></p>
</div>
</body>
</html>