Rafal's code for NMR restraints
[django_unres.git] / files / cluster2allatom.sh
1 #!/bin/bash
2 # to use you need syntax ./cluster2allatom.sh YOUR_CLUSTER_FILENAME
3 file=$1
4 sed -n '/ENERGY/,/ENDMDL/p' $file |sed  's/CB /SC /' >tmp.pdb
5 numstruc=`grep ENERGY tmp.pdb|wc -l`
6 allline=`cat tmp.pdb|wc -l`
7 onestruc=`echo $allline "/" $numstruc| bc -l|sed 's/\.0*//'`
8 for ((i=2;i<=numstruc;i+=2))
9 do
10 echo $i $onestruc
11 headval=`echo $i "*" $onestruc|bc -l`
12 head -n $headval tmp.pdb | tail -n $onestruc >act.pdb
13
14 rm -f act_file*
15 cat act.pdb | tr '\n' '\r' | sed -e 's/TER\rTER/TERTER/g' | tr '\r' '\n' \
16  | awk 'BEGIN{f=1}/TERTER/{close("act_file"f);f++}{ if ($0!="TERTER") print $0 > "act_file"f}'
17
18  for f in act_file*
19   do
20 #change the pulchra directory for each server acordingly
21    /users2/local/pulchra306/pulchra -q -g $f 
22   done 
23
24 cat act_file*.rebuilt.pdb |grep -v TER |grep -v END > tmp1.pdb
25
26 /users2/local/mmtsb/perl/convpdb.pl -renumber 1 -out generic tmp1.pdb > act.rebuilt.pdb
27  
28 halfi=`echo $i/2|bc`
29 #mv act.rebuilt.pdb  MODEL${halfi}_pulchra.pdba
30 /users2/local/scwrl4/Scwrl4 -h -i act.rebuilt.pdb -o tmp2.pdb
31 #tmscore MODEL${i}a.pdb ../template_1.pdb > tmscore${i}a.txt
32
33 awk 'BEGIN{oxt=0}{if (substr($0,14,3)=="OXT") oxt=int(substr($0,24,3)); if (int(substr($0,24,3))>oxt && oxt>0) {print "TER";print $0;oxt=0} else print $0}' tmp2.pdb > MODEL${halfi}.pdb
34
35 done
36 rm tmp.pdb tmp1.pdb tmp2.pdb act.pdb act.rebuilt.pdb  act_file*