forked from draskot/Vini
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcreate_receptor_pdbqt_files
executable file
·62 lines (54 loc) · 2.37 KB
/
create_receptor_pdbqt_files
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
cancer_type=`cat $WORKDIR/cancer_type`
job_status=`cat $WORKDIR/job_status`
job_submit=`cat $WORKDIR/job_submit`
max_jobs=`cat $WORKDIR/max_jobs`
partition=`cat $WORKDIR/cpu_partition`
excluded_nodes=`cat $WORKDIR/excluded_${partition}_nodes`
dir=$WORKDIR/${cancer_type}_data
cd $WORKDIR/${cancer_type}_data
rm -f *pdbqt
echo "Renaming receptors to complexes, please wait."
ls receptor_???.pdb > rlist
n=1
while read -r line
do
printf -v i "%03d" $n
cp $line complex_${i}.pdb
let "n++"
done < rlist
echo "Creating receptor pdbqt files.Please wait."
partition=`cat $WORKDIR/cpu_partition`
for j in complex_???.pdb
do
b=`basename $j .pdb`
echo "#!/bin/bash" > prepare_receptor
echo "#SBATCH --time=00:60:00" >> prepare_receptor
echo "#SBATCH --partition="$partition >> prepare_receptor
echo "#SBATCH --cpus-per-task=1" >> prepare_receptor
echo "#SBATCH --mem=2gb" >> prepare_receptor
echo "#SBATCH --job-name=create_pdbqt" >> prepare_receptor
echo "#SBATCH --output=$dir/prepare_receptor.out" >> prepare_receptor
echo "#SBATCH --error=$dir/prepare_receptor.err" >> prepare_receptor
echo "#SBATCH --exclude=${excluded_nodes}" >> prepare_receptor
echo "prepare_receptor -r $dir/$b.pdb -o $dir/$b.pdbqt " >> prepare_receptor
#echo "prepare_receptor -U nphs_lps_waters -r $dir/$b.pdb -o $dir/$b.pdbqt " >> prepare_receptor
chmod +x prepare_receptor
$job_submit prepare_receptor
sh $vini_dir/jobs_control_script ${job_status} ${max_jobs}
done
sh $vini_dir/wait_until_jobs_finish
n=1
> $WORKDIR/receptors_contracted.new
while read -r line
do
printf -v i "%03d" $n
if [ ! -e complex_${i}.pdbqt ]
then
success=nopdbqt
else
success=pdbqt #flag in the 7th column of receptors_contracted file
fi
echo $line $success >> $WORKDIR/receptors_contracted.new
let "n++"
done < $WORKDIR/receptors_contracted
mv $WORKDIR/receptors_contracted.new $WORKDIR/receptors_contracted