X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=ctest%2Fprota_unres_energy_check.sh;h=6dbd4d96d35f5789da8a83397ec359103eb2baa3;hb=aabe58079178cdd78fb2942dcf844c5dff6190ba;hp=5901cee1f7ce05af15b57dd6f45db0acae31fd5e;hpb=9206ccdbc622319f610b51589628601b58666d12;p=unres.git
diff --git a/ctest/prota_unres_energy_check.sh b/ctest/prota_unres_energy_check.sh
index 5901cee..6dbd4d9 100755
--- a/ctest/prota_unres_energy_check.sh
+++ b/ctest/prota_unres_energy_check.sh
@@ -1,6 +1,7 @@
#!/bin/bash
#
# Writen by Dawid JagieÅa and Adam Sieradzan
+# and Cezary Czaplewski
#
#
#----------------------------------------
@@ -16,11 +17,11 @@ fi
if [ "$1" == "prota_ENE" ]; then
extremediff="10000.0" # extreme energy difference, comething went terribly wrong
- expectenergy="-56066670.000000" # expected total energy
- cutoffdiff="0.1" # energy cutoff variation - more then this rises warning
+ expectenergy="147.6873" # - expected total energy
+ cutoffdiff="0.01" # energy cutoff variation - more then this rises warning
elif [ "$1" == "prota_MIN_CART" ]; then
extremediff="10.0" # extreme energy difference, comething went terribly wrong
- expectenergy="123.8713" # expected total energy
+ expectenergy="154.3960" # - expected total energy
cutoffdiff="0.1" # energy cutoff variation - more then this rises warning
sumsl_return=`grep SUMSL $file|awk '{print $4}'`
@@ -31,7 +32,7 @@ elif [ "$1" == "prota_MIN_CART" ]; then
fi
elif [ "$1" == "1l2y_MIN_INT" ]; then
extremediff="10.0" # extreme energy difference, comething went terribly wrong
- expectenergy="-49.435" # expected total energy
+ expectenergy="-46.17584" # expected total energy
cutoffdiff="0.1" # energy cutoff variation - more then this rises warning
sumsl_return=`grep SUMSL $file|awk '{print $4}'`
@@ -42,7 +43,7 @@ elif [ "$1" == "1l2y_MIN_INT" ]; then
fi
elif [ "$1" == "1l2y_MIN_REGULAR_INT" ]; then
extremediff="10.0" # extreme energy difference, comething went terribly wrong
- expectenergy="-1.192" # expected total energy
+ expectenergy="6.827318" # expected total energy
#
# something wrong with REGULAR and sometimes gives code 8 and different energy
# for now 8 is only warning and cutoffdiff is large
@@ -56,19 +57,61 @@ elif [ "$1" == "1l2y_MIN_REGULAR_INT" ]; then
fi
elif [ "$1" == "1l2y_micro" ]; then
+ refe="73.3418"
stat=`awk '{if ( $1 != "#" ) {n++;a=a+$5;a2=a2+$5^2}}END{print a/n,sqrt((a2-a^2/n)/n)}' $file_stat`
array=(${stat// / })
echo 'average total energy ' ${array[0]}
echo 'standard deviation ' ${array[1]}
- if [ `echo "a=${array[0]}-103.162;if(0>a)a*=-1;a>5.0"|bc -l` != "0" ]; then
- echo 'difference ' `echo "a=${array[0]}-103.162;if(0>a)a*=-1;a"|bc -l` 'from reference ave etot 103.162 greater than 5.0'
+ if [ `echo "a=${array[0]}-${refe};if(0>a)a*=-1;a>5.0"|bc -l` != "0" ]; then
+ echo 'difference ' `echo "a=${array[0]}-${refe};if(0>a)a*=-1;a"|bc -l` "from reference ave etot ${refe} greater than 5.0"
exit 1
- elif [ `echo "a=${array[1]};a>0.01"|bc -l` != "0" ]; then
- echo 'standard deviation greater than 0.01'
+ elif [ `echo "a=${array[1]};a>0.1"|bc -l` != "0" ]; then
+ echo 'standard deviation greater than 0.1'
exit 1
else
exit 0
fi
+elif [ "$1" == "1L2Y_L" ] || [ "$1" == "1L2Y_NH" ]; then
+ chi2=`./matplotlib_fit_hist.py $file_stat`
+ echo 'Chi2 for fitting theoretical temperature distribution ' ${chi2}
+ echo "`pwd`/${file_stat}.png"
+
+ if [ `echo "a=${chi2};a>0.001"|bc -l` != "0" ]; then
+ echo 'chi2 greater than 0.001'
+ exit 1
+ else
+ exit 0
+ fi
+elif [ "$1" == "1L2Y_B" ]; then
+ chi2=`./matplotlib_fit_hist.py $file_stat`
+ echo 'Chi2 for fitting theoretical temperature distribution ' ${chi2}
+ echo "`pwd`/${file_stat}.png"
+
+ if [ `echo "a=${chi2};a>0.01"|bc -l` != "0" ]; then
+ echo 'chi2 greater than 0.01'
+ exit 1
+ else
+ exit 0
+ fi
+
+
+elif [ "$1" == "1L2Y_remd" ]; then
+ rm -rf remd_all.stat
+ tail -q -n +1000 1L2Y_remd*.stat >remd_all.stat
+ ./matplotlib_hist.py
+
+ echo "`pwd`/1L2Y_remd_ene_hist.png"
+ echo "`pwd`/1L2Y_remd_Tene.png"
+ grep ACC 1L2Y_remd.out_GB000 |tail -7
+ exchange=`grep ACC 1L2Y_remd.out_GB000 |tail -7|awk '{a=a+$4}END{print a/NR}'`
+ echo "average exchange = ${exchange}"
+ if [ `echo "a=${exchange};a<0.1"|bc -l` != "0" ]; then
+ echo 'ERROR average exchange smaller than 0.1'
+ exit 1
+ else
+ exit 0
+ fi
+
else
exit 1
fi