annotate bin/batch_para_cov10p_fit.sh @ 5:2ebca9da5e42 draft default tip

planemo upload
author bioitcore
date Thu, 07 Sep 2017 17:39:24 -0400
parents adc0f7765d85
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
1 #!/bin/bash
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
2 ReadFile1Name=`basename $1`
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
3 ReadFile2Name=`basename $2`
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
4 outputname=$3
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
5 readsize=$4
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
6 DatabasePrefix=$5
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
7 Outputfolder=$6
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
8 SrcFolder=$7
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
9 noIRM=$8
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
10
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
11 cd $Outputfolder
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
12 if [ $ReadFile1Name != $ReadFile2Name ];then
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
13 echo "ESTIMATE: Getting fragment size information from data..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
14 perl $SrcFolder/get.frag.size.pl $ReadFile1Name.nomt $ReadFile2Name.nomt $readsize
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
15 perl $SrcFolder/get.hist.pl $ReadFile1Name.nomt.fragsize -w=1 -c=1
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
16 else
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
17 echo "ESTIMATE: Generating the other half of reads..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
18 readnum=`wc -l $ReadFile1Name.nomt |cut -f1 -d" "`
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
19 for (( i=0; i<$readnum; i++ ))
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
20 do
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
21 echo "NM" >>$ReadFile1Name.f.nomt
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
22 done
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
23 echo "#Width:1" >$ReadFile1Name.nomt.fragsize.hist
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
24 fi
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
25 echo "ESTIMATE: Creating cache folder.."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
26 if [ $ReadFile1Name != $ReadFile2Name ];then
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
27 ReadFile2FinalName=$ReadFile2Name.nomt
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
28 else
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
29 ReadFile2FinalName=$ReadFile1Name.f.nomt
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
30 fi
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
31
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
32 mkdir $ReadFile1Name.result
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
33 cd $ReadFile1Name.result
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
34 ln -s ../$ReadFile1Name.nomt ./
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
35 ln -s ../$ReadFile2FinalName ./
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
36 ln -s ../$ReadFile1Name.nomt.fragsize.hist ./
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
37 echo "ESTIMATE: Split mapping results via chromosomes..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
38 perl $SrcFolder/scan_nomt.pl $ReadFile1Name.nomt $ReadFile2FinalName
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
39 loopi=0
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
40 echo "ESTIMATE: Generating shell scripts for Loop $loopi..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
41 while read chrlist
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
42 do
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
43 chr=`echo $chrlist |tr -d "\n"`
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
44 for dbfile in $SrcFolder/../db/$DatabasePrefix/parallel/$chr.*
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
45 do
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
46 base=`basename $dbfile`
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
47 echo "$SrcFolder/Pair_estimate_c -f $ReadFile1Name.nomt.fragsize.hist -o $ReadFile1Name.$loopi.$base -d $dbfile -1 $ReadFile1Name.nomt.$chr -2 $ReadFile2FinalName.$chr -s $readsize" >>r$loopi.sh
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
48 done
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
49 done <$SrcFolder/../db/$DatabasePrefix/parallel/chr.list
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
50
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
51 echo "ESTIMATE: Submit shell scripts for Loop $loopi..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
52 perl $SrcFolder/batchqsub.pl r$loopi.sh
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
53 echo "ESTIMATE: Loop $loopi done..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
54
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
55 cat $ReadFile1Name.$loopi.*.ratio >$outputname.$loopi.ratio
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
56 cat $ReadFile1Name.$loopi.*.log >$outputname.$loopi.log
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
57 cat $ReadFile1Name.$loopi.*.nums >$outputname.$loopi.nums
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
58 rm $ReadFile1Name.$loopi.*.ratio
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
59 rm $ReadFile1Name.$loopi.*.log
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
60 rm $ReadFile1Name.$loopi.*.nums
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
61
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
62
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
63 if [ "$noIRM" ];then
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
64 echo "ESTIMATE: No IRM correction, skipped..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
65 mv $outputname.$loopi.ratio $outputname.ratio
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
66 mv $outputname.$loopi.log $outputname.log
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
67 mv $outputname.$loopi.nums $outputname.nums
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
68 else
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
69
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
70 echo "ESTIMATE: derive IRMs from data..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
71 awk '{if ($15>=10) printf $0"\n"}' $outputname.$loopi.ratio >$outputname.mle
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
72 perl $SrcFolder/get_event_dist_fit.pl $outputname.mle -c=2 -w=0.001
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
73
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
74 loopi=1
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
75 echo "ESTIMATE: Generating shell scripts for Loop $loopi..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
76 while read chrlist
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
77 do
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
78 chr=`echo $chrlist |tr -d "\n"`
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
79 for dbfile in $SrcFolder/../db/$DatabasePrefix/parallel/$chr.*
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
80 do
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
81 base=`basename $dbfile`
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
82 echo "$SrcFolder/Pair_estimate_c -f $ReadFile1Name.nomt.fragsize.hist -o $ReadFile1Name.$loopi.$base -d $dbfile -1 $ReadFile1Name.nomt.$chr -2 $ReadFile2FinalName.$chr -b $outputname.mle.fit.hist -s $readsize" >>r$loopi.sh
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
83 done
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
84 done <$SrcFolder/../db/$DatabasePrefix/parallel/chr.list
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
85 echo "ESTIMATE: Submit shell scripts for Loop $loopi..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
86
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
87 #perl $SrcFolder/qsub/batchqsub.pl r$loopi.sh $taskname
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
88 perl $SrcFolder/batchqsub.pl r$loopi.sh
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
89 echo "ESTIMATE: Loop $loopi done..."
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
90 cat $ReadFile1Name.$loopi.*.ratio >$outputname.ratio
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
91 cat $ReadFile1Name.$loopi.*.log >$outputname.log
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
92 cat $ReadFile1Name.$loopi.*.nums >$outputname.nums
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
93 rm $ReadFile1Name.$loopi.*.ratio
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
94 rm $ReadFile1Name.$loopi.*.log
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
95 rm $ReadFile1Name.$loopi.*.nums
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
96 fi
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
97
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
98 mv $outputname.ratio $outputname.log $outputname.nums ../
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
99 cd ../
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
100 rm $ReadFile1Name.result -rf
adc0f7765d85 planemo upload
bioitcore
parents:
diff changeset
101 rm $ReadFile1Name.nomt $ReadFile2FinalName