X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=ctest%2Fprota_unres_energy_check.sh;h=c6e52b32e5c92909b71c33779612271632aa07a0;hb=5464a69bec1071f24a02d91a6c4483c3ace66c04;hp=b0bf3c58ab4d3551d363f476a3d675bdd7e0827c;hpb=00b366442802129f22edbf1f65224295b08efddc;p=unres.git diff --git a/ctest/prota_unres_energy_check.sh b/ctest/prota_unres_energy_check.sh index b0bf3c5..c6e52b3 100755 --- a/ctest/prota_unres_energy_check.sh +++ b/ctest/prota_unres_energy_check.sh @@ -65,13 +65,17 @@ elif [ "$1" == "1l2y_micro" ]; then 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.05"|bc -l` != "0" ]; then - echo 'standard deviation greater than 0.05' + elif [ `echo "a=${array[1]};a>0.15"|bc -l` != "0" ]; then + echo 'standard deviation greater than 0.15' exit 1 else exit 0 fi elif [ "$1" == "1L2Y_L" ] || [ "$1" == "1L2Y_NH" ]; then + if [ ! -s $file_stat ]; then + echo 'FATAL error - stat file empty' + exit 2 + fi chi2=`./matplotlib_fit_hist.py $file_stat 111` echo 'Chi2 for fitting theoretical temperature distribution ' ${chi2} echo "`pwd`/${file_stat}.png" @@ -83,6 +87,10 @@ elif [ "$1" == "1L2Y_L" ] || [ "$1" == "1L2Y_NH" ]; then exit 0 fi elif [ "$1" == "1L2Y_B" ]; then + if [ ! -s $file_stat ]; then + echo 'FATAL error - stat file empty' + exit 2 + fi chi2=`./matplotlib_fit_hist.py $file_stat 111` echo 'Chi2 for fitting theoretical temperature distribution ' ${chi2} echo "`pwd`/${file_stat}.png" @@ -98,6 +106,10 @@ elif [ "$1" == "1L2Y_B" ]; then elif [ "$1" == "1L2Y_remd" ]; then rm -rf remd_all.stat tail -q -n +1000 1L2Y_remd*.stat >remd_all.stat + if [ ! -s remd_all.stat ]; then + echo 'FATAL error - stat files empty' + exit 2 + fi ./matplotlib_hist.py echo "`pwd`/1L2Y_remd_ene_hist.png" @@ -163,13 +175,45 @@ elif [ "$1" == "1DKZcut-micro" ]; then 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.05"|bc -l` != "0" ]; then - echo 'standard deviation greater than 0.05' + elif [ `echo "a=${array[1]};a>0.005"|bc -l` != "0" ]; then + echo 'standard deviation greater than 0.005' exit 1 else exit 0 fi +elif [ "$1" == "1ei0_min" ]; then + extremediff="10.0" # extreme energy difference, comething went terribly wrong + expectenergy="151.3218" # - expected total energy + cutoffdiff="6.0" # energy cutoff variation - more then this rises warning + + refe="134.8382" + startene=`grep ETOT $file|head -1| awk '{print $2*1.0}'` + echo "initial energy=${startene} reference=${refe}" + if [ `echo "a=${startene}-(${refe});if(0>a)a*=-1;a>0.01"|bc -l` != "0" ]; then + echo 'difference ' `echo "a=${startene}-${refe};if(0>a)a*=-1;a"|bc -l` "from reference etot ${refe} greater than 0.01" + exit 1 + fi + + sumsl_return=`grep SUMSL $file|awk '{print $4}'` + echo 'SUMSL return code' $sumsl_return + if [ "$sumsl_return" != "4" ]; then + echo 'ERROR = SUMSL return code' $sumsl_return 'is not 4' + echo 'but not failing this test, it is known problem with dissulfides' +# exit 1 + fi + +elif [ "$1" == "prota_CHECKGRAD" ]; then + diff=`awk -f checkgrad.awk $file |grep 'Largest abs(numerical/analytical)='|awk '{printf "%15.10f",$3}'` + awk -f checkgrad.awk $file + + if [ `echo "a=${diff};a>0.0001"|bc -l` != "0" ]; then + echo 'ERROR largest abs(numerical/analytical)' ${diff} + echo ' greater than 0.0001' + exit 1 + else + exit 0 + fi else