comparison wrapper.sh @ 81:b6f9a640e098 draft

Uploaded
author davidvanzessen
date Fri, 19 Feb 2021 15:10:54 +0000
parents
children 729738462297
comparison
equal deleted inserted replaced
80:a4617f1d1d89 81:b6f9a640e098
1 #!/bin/bash
2 #set -e
3 dir="$(cd "$(dirname "$0")" && pwd)"
4 input=$1
5 method=$2
6 log=$3 #becomes the main html page at the end
7 outdir=$4
8 output="$outdir/index.html" #copied to $log location at the end
9 title="$5"
10 include_fr1=$6
11 functionality=$7
12 unique=$8
13 naive_output=$9
14 naive_output_ca=${10}
15 naive_output_cg=${11}
16 naive_output_cm=${12}
17 naive_output_ce=${13}
18 naive_output_all=${14}
19 filter_unique=${15}
20 filter_unique_count=${16}
21 class_filter=${17}
22 empty_region_filter=${18}
23 fast=${19}
24
25 mkdir $outdir
26
27 tar -xzf $dir/style.tar.gz -C $outdir
28
29 echo "---------------- read parameters ----------------"
30 echo "---------------- read parameters ----------------<br />" > $log
31
32 echo "unpacking IMGT file"
33
34 type="`file $input`"
35 if [[ "$type" == *"Zip archive"* ]] ; then
36 echo "Zip archive"
37 echo "unzip $input -d $PWD/files/"
38 unzip $input -d $PWD/files/
39 elif [[ "$type" == *"XZ compressed data"* ]] ; then
40 echo "ZX archive"
41 echo "tar -xJf $input -C $PWD/files/"
42 mkdir -p "$PWD/files/$title"
43 tar -xJf $input -C "$PWD/files/$title"
44 else
45 echo "Unrecognized format $type"
46 echo "Unrecognized format $type" > $log
47 exit 1
48 fi
49
50 cat "`find $PWD/files/ -name "1_*"`" > $PWD/summary.txt
51 cat "`find $PWD/files/ -name "2_*"`" > $PWD/gapped_nt.txt
52 cat "`find $PWD/files/ -name "3_*"`" > $PWD/sequences.txt
53 cat "`find $PWD/files/ -name "4_*"`" > $PWD/gapped_aa.txt
54 cat "`find $PWD/files/ -name "5_*"`" > $PWD/aa.txt
55 cat "`find $PWD/files/ -name "6_*"`" > $PWD/junction.txt
56 cat "`find $PWD/files/ -name "7_*"`" > $PWD/mutationanalysis.txt
57 cat "`find $PWD/files/ -name "8_*"`" > $PWD/mutationstats.txt
58 cat "`find $PWD/files/ -name "9_*"`" > $PWD/aa_change_stats.txt
59 cat "`find $PWD/files/ -name "10_*"`" > $PWD/hotspots.txt
60
61 echo "---------------- unique id check ----------------"
62
63 Rscript $dir/check_unique_id.r $PWD/summary.txt $PWD/gapped_nt.txt $PWD/sequences.txt $PWD/gapped_aa.txt $PWD/aa.txt $PWD/junction.txt $PWD/mutationanalysis.txt $PWD/mutationstats.txt $PWD/aa_change_stats.txt $PWD/hotspots.txt
64
65 if [[ ${#BLASTN_DIR} -ge 5 ]] ; then
66 echo "On server, using BLASTN_DIR env: ${BLASTN_DIR}"
67 else
68 BLASTN_DIR="/home/galaxy/Downloads/ncbi-blast-2.4.0+/bin"
69 echo "Dev Galaxy set BLASTN_DIR to: ${BLASTN_DIR}"
70 fi
71
72 echo "---------------- class identification ----------------"
73 echo "---------------- class identification ----------------<br />" >> $log
74
75 python $dir/gene_identification.py --input $PWD/summary.txt --output $outdir/identified_genes.txt
76
77 echo "---------------- merge_and_filter.r ----------------"
78 echo "---------------- merge_and_filter.r ----------------<br />" >> $log
79
80 Rscript $dir/merge_and_filter.r $PWD/summary.txt $PWD/sequences.txt $PWD/mutationanalysis.txt $PWD/mutationstats.txt $PWD/hotspots.txt "$PWD/gapped_aa.txt" $outdir/identified_genes.txt $outdir/merged.txt $outdir/before_unique_filter.txt $outdir/unmatched.txt $method $functionality $unique ${filter_unique} ${filter_unique_count} ${class_filter} ${empty_region_filter} 2>&1
81
82 if [[ "${naive_output}" == "yes" ]] || [[ "$fast" == "no" ]] ; then
83
84 echo "---------------- creating new IMGT zips ----------------"
85 echo "---------------- creating new IMGT zips ----------------<br />" >> $log
86
87 mkdir $outdir/new_IMGT
88
89 cp $PWD/summary.txt "$outdir/new_IMGT/1_Summary.txt"
90 cp $PWD/gapped_nt.txt "$outdir/new_IMGT/2_IMGT-gapped-nt-sequences.txt"
91 cp $PWD/sequences.txt "$outdir/new_IMGT/3_Nt-sequences.txt"
92 cp $PWD/gapped_aa.txt "$outdir/new_IMGT/4_IMGT-gapped-AA-sequences.txt"
93 cp $PWD/aa.txt "$outdir/new_IMGT/5_AA-sequences.txt"
94 cp $PWD/junction.txt "$outdir/new_IMGT/6_Junction.txt"
95 cp $PWD/mutationanalysis.txt "$outdir/new_IMGT/7_V-REGION-mutation-and-AA-change-table.txt"
96 cp $PWD/mutationstats.txt "$outdir/new_IMGT/8_V-REGION-nt-mutation-statistics.txt"
97 cp $PWD/aa_change_stats.txt "$outdir/new_IMGT/9_V-REGION-AA-change-statistics.txt"
98 cp $PWD/hotspots.txt "$outdir/new_IMGT/10_V-REGION-mutation-hotspots.txt"
99
100 mkdir $outdir/new_IMGT_IGA
101 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGA
102
103 mkdir $outdir/new_IMGT_IGA1
104 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGA1
105
106 mkdir $outdir/new_IMGT_IGA2
107 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGA2
108
109 mkdir $outdir/new_IMGT_IGG
110 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGG
111
112 mkdir $outdir/new_IMGT_IGG1
113 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGG1
114
115 mkdir $outdir/new_IMGT_IGG2
116 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGG2
117
118 mkdir $outdir/new_IMGT_IGG3
119 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGG3
120
121 mkdir $outdir/new_IMGT_IGG4
122 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGG4
123
124 mkdir $outdir/new_IMGT_IGM
125 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGM
126
127 mkdir $outdir/new_IMGT_IGE
128 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGE
129
130 Rscript $dir/new_imgt.r $outdir/new_IMGT/ $outdir/merged.txt "-" 2>&1
131
132 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGA/ $outdir/merged.txt "IGA" 2>&1
133 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGA1/ $outdir/merged.txt "IGA1" 2>&1
134 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGA2/ $outdir/merged.txt "IGA2" 2>&1
135
136 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGG/ $outdir/merged.txt "IGG" 2>&1
137 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGG1/ $outdir/merged.txt "IGG1" 2>&1
138 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGG2/ $outdir/merged.txt "IGG2" 2>&1
139 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGG3/ $outdir/merged.txt "IGG3" 2>&1
140 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGG4/ $outdir/merged.txt "IGG4" 2>&1
141
142 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGM/ $outdir/merged.txt "IGM" 2>&1
143
144 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGE/ $outdir/merged.txt "IGE" 2>&1
145
146
147 tmp="$PWD"
148 cd $outdir/new_IMGT/ #tar weirdness...
149 tar -cJf ../new_IMGT.txz *
150
151 cd $outdir/new_IMGT_IGA/
152 tar -cJf ../new_IMGT_IGA.txz *
153
154 cd $outdir/new_IMGT_IGA1/
155 tar -cJf ../new_IMGT_IGA1.txz *
156
157 cd $outdir/new_IMGT_IGA2/
158 tar -cJf ../new_IMGT_IGA2.txz *
159
160 cd $outdir/new_IMGT_IGG/
161 tar -cJf ../new_IMGT_IGG.txz *
162
163 cd $outdir/new_IMGT_IGG1/
164 tar -cJf ../new_IMGT_IGG1.txz *
165
166 cd $outdir/new_IMGT_IGG2/
167 tar -cJf ../new_IMGT_IGG2.txz *
168
169 cd $outdir/new_IMGT_IGG3/
170 tar -cJf ../new_IMGT_IGG3.txz *
171
172 cd $outdir/new_IMGT_IGG4/
173 tar -cJf ../new_IMGT_IGG4.txz *
174
175 cd $outdir/new_IMGT_IGM/
176 tar -cJf ../new_IMGT_IGM.txz *
177
178 cd $outdir/new_IMGT_IGE/
179 tar -cJf ../new_IMGT_IGE.txz *
180
181 cd $tmp
182 fi
183
184 echo "---------------- shm_csr.r ----------------"
185 echo "---------------- shm_csr.r ----------------<br />" >> $log
186
187 classes="IGA,IGA1,IGA2,IGG,IGG1,IGG2,IGG3,IGG4,IGM,IGE,unmatched"
188 echo "R mutation analysis"
189 Rscript $dir/shm_csr.r $outdir/merged.txt $classes $outdir ${empty_region_filter} 2>&1
190
191 echo "---------------- plot_pdfs.r ----------------"
192 echo "---------------- plot_pdfs.r ----------------<br />" >> $log
193
194 echo "Rscript $dir/shm_csr.r $outdir/pdfplots.RData $outdir 2>&1"
195
196 Rscript $dir/plot_pdf.r "$outdir/pdfplots.RData" "$outdir" 2>&1
197
198 echo "---------------- shm_csr.py ----------------"
199 echo "---------------- shm_csr.py ----------------<br />" >> $log
200
201 python $dir/shm_csr.py --input $outdir/merged.txt --genes $classes --empty_region_filter "${empty_region_filter}" --output $outdir/hotspot_analysis.txt
202
203 echo "---------------- aa_histogram.r ----------------"
204 echo "---------------- aa_histogram.r ----------------<br />" >> $log
205
206 Rscript $dir/aa_histogram.r $outdir/aa_id_mutations.txt $outdir/absent_aa_id.txt "IGA,IGG,IGM,IGE" $outdir/ 2>&1
207 if [ -e "$outdir/aa_histogram_.png" ]; then
208 mv $outdir/aa_histogram_.png $outdir/aa_histogram.png
209 mv $outdir/aa_histogram_.pdf $outdir/aa_histogram.pdf
210 mv $outdir/aa_histogram_.txt $outdir/aa_histogram.txt
211 mv $outdir/aa_histogram_absent_.txt $outdir/aa_histogram_absent.txt
212 mv $outdir/aa_histogram_count_.txt $outdir/aa_histogram_count.txt
213 mv $outdir/aa_histogram_sum_.txt $outdir/aa_histogram_sum.txt
214 fi
215
216 genes=(IGA IGA1 IGA2 IGG IGG1 IGG2 IGG3 IGG4 IGM IGE)
217
218 funcs=(sum mean median)
219 funcs=(sum)
220
221 echo "---------------- sequence_overview.r ----------------"
222 echo "---------------- sequence_overview.r ----------------<br />" >> $log
223
224 mkdir $outdir/sequence_overview
225
226 Rscript $dir/sequence_overview.r $outdir/before_unique_filter.txt $outdir/merged.txt $outdir/sequence_overview $classes $outdir/hotspot_analysis_sum.txt ${empty_region_filter} 2>&1
227
228 echo "<table border='1'>" > $outdir/base_overview.html
229
230 while IFS=$'\t' read ID class seq A C G T
231 do
232 echo "<tr><td>$ID</td><td>$seq</td><td>$class</td><td>$A</td><td>$C</td><td>$G</td><td>$T</td></tr>" >> $outdir/base_overview.html
233 done < $outdir/sequence_overview/ntoverview.txt
234
235 echo "<html><center><h1>$title</h1></center>" > $output
236 echo "<meta name='viewport' content='width=device-width, initial-scale=1'>" >> $output
237 echo "<script type='text/javascript' src='jquery-1.11.0.min.js'></script>" >> $output
238 echo "<script type='text/javascript' src='tabber.js'></script>" >> $output
239 echo "<script type='text/javascript' src='script.js'></script>" >> $output
240 echo "<link rel='stylesheet' type='text/css' href='style.css'>" >> $output
241 echo "<link rel='stylesheet' type='text/css' href='pure-min.css'>" >> $output
242
243 matched_count="`cat $outdir/merged.txt | grep -v 'unmatched' | tail -n +2 | wc -l`"
244 unmatched_count="`cat $outdir/unmatched.txt | tail -n +2 | wc -l`"
245 total_count=$((matched_count + unmatched_count))
246 perc_count=$((unmatched_count / total_count * 100))
247 perc_count=`bc -l <<< "scale=2; ${unmatched_count} / ${total_count} * 100"`
248 perc_count=`bc -l <<< "scale=2; (${unmatched_count} / ${total_count} * 100 ) / 1"`
249
250 echo "<center><h2>Total: ${total_count}</h2></center>" >> $output
251 echo "<center><h2>Matched: ${matched_count} Unmatched: ${unmatched_count}</h2></center>" >> $output
252 echo "<center><h2>Percentage unmatched: ${perc_count}</h2></center>" >> $output
253
254 echo "---------------- main tables ----------------"
255 echo "---------------- main tables ----------------<br />" >> $log
256
257 echo "<div class='tabber'>" >> $output
258 echo "<div class='tabbertab' title='SHM Overview' style='width: 3000px;'>" >> $output
259
260 for func in ${funcs[@]}
261 do
262
263 echo "---------------- $func table ----------------"
264 echo "---------------- $func table ----------------<br />" >> $log
265
266 cat $outdir/mutations_${func}.txt $outdir/shm_overview_tandem_row.txt $outdir/hotspot_analysis_${func}.txt > $outdir/data_${func}.txt
267
268 echo "---------------- pattern_plots.r ----------------"
269 echo "---------------- pattern_plots.r ----------------<br />" >> $log
270
271 Rscript $dir/pattern_plots.r $outdir/data_${func}.txt $outdir/aid_motives $outdir/relative_mutations $outdir/absolute_mutations $outdir/shm_overview.txt 2>&1
272
273 echo "<table class='pure-table pure-table-striped'>" >> $output
274 echo "<thead><tr><th>info</th>" >> $output
275
276 if [ "${class_filter}" != "101_101" ] ; then
277
278 for gene in ${genes[@]}
279 do
280 tmp=`cat $outdir/${gene}_${func}_n.txt`
281 echo "<th><a href='matched_${gene}_${func}.txt'>${gene} (N = $tmp)</a></th>" >> $output
282 done
283
284 tmp=`cat $outdir/all_${func}_n.txt`
285 echo "<th><a href='matched_all_${func}.txt'>all (N = $tmp)</a></th>" >> $output
286 tmp=`cat $outdir/unmatched_${func}_n.txt`
287 echo "<th><a href='unmatched.txt'>unmatched (N = ${unmatched_count})</a></th><tr></thead>" >> $output
288
289 while IFS=, read name cax cay caz ca1x ca1y ca1z ca2x ca2y ca2z cgx cgy cgz cg1x cg1y cg1z cg2x cg2y cg2z cg3x cg3y cg3z cg4x cg4y cg4z cmx cmy cmz cex cey cez unx uny unz allx ally allz
290 do
291 if [ "$name" == "FR R/S (ratio)" ] || [ "$name" == "CDR R/S (ratio)" ] || [ "$name" == "Tandems/Expected (ratio)" ] ; then #meh
292 echo "<tr><td>$name</td><td>${cax}/${cay} (${caz})</td><td>${ca1x}/${ca1y} (${ca1z})</td><td>${ca2x}/${ca2y} (${ca2z})</td><td>${cgx}/${cgy} (${cgz})</td><td>${cg1x}/${cg1y} (${cg1z})</td><td>${cg2x}/${cg2y} (${cg2z})</td><td>${cg3x}/${cg3y} (${cg3z})</td><td>${cg4x}/${cg4y} (${cg4z})</td><td>${cmx}/${cmy} (${cmz})</td><td>${cex}/${cey} (${cez})</td><td>${allx}/${ally} (${allz})</td><td>${unx}/${uny} (${unz})</td></tr>" >> $output
293 elif [ "$name" == "Median of Number of Mutations (%)" ] ; then
294 echo "<tr><td>$name</td><td>${caz}%</td><td>${ca1z}%</td><td>${ca2z}%</td><td>${cgz}%</td><td>${cg1z}%</td><td>${cg2z}%</td><td>${cg3z}%</td><td>${cg4z}%</td><td>${cmz}%</td><td>${cez}%</td><td>${allz}%</td><td>${unz}%</td></tr>" >> $output
295 else
296 echo "<tr><td>$name</td><td>${cax}/${cay} (${caz}%)</td><td>${ca1x}/${ca1y} (${ca1z}%)</td><td>${ca2x}/${ca2y} (${ca2z}%)</td><td>${cgx}/${cgy} (${cgz}%)</td><td>${cg1x}/${cg1y} (${cg1z}%)</td><td>${cg2x}/${cg2y} (${cg2z}%)</td><td>${cg3x}/${cg3y} (${cg3z}%)</td><td>${cg4x}/${cg4y} (${cg4z}%)</td><td>${cmx}/${cmy} (${cmz}%)</td><td>${cex}/${cey} (${cez}%)</td><td>${allx}/${ally} (${allz}%)</td><td>${unx}/${uny} (${unz}%)</td></tr>" >> $output
297 fi
298 done < $outdir/data_${func}.txt
299
300 else
301 tmp=`cat $outdir/all_${func}_n.txt`
302 echo "<th><a href='matched_all_${func}.txt'>all (N = $tmp)</a></th>" >> $output
303
304 while IFS=, read name cax cay caz ca1x ca1y ca1z ca2x ca2y ca2z cgx cgy cgz cg1x cg1y cg1z cg2x cg2y cg2z cg3x cg3y cg3z cg4x cg4y cg4z cmx cmy cmz cex cey cez unx uny unz allx ally allz
305 do
306 if [ "$name" == "FR R/S (ratio)" ] || [ "$name" == "CDR R/S (ratio)" ] ; then #meh
307 echo "<tr><td>$name</td><td>${allx}/${ally}</td></tr>" >> $output
308 elif [ "$name" == "Median of Number of Mutations (%)" ] ; then
309 echo "<tr><td>$name</td><td>${allz}%</td></tr>" >> $output
310 else
311 echo "<tr><td>$name</td><td>${allx}/${ally} (${allz}%)</td></tr>" >> $output
312 fi
313 done < $outdir/data_${func}.txt
314
315 fi
316 echo "</table>" >> $output
317 #echo "<a href='data_${func}.txt'>Download data</a>" >> $output
318 done
319
320 echo "<a href='aid_motives.pdf'><img src='aid_motives.png' /></a><br />" >> $output
321 echo "<a href='relative_mutations.pdf'><img src='relative_mutations.png' /></a><br />" >> $output
322 echo "<a href='absolute_mutations.pdf'><img src='absolute_mutations.png' /></a><br />" >> $output
323 echo "<br />" >> $output
324 cat $dir/shm_overview.htm >> $output
325 echo "</div>" >> $output #SHM overview tab end
326
327 echo "---------------- images ----------------"
328 echo "---------------- images ----------------<br />" >> $log
329
330 echo "<div class='tabbertab' title='SHM Frequency' style='width: 3000px;'></a>" >> $output
331
332 if [ -a $outdir/scatter.png ]
333 then
334 echo "<a href='scatter.pdf'><img src='scatter.png'/><br />" >> $output
335 fi
336 if [ -a $outdir/frequency_ranges.png ]
337 then
338 echo "<a href='frequency_ranges.pdf'><img src='frequency_ranges.png'/></a><br />" >> $output
339 fi
340
341 echo "<br />" >> $output
342 cat $dir/shm_frequency.htm >> $output
343
344 echo "</div>" >> $output #SHM frequency tab end
345
346 echo "<div class='tabbertab' title='Transition tables' style='width: 3000px;'>" >> $output
347
348 echo "<table border='0'>" >> $output
349
350 for gene in ${genes[@]}
351 do
352 echo "<tr>" >> $output
353 echo "<td><h1>${gene}</h1></td>" >> $output
354
355 if [ -e $outdir/transitions_heatmap_${gene}.png ]
356 then
357 echo "<td><a href='transitions_heatmap_${gene}.pdf'><img src='transitions_heatmap_${gene}.png' /></a></td>" >> $output
358 else
359 echo "<td></td>" >> $output
360 fi
361
362 if [ -e $outdir/transitions_stacked_${gene}.png ]
363 then
364 echo "<td><a href='transitions_stacked_${gene}.pdf'><img src='transitions_stacked_${gene}.png' /></a></td>" >> $output
365 else
366 echo "<td></td>" >> $output
367 fi
368
369 echo "<td><table style='border-left-width: 1;' class='pure-table transition-table pure-table-bordered'>" >> $output
370 echo "<tr><td></td><td colspan="5"><center>To</center></td></tr>" >> $output
371 first="true"
372 while IFS=, read from a c g t
373 do
374 if [ "$first" == "true" ] ; then
375 echo "<tr><td rowspan='5'>From</td><td>$from</td><td>$a</td><td>$c</td><td>$g</td><td>$t</td></tr>" >> $output
376 first="false"
377 else
378 echo "<tr><td>$from</td><td>$a</td><td>$c</td><td>$g</td><td>$t</td></tr>" >> $output
379 fi
380 done < $outdir/transitions_${gene}_sum.txt
381 echo "</table></td>" >> $output
382
383 echo "</tr>" >> $output
384 done
385
386 echo "<tr>" >> $output
387 echo "<td><h1>All</h1></td>" >> $output
388 echo "<td><a href='transitions_heatmap_all.pdf'><img src='transitions_heatmap_all.png' /></a></td>" >> $output
389 echo "<td><a href='transitions_stacked_all.pdf'><img src='transitions_stacked_all.png' /></a></td>" >> $output
390 echo "<td><table style='border-left-width: 1;' class='pure-table transition-table pure-table-bordered'>" >> $output
391 echo "<tr><td></td><td colspan="5"><center>To</center></td></tr>" >> $output
392 first="true"
393 while IFS=, read from a c g t
394 do
395 if [ "$first" == "true" ] ; then
396 echo "<tr><td rowspan='5'>From</td><td>$from</td><td>$a</td><td>$c</td><td>$g</td><td>$t</td></tr>" >> $output
397 first="false"
398 else
399 echo "<tr><td>$from</td><td>$a</td><td>$c</td><td>$g</td><td>$t</td></tr>" >> $output
400 fi
401 done < $outdir/transitions_all_sum.txt
402 echo "</table></td>" >> $output
403
404 echo "</tr>" >> $output
405
406 echo "</table>" >> $output
407
408 echo "<br />" >> $output
409 cat $dir/shm_transition.htm >> $output
410
411 echo "</div>" >> $output #transition tables tab end
412
413 echo "<div class='tabbertab' title='Antigen Selection'>" >> $output
414
415 if [ -e $outdir/aa_histogram.png ]
416 then
417 echo "<a href='aa_histogram.pdf'><img src='aa_histogram.png'/></a><br />" >> $output
418 fi
419
420 if [ -e $outdir/aa_histogram_IGA.png ]
421 then
422 echo "<a href='aa_histogram_IGA.pdf'><img src='aa_histogram_IGA.png'/></a><br />" >> $output
423 fi
424
425 if [ -e $outdir/aa_histogram_IGG.png ]
426 then
427 echo "<a href='aa_histogram_IGG.pdf'><img src='aa_histogram_IGG.png'/></a><br />" >> $output
428 fi
429
430 if [ -e $outdir/aa_histogram_IGM.png ]
431 then
432 echo "<a href='aa_histogram_IGM.pdf'><img src='aa_histogram_IGM.png'/></a><br />" >> $output
433 fi
434
435 if [ -e $outdir/aa_histogram_IGE.png ]
436 then
437 echo "<a href='aa_histogram_IGE.pdf'><img src='aa_histogram_IGE.png'/></a><br />" >> $output
438 fi
439
440
441
442 if [[ "$fast" == "no" ]] ; then
443
444
445
446 echo "---------------- baseline ----------------"
447 echo "---------------- baseline ----------------<br />" >> $log
448 tmp="$PWD"
449
450 mkdir $outdir/baseline
451
452 echo "<center><h1>BASELINe</h1>" >> $output
453 header_substring="Based on CDR1, FR2, CDR2, FR3 (27:27:38:55:65:104:-)"
454
455 baseline_boundaries="27:27:38:55:65:104:-"
456
457 if [[ "${empty_region_filter}" == "leader" ]] ; then
458 baseline_boundaries="1:26:38:55:65:104:-"
459 header_substring="Based on FR1, CDR1, FR2, CDR2, FR3 (1:26:38:55:65:104,-)"
460 fi
461
462 echo "<p>${header_substring}</p></center>" >> $output
463
464 mkdir $outdir/baseline/IGA_IGG_IGM
465 if [[ $(wc -l < $outdir/new_IMGT/1_Summary.txt) -gt "1" ]]; then
466 cd $outdir/baseline/IGA_IGG_IGM
467 bash $dir/baseline/wrapper.sh 1 1 1 1 0 0 "${baseline_boundaries}" $outdir/new_IMGT.txz "IGA_IGG_IGM_IGE" "$dir/baseline/IMGTVHreferencedataset20161215.fa" "$outdir/baseline.pdf" "Sequence.ID" "$outdir/baseline.txt"
468 else
469 echo "No sequences" > "$outdir/baseline.txt"
470 fi
471
472 mkdir $outdir/baseline/IGA
473 if [[ $(wc -l < $outdir/new_IMGT_IGA/1_Summary.txt) -gt "1" ]]; then
474 cd $outdir/baseline/IGA
475 bash $dir/baseline/wrapper.sh 1 1 1 1 0 0 "${baseline_boundaries}" $outdir/new_IMGT_IGA.txz "IGA" "$dir/baseline/IMGTVHreferencedataset20161215.fa" "$outdir/baseline_IGA.pdf" "Sequence.ID" "$outdir/baseline_IGA.txt"
476 else
477 echo "No IGA sequences" > "$outdir/baseline_IGA.txt"
478 fi
479
480 mkdir $outdir/baseline/IGG
481 if [[ $(wc -l < $outdir/new_IMGT_IGG/1_Summary.txt) -gt "1" ]]; then
482 cd $outdir/baseline/IGG
483 bash $dir/baseline/wrapper.sh 1 1 1 1 0 0 "${baseline_boundaries}" $outdir/new_IMGT_IGG.txz "IGG" "$dir/baseline/IMGTVHreferencedataset20161215.fa" "$outdir/baseline_IGG.pdf" "Sequence.ID" "$outdir/baseline_IGG.txt"
484 else
485 echo "No IGG sequences" > "$outdir/baseline_IGG.txt"
486 fi
487
488 mkdir $outdir/baseline/IGM
489 if [[ $(wc -l < $outdir/new_IMGT_IGM/1_Summary.txt) -gt "1" ]]; then
490 cd $outdir/baseline/IGM
491 bash $dir/baseline/wrapper.sh 1 1 1 1 0 0 "${baseline_boundaries}" $outdir/new_IMGT_IGM.txz "IGM" "$dir/baseline/IMGTVHreferencedataset20161215.fa" "$outdir/baseline_IGM.pdf" "Sequence.ID" "$outdir/baseline_IGM.txt"
492 else
493 echo "No IGM sequences" > "$outdir/baseline_IGM.txt"
494 fi
495
496 mkdir $outdir/baseline/IGE
497 if [[ $(wc -l < $outdir/new_IMGT_IGE/1_Summary.txt) -gt "1" ]]; then
498 cd $outdir/baseline/IGE
499 bash $dir/baseline/wrapper.sh 1 1 1 1 0 0 "${baseline_boundaries}" $outdir/new_IMGT_IGE.txz "IGE" "$dir/baseline/IMGTVHreferencedataset20161215.fa" "$outdir/baseline_IGE.pdf" "Sequence.ID" "$outdir/baseline_IGE.txt"
500 else
501 echo "No IGE sequences" > "$outdir/baseline_IGE.txt"
502 fi
503
504 cd $tmp
505
506 echo "Cleaning up *.RData files"
507 find $outdir/baseline -name "*.RData" -type f -delete
508
509 if [ -e $outdir/baseline.pdf ]
510 then
511 echo "<embed src='baseline.pdf' width='700px' height='1000px'>" >> $output
512 fi
513
514 if [ -e $outdir/baseline_IGA.pdf ]
515 then
516 echo "<embed src='baseline_IGA.pdf' width='700px' height='1000px'>" >> $output
517 fi
518
519 if [ -e $outdir/baseline_IGG.pdf ]
520 then
521 echo "<embed src='baseline_IGG.pdf' width='700px' height='1000px'>" >> $output
522 fi
523
524 if [ -e $outdir/baseline_IGM.pdf ]
525 then
526 echo "<embed src='baseline_IGM.pdf' width='700px' height='1000px'>" >> $output
527 fi
528
529 if [ -e $outdir/baseline_IGE.pdf ]
530 then
531 echo "<embed src='baseline_IGE.pdf' width='700px' height='1000px'>" >> $output
532 fi
533 fi
534
535 echo "<br />" >> $output
536 cat $dir/shm_selection.htm >> $output
537
538 echo "</div>" >> $output #antigen selection tab end
539
540 echo "<div class='tabbertab' title='CSR'>" >> $output #CSR tab
541
542 if [ -e $outdir/IGA.png ]
543 then
544 echo "<a href='IGA.pdf'><img src='IGA.png'/></a><br />" >> $output
545 fi
546 if [ -e $outdir/IGG.png ]
547 then
548 echo "<a href='IGG.pdf'><img src='IGG.png'/></a><br />" >> $output
549 fi
550
551 echo "<br />" >> $output
552 cat $dir/shm_csr.htm >> $output
553
554 echo "</div>" >> $output #CSR tab end
555
556 if [[ "$fast" == "no" ]] ; then
557
558 echo "---------------- change-o MakeDB ----------------"
559
560 mkdir $outdir/change_o
561
562 tmp="$PWD"
563
564 cd $outdir/change_o
565
566 bash $dir/change_o/makedb.sh $outdir/new_IMGT.txz false false false $outdir/change_o/change-o-db.txt
567 bash $dir/change_o/define_clones.sh bygroup $outdir/change_o/change-o-db.txt gene first ham none min complete 3.0 $outdir/change_o/change-o-db-defined_clones.txt $outdir/change_o/change-o-defined_clones-summary.txt
568 Rscript $dir/change_o/select_first_in_clone.r $outdir/change_o/change-o-db-defined_clones.txt $outdir/change_o/change-o-db-defined_first_clones.txt 2>&1
569
570 mkdir $outdir/new_IMGT_changeo
571 cp $outdir/new_IMGT/* $outdir/new_IMGT_changeo
572
573 Rscript $dir/new_imgt.r $outdir/new_IMGT_changeo $outdir/change_o/change-o-db-defined_first_clones.txt "-" 2>&1
574
575 cd $outdir/new_IMGT_changeo
576 tar -cJf ../new_IMGT_first_seq_of_clone.txz *
577 cd $outdir/change_o
578
579 rm -rf $outdir/new_IMGT_changeo
580
581 Rscript $dir/merge.r $outdir/change_o/change-o-db-defined_clones.txt $outdir/merged.txt "all" "Sequence.ID,best_match" "SEQUENCE_ID" "Sequence.ID" $outdir/change_o/change-o-db-defined_clones.txt 2>&1
582 echo "Rscript $dir/merge.r $outdir/change_o/change-o-db-defined_clones.txt $outdir/$outdir/merged.txt 'all' 'Sequence.ID,best_match' 'Sequence.ID' 'Sequence.ID' '\t' $outdir/change_o/change-o-db-defined_clones.txt 2>&1"
583
584 if [[ $(wc -l < $outdir/new_IMGT_IGA/1_Summary.txt) -gt "1" ]]; then
585 bash $dir/change_o/makedb.sh $outdir/new_IMGT_IGA.txz false false false $outdir/change_o/change-o-db-IGA.txt
586 bash $dir/change_o/define_clones.sh bygroup $outdir/change_o/change-o-db-IGA.txt gene first ham none min complete 3.0 $outdir/change_o/change-o-db-defined_clones-IGA.txt $outdir/change_o/change-o-defined_clones-summary-IGA.txt
587 Rscript $dir/change_o/select_first_in_clone.r $outdir/change_o/change-o-db-defined_clones-IGA.txt $outdir/change_o/change-o-db-defined_first_clones-IGA.txt 2>&1
588
589 mkdir $outdir/new_IMGT_IGA_changeo
590 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGA_changeo
591
592 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGA_changeo $outdir/change_o/change-o-db-defined_first_clones-IGA.txt "-" 2>&1
593
594 cd $outdir/new_IMGT_IGA_changeo
595 tar -cJf ../new_IMGT_IGA_first_seq_of_clone.txz *
596
597 rm -rf $outdir/new_IMGT_IGA_changeo
598
599 cd $outdir/change_o
600 else
601 echo "No IGA sequences" > "$outdir/change_o/change-o-db-defined_clones-IGA.txt"
602 echo "No IGA sequences" > "$outdir/change_o/change-o-defined_clones-summary-IGA.txt"
603 fi
604
605 if [[ $(wc -l < $outdir/new_IMGT_IGG/1_Summary.txt) -gt "1" ]]; then
606 bash $dir/change_o/makedb.sh $outdir/new_IMGT_IGG.txz false false false $outdir/change_o/change-o-db-IGG.txt
607 bash $dir/change_o/define_clones.sh bygroup $outdir/change_o/change-o-db-IGG.txt gene first ham none min complete 3.0 $outdir/change_o/change-o-db-defined_clones-IGG.txt $outdir/change_o/change-o-defined_clones-summary-IGG.txt
608 Rscript $dir/change_o/select_first_in_clone.r $outdir/change_o/change-o-db-defined_clones-IGG.txt $outdir/change_o/change-o-db-defined_first_clones-IGG.txt 2>&1
609
610 mkdir $outdir/new_IMGT_IGG_changeo
611 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGG_changeo
612
613 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGG_changeo $outdir/change_o/change-o-db-defined_first_clones-IGG.txt "-" 2>&1
614
615 cd $outdir/new_IMGT_IGG_changeo
616 tar -cJf ../new_IMGT_IGG_first_seq_of_clone.txz *
617 rm -rf $outdir/new_IMGT_IGG_changeo
618
619 cd $outdir/change_o
620 else
621 echo "No IGG sequences" > "$outdir/change_o/change-o-db-defined_clones-IGG.txt"
622 echo "No IGG sequences" > "$outdir/change_o/change-o-defined_clones-summary-IGG.txt"
623 fi
624
625 if [[ $(wc -l < $outdir/new_IMGT_IGM/1_Summary.txt) -gt "1" ]]; then
626 bash $dir/change_o/makedb.sh $outdir/new_IMGT_IGM.txz false false false $outdir/change_o/change-o-db-IGM.txt
627 bash $dir/change_o/define_clones.sh bygroup $outdir/change_o/change-o-db-IGM.txt gene first ham none min complete 3.0 $outdir/change_o/change-o-db-defined_clones-IGM.txt $outdir/change_o/change-o-defined_clones-summary-IGM.txt
628 Rscript $dir/change_o/select_first_in_clone.r $outdir/change_o/change-o-db-defined_clones-IGM.txt $outdir/change_o/change-o-db-defined_first_clones-IGM.txt 2>&1
629
630 mkdir $outdir/new_IMGT_IGM_changeo
631 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGM_changeo
632
633 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGM_changeo $outdir/change_o/change-o-db-defined_first_clones-IGM.txt "-" 2>&1
634
635 cd $outdir/new_IMGT_IGM_changeo
636 tar -cJf ../new_IMGT_IGM_first_seq_of_clone.txz *
637
638 rm -rf $outdir/new_IMGT_IGM_changeo
639
640 cd $outdir/change_o
641 else
642 echo "No IGM sequences" > "$outdir/change_o/change-o-db-defined_clones-IGM.txt"
643 echo "No IGM sequences" > "$outdir/change_o/change-o-defined_clones-summary-IGM.txt"
644 fi
645
646 if [[ $(wc -l < $outdir/new_IMGT_IGE/1_Summary.txt) -gt "1" ]]; then
647 bash $dir/change_o/makedb.sh $outdir/new_IMGT_IGE.txz false false false $outdir/change_o/change-o-db-IGE.txt
648 bash $dir/change_o/define_clones.sh bygroup $outdir/change_o/change-o-db-IGE.txt gene first ham none min complete 3.0 $outdir/change_o/change-o-db-defined_clones-IGE.txt $outdir/change_o/change-o-defined_clones-summary-IGE.txt
649 Rscript $dir/change_o/select_first_in_clone.r $outdir/change_o/change-o-db-defined_clones-IGE.txt $outdir/change_o/change-o-db-defined_first_clones-IGE.txt 2>&1
650
651 mkdir $outdir/new_IMGT_IGE_changeo
652 cp $outdir/new_IMGT/* $outdir/new_IMGT_IGE_changeo
653
654 Rscript $dir/new_imgt.r $outdir/new_IMGT_IGE_changeo $outdir/change_o/change-o-db-defined_first_clones-IGE.txt "-" 2>&1
655
656 cd $outdir/new_IMGT_IGE_changeo
657 tar -cJf ../new_IMGT_IGE_first_seq_of_clone.txz *
658
659 rm -rf $outdir/new_IMGT_IGE_changeo
660
661 cd $outdir/change_o
662 else
663 echo "No IGE sequences" > "$outdir/change_o/change-o-db-defined_clones-IGE.txt"
664 echo "No IGE sequences" > "$outdir/change_o/change-o-defined_clones-summary-IGE.txt"
665 fi
666
667 cd "$tmp"
668
669 rm -rf $outdir/new_IMGT
670 rm -rf $outdir/new_IMGT_IGA/
671 rm -rf $outdir/new_IMGT_IGA1/
672 rm -rf $outdir/new_IMGT_IGA2/
673 rm -rf $outdir/new_IMGT_IGG/
674 rm -rf $outdir/new_IMGT_IGG1/
675 rm -rf $outdir/new_IMGT_IGG2/
676 rm -rf $outdir/new_IMGT_IGG3/
677 rm -rf $outdir/new_IMGT_IGG4/
678 rm -rf $outdir/new_IMGT_IGM/
679 rm -rf $outdir/new_IMGT_IGE/
680
681 echo "<div class='tabbertab' title='Clonal Relation' style='width: 7000px;'>" >> $output #clonality tab
682
683 function clonality_table {
684 local infile=$1
685 local outfile=$2
686
687 echo "<table class='pure-table pure-table-striped'>" >> $outfile
688 echo "<thead><tr><th>Clone size</th><th>Nr of clones</th><th>Nr of sequences</th></tr></thead>" >> $outfile
689
690 first='true'
691
692 while read size clones seqs
693 do
694 if [[ "$first" == "true" ]]; then
695 first="false"
696 continue
697 fi
698 echo "<tr><td>$size</td><td>$clones</td><td>$seqs</td></tr>" >> $outfile
699 done < $infile
700
701 echo "</table>" >> $outfile
702 }
703 echo "<div class='tabber'>" >> $output
704
705 echo "<div class='tabbertab' title='All'>" >> $output
706 clonality_table $outdir/change_o/change-o-defined_clones-summary.txt $output
707 echo "</div>" >> $output
708
709 echo "<div class='tabbertab' title='IGA'>" >> $output
710 clonality_table $outdir/change_o/change-o-defined_clones-summary-IGA.txt $output
711 echo "</div>" >> $output
712
713 echo "<div class='tabbertab' title='IGG'>" >> $output
714 clonality_table $outdir/change_o/change-o-defined_clones-summary-IGG.txt $output
715 echo "</div>" >> $output
716
717 echo "<div class='tabbertab' title='IGM'>" >> $output
718 clonality_table $outdir/change_o/change-o-defined_clones-summary-IGM.txt $output
719 echo "</div>" >> $output
720
721 echo "<div class='tabbertab' title='IGE'>" >> $output
722 clonality_table $outdir/change_o/change-o-defined_clones-summary-IGM.txt $output
723 echo "</div>" >> $output
724
725 echo "<div class='tabbertab' title='Overlap' style='width: 7000px;'>" >> $output
726 cat "$outdir/sequence_overview/index.html" | sed -e 's:</td>:</td>\n:g' | sed "s:href='\(.*\).html:href='sequence_overview/\1.html:g" >> $output # rewrite href to 'sequence_overview/..."
727 echo "</div>" >> $output
728
729 echo "</div>" >> $output #clonality tabber end
730
731 echo "<br />" >> $output
732 cat $dir/shm_clonality.htm >> $output
733
734 echo "</div>" >> $output #clonality tab end
735
736 fi
737
738 echo "<div class='tabbertab' title='Downloads'>" >> $output
739
740 echo "<table class='pure-table pure-table-striped'>" >> $output
741 echo "<thead><tr><th>info</th><th>link</th></tr></thead>" >> $output
742 echo "<tr><td>The complete dataset</td><td><a href='merged.txt' download='merged.txt' >Download</a></td></tr>" >> $output
743 echo "<tr><td>The filtered dataset</td><td><a href='filtered.txt' download='filtered.txt' >Download</a></td></tr>" >> $output
744 echo "<tr><td>The alignment info on the unmatched sequences</td><td><a href='unmatched.txt' download='unmatched.txt' >Download</a></td></tr>" >> $output
745
746 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>SHM Overview</td></tr>" >> $output
747 echo "<tr><td>The SHM Overview table as a dataset</td><td><a href='shm_overview.txt' download='shm_overview.txt' >Download</a></td></tr>" >> $output
748 echo "<tr><td>Motif data per sequence ID</td><td><a href='motif_per_seq.txt' download='motif_per_seq.txt' >Download</a></td></tr>" >> $output
749 echo "<tr><td>Mutation data per sequence ID</td><td><a href='mutation_by_id.txt' download='mutation_by_id.txt' >Download</a></td></tr>" >> $output
750 echo "<tr><td>Base count for every sequence</td><td><a href='base_overview.html'>View</a></td></tr>" >> $output
751 echo "<tr><td>The data used to generate the percentage of mutations in AID and pol eta motives plot</td><td><a href='aid_motives.txt' download='aid_motives.txt' >Download</a></td></tr>" >> $output
752 echo "<tr><td>The data used to generate the relative mutation patterns plot</td><td><a href='relative_mutations.txt' download='relative_mutations.txt' >Download</a></td></tr>" >> $output
753 echo "<tr><td>The data used to generate the absolute mutation patterns plot</td><td><a href='absolute_mutations.txt' download='absolute_mutations.txt' >Download</a></td></tr>" >> $output
754 echo "<tr><td>Data about tandem mutations by ID</td><td><a href='tandems_by_id.txt' download='tandems_by_id.txt' >Download</a></td></tr>" >> $output
755
756 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>SHM Frequency</td></tr>" >> $output
757 echo "<tr><td>The data generate the frequency scatter plot</td><td><a href='scatter.txt' download='scatter.txt' >Download</a></td></tr>" >> $output
758 echo "<tr><td>The data used to generate the frequency by class plot</td><td><a href='frequency_ranges_classes.txt' download='frequency_ranges_classes.txt' >Download</a></td></tr>" >> $output
759 echo "<tr><td>The data for frequency by subclass</td><td><a href='frequency_ranges_subclasses.txt' download='frequency_ranges_subclasses.txt' >Download</a></td></tr>" >> $output
760
761 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>Transition Tables</td></tr>" >> $output
762 echo "<tr><td>The data for the 'all' transition plot</td><td><a href='transitions_all_sum.txt' download='transitions_all_sum.txt' >Download</a></td></tr>" >> $output
763 echo "<tr><td>The data for the 'IGA' transition plot</td><td><a href='transitions_IGA_sum.txt' download='transitions_IGA_sum.txt' >Download</a></td></tr>" >> $output
764 echo "<tr><td>The data for the 'IGA1' transition plot</td><td><a href='transitions_IGA1_sum.txt' download='transitions_IGA1_sum.txt' >Download</a></td></tr>" >> $output
765 echo "<tr><td>The data for the 'IGA2' transition plot</td><td><a href='transitions_IGA2_sum.txt' download='transitions_IGA2_sum.txt' >Download</a></td></tr>" >> $output
766 echo "<tr><td>The data for the 'IGG' transition plot</td><td><a href='transitions_IGG_sum.txt' download='transitions_IGG_sum.txt' >Download</a></td></tr>" >> $output
767 echo "<tr><td>The data for the 'IGG1' transition plot</td><td><a href='transitions_IGG1_sum.txt' download='transitions_IGG1_sum.txt' >Download</a></td></tr>" >> $output
768 echo "<tr><td>The data for the 'IGG2' transition plot</td><td><a href='transitions_IGG2_sum.txt' download='transitions_IGG2_sum.txt' >Download</a></td></tr>" >> $output
769 echo "<tr><td>The data for the 'IGG3' transition plot</td><td><a href='transitions_IGG3_sum.txt' download='transitions_IGG3_sum.txt' >Download</a></td></tr>" >> $output
770 echo "<tr><td>The data for the 'IGG4' transition plot</td><td><a href='transitions_IGG4_sum.txt' download='transitions_IGG4_sum.txt' >Download</a></td></tr>" >> $output
771 echo "<tr><td>The data for the 'IGM' transition plot</td><td><a href='transitions_IGM_sum.txt' download='transitions_IGM_sum.txt' >Download</a></td></tr>" >> $output
772 echo "<tr><td>The data for the 'IGE' transition plot</td><td><a href='transitions_IGE_sum.txt' download='transitions_IGE_sum.txt' >Download</a></td></tr>" >> $output
773
774 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>Antigen Selection</td></tr>" >> $output
775 echo "<tr><td>AA mutation data per sequence ID</td><td><a href='aa_id_mutations.txt' download='aa_id_mutations.txt' >Download</a></td></tr>" >> $output
776 echo "<tr><td>Presence of AA per sequence ID</td><td><a href='absent_aa_id.txt' download='absent_aa_id.txt' >Download</a></td></tr>" >> $output
777
778 echo "<tr><td>The data used to generate the aa mutation frequency plot</td><td><a href='aa_histogram_sum.txt' download='aa_histogram_sum.txt' >Download</a></td></tr>" >> $output
779 echo "<tr><td>The data used to generate the aa mutation frequency plot for IGA</td><td><a href='aa_histogram_sum_IGA.txt' download='aa_histogram_sum_IGA.txt' >Download</a></td></tr>" >> $output
780 echo "<tr><td>The data used to generate the aa mutation frequency plot for IGG</td><td><a href='aa_histogram_sum_IGG.txt' download='aa_histogram_sum_IGG.txt' >Download</a></td></tr>" >> $output
781 echo "<tr><td>The data used to generate the aa mutation frequency plot for IGM</td><td><a href='aa_histogram_sum_IGM.txt' download='aa_histogram_sum_IGM.txt' >Download</a></td></tr>" >> $output
782 echo "<tr><td>The data used to generate the aa mutation frequency plot for IGE</td><td><a href='aa_histogram_sum_IGE.txt' download='aa_histogram_sum_IGE.txt' >Download</a></td></tr>" >> $output
783
784 echo "<tr><td>Baseline PDF (<a href='http://selection.med.yale.edu/baseline/'>http://selection.med.yale.edu/baseline/</a>)</td><td><a href='baseline.pdf' download='baseline.pdf' >Download</a></td></tr>" >> $output
785 echo "<tr><td>Baseline data</td><td><a href='baseline.txt' download='baseline.txt' >Download</a></td></tr>" >> $output
786 echo "<tr><td>Baseline IGA PDF</td><td><a href='baseline_IGA.pdf' download='baseline_IGA.pdf' >Download</a></td></tr>" >> $output
787 echo "<tr><td>Baseline IGA data</td><td><a href='baseline_IGA.txt' download='baseline_IGA.txt' >Download</a></td></tr>" >> $output
788 echo "<tr><td>Baseline IGG PDF</td><td><a href='baseline_IGG.pdf' download='baseline_IGG.pdf' >Download</a></td></tr>" >> $output
789 echo "<tr><td>Baseline IGG data</td><td><a href='baseline_IGG.txt' download='baseline_IGG.txt' >Download</a></td></tr>" >> $output
790 echo "<tr><td>Baseline IGM PDF</td><td><a href='baseline_IGM.pdf' download='baseline_IGM.pdf' >Download</a></td></tr>" >> $output
791 echo "<tr><td>Baseline IGM data</td><td><a href='baseline_IGM.txt' download='baseline_IGM.txt' >Download</a></td></tr>" >> $output
792 echo "<tr><td>Baseline IGE PDF</td><td><a href='baseline_IGE.pdf' download='baseline_IGE.pdf' >Download</a></td></tr>" >> $output
793 echo "<tr><td>Baseline IGE data</td><td><a href='baseline_IGE.txt' download='baseline_IGE.txt' >Download</a></td></tr>" >> $output
794
795 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>CSR</td></tr>" >> $output
796 echo "<tr><td>The data for the IGA subclass distribution plot</td><td><a href='IGA_pie.txt' download='IGA_pie.txt' >Download</a></td></tr>" >> $output
797 echo "<tr><td>The data for the IGG subclass distribution plot</td><td><a href='IGG_pie.txt' download='IGG_pie.txt' >Download</a></td></tr>" >> $output
798
799
800 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>Clonal Relation</td></tr>" >> $output
801 echo "<tr><td>Sequence overlap between subclasses</td><td><a href='sequence_overview/index.html'>View</a></td></tr>" >> $output
802 echo "<tr><td>The Change-O DB file with defined clones and subclass annotation</td><td><a href='change_o/change-o-db-defined_clones.txt' download='change_o/change-o-db-defined_clones.txt' >Download</a></td></tr>" >> $output
803 echo "<tr><td>The Change-O DB defined clones summary file</td><td><a href='change_o/change-o-defined_clones-summary.txt' download='change_o/change-o-defined_clones-summary.txt' >Download</a></td></tr>" >> $output
804 echo "<tr><td>An IMGT archive with just just the first sequence of a clone</td><td><a href='new_IMGT_first_seq_of_clone.txz' download='new_IMGT_first_seq_of_clone.txz' >Download</a></td></tr>" >> $output
805
806 echo "<tr><td>The Change-O DB file with defined clones of IGA</td><td><a href='change_o/change-o-db-defined_clones-IGA.txt' download='change_o/change-o-db-defined_clones-IGA.txt' >Download</a></td></tr>" >> $output
807 echo "<tr><td>The Change-O DB defined clones summary file of IGA</td><td><a href='change_o/change-o-defined_clones-summary-IGA.txt' download='change_o/change-o-defined_clones-summary-IGA.txt' >Download</a></td></tr>" >> $output
808 echo "<tr><td>An IMGT archive with just just the first sequence of a clone (IGA)</td><td><a href='new_IMGT_IGA_first_seq_of_clone.txz' download='new_IMGT_IGA_first_seq_of_clone.txz' >Download</a></td></tr>" >> $output
809
810 echo "<tr><td>The Change-O DB file with defined clones of IGG</td><td><a href='change_o/change-o-db-defined_clones-IGG.txt' download='change_o/change-o-db-defined_clones-IGG.txt' >Download</a></td></tr>" >> $output
811 echo "<tr><td>The Change-O DB defined clones summary file of IGG</td><td><a href='change_o/change-o-defined_clones-summary-IGG.txt' download='change_o/change-o-defined_clones-summary-IGG.txt' >Download</a></td></tr>" >> $output
812 echo "<tr><td>An IMGT archive with just just the first sequence of a clone (IGG)</td><td><a href='new_IMGT_IGG_first_seq_of_clone.txz' download='new_IMGT_IGG_first_seq_of_clone.txz' >Download</a></td></tr>" >> $output
813
814 echo "<tr><td>The Change-O DB file with defined clones of IGM</td><td><a href='change_o/change-o-db-defined_clones-IGM.txt' download='change_o/change-o-db-defined_clones-IGM.txt' >Download</a></td></tr>" >> $output
815 echo "<tr><td>The Change-O DB defined clones summary file of IGM</td><td><a href='change_o/change-o-defined_clones-summary-IGM.txt' download='change_o/change-o-defined_clones-summary-IGM.txt' >Download</a></td></tr>" >> $output
816 echo "<tr><td>An IMGT archive with just just the first sequence of a clone (IGM)</td><td><a href='new_IMGT_IGM_first_seq_of_clone.txz' download='new_IMGT_IGM_first_seq_of_clone.txz' >Download</a></td></tr>" >> $output
817
818 echo "<tr><td>The Change-O DB file with defined clones of IGE</td><td><a href='change_o/change-o-db-defined_clones-IGE.txt' download='change_o/change-o-db-defined_clones-IGE.txt' >Download</a></td></tr>" >> $output
819 echo "<tr><td>The Change-O DB defined clones summary file of IGE</td><td><a href='change_o/change-o-defined_clones-summary-IGE.txt' download='change_o/change-o-defined_clones-summary-IGE.txt' >Download</a></td></tr>" >> $output
820 echo "<tr><td>An IMGT archive with just just the first sequence of a clone (IGE)</td><td><a href='new_IMGT_IGE_first_seq_of_clone.txz' download='new_IMGT_IGE_first_seq_of_clone.txz' >Download</a></td></tr>" >> $output
821
822 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>Filtered IMGT output files</td></tr>" >> $output
823 echo "<tr><td>An IMGT archive with just the matched and filtered sequences</td><td><a href='new_IMGT.txz' download='new_IMGT.txz' >Download</a></td></tr>" >> $output
824 echo "<tr><td>An IMGT archive with just the matched and filtered IGA sequences</td><td><a href='new_IMGT_IGA.txz' download='new_IMGT_IGA.txz' >Download</a></td></tr>" >> $output
825 echo "<tr><td>An IMGT archive with just the matched and filtered IGA1 sequences</td><td><a href='new_IMGT_IGA1.txz' download='new_IMGT_IGA1.txz' >Download</a></td></tr>" >> $output
826 echo "<tr><td>An IMGT archive with just the matched and filtered IGA2 sequences</td><td><a href='new_IMGT_IGA2.txz' download='new_IMGT_IGA2.txz' >Download</a></td></tr>" >> $output
827 echo "<tr><td>An IMGT archive with just the matched and filtered IGG sequences</td><td><a href='new_IMGT_IGG.txz' download='new_IMGT_IGG.txz' >Download</a></td></tr>" >> $output
828 echo "<tr><td>An IMGT archive with just the matched and filtered IGG1 sequences</td><td><a href='new_IMGT_IGG1.txz' download='new_IMGT_IGG1.txz' >Download</a></td></tr>" >> $output
829 echo "<tr><td>An IMGT archive with just the matched and filtered IGG2 sequences</td><td><a href='new_IMGT_IGG2.txz' download='new_IMGT_IGG2.txz' >Download</a></td></tr>" >> $output
830 echo "<tr><td>An IMGT archive with just the matched and filtered IGG3 sequences</td><td><a href='new_IMGT_IGG3.txz' download='new_IMGT_IGG3.txz' >Download</a></td></tr>" >> $output
831 echo "<tr><td>An IMGT archive with just the matched and filtered IGG4 sequences</td><td><a href='new_IMGT_IGG4.txz' download='new_IMGT_IGG4.txz' >Download</a></td></tr>" >> $output
832 echo "<tr><td>An IMGT archive with just the matched and filtered IGM sequences</td><td><a href='new_IMGT_IGM.txz' download='new_IMGT_IGM.txz' >Download</a></td></tr>" >> $output
833 echo "<tr><td>An IMGT archive with just the matched and filtered IGE sequences</td><td><a href='new_IMGT_IGE.txz' download='new_IMGT_IGE.txz' >Download</a></td></tr>" >> $output
834
835 echo "</table>" >> $output
836
837 echo "<br />" >> $output
838 cat $dir/shm_downloads.htm >> $output
839
840 echo "</div>" >> $output #downloads tab end
841
842 echo "</div>" >> $output #tabs end
843
844 echo "</html>" >> $output
845
846
847 echo "---------------- naive_output.r ----------------"
848 echo "---------------- naive_output.r ----------------<br />" >> $log
849
850 if [[ "$naive_output" == "yes" ]]
851 then
852 echo "output naive output"
853 if [[ "${class_filter}" == "101_101" ]]
854 then
855 echo "copy new_IMGT.txz to ${naive_output_all}"
856 cp $outdir/new_IMGT.txz ${naive_output_all}
857 else
858 echo "copy for classes"
859 cp $outdir/new_IMGT_IGA.txz ${naive_output_ca}
860 cp $outdir/new_IMGT_IGG.txz ${naive_output_cg}
861 cp $outdir/new_IMGT_IGM.txz ${naive_output_cm}
862 cp $outdir/new_IMGT_IGE.txz ${naive_output_ce}
863 fi
864 fi
865
866 echo "</table>" >> $outdir/base_overview.html
867
868 mv $log $outdir/log.html
869
870 echo "<html><center><h1><a href='index.html'>Click here for the results</a></h1>Tip: Open it in a new tab (middle mouse button or right mouse button -> 'open in new tab' on the link above)<br />" > $log
871 echo "<table border = 1>" >> $log
872 echo "<thead><tr><th>Info</th><th>Sequences</th><th>Percentage</th></tr></thead>" >> $log
873 tIFS="$TMP"
874 IFS=$'\t'
875 while read step seq perc
876 do
877 echo "<tr>" >> $log
878 echo "<td>$step</td>" >> $log
879 echo "<td>$seq</td>" >> $log
880 echo "<td>${perc}%</td>" >> $log
881 echo "</tr>" >> $log
882 done < $outdir/filtering_steps.txt
883 echo "</table>" >> $log
884 echo "<br />" >> $log
885 cat $dir/shm_first.htm >> $log
886 echo "</center></html>" >> $log
887
888 IFS="$tIFS"
889
890
891 echo "---------------- Done! ----------------"
892 echo "---------------- Done! ----------------<br />" >> $outdir/log.html
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913