/[MITgcm]/MITgcm/verification/testreport
ViewVC logotype

Diff of /MITgcm/verification/testreport

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.52 by edhill, Wed Dec 1 16:59:42 2004 UTC revision 1.61 by edhill, Thu Dec 16 20:25:11 2004 UTC
# Line 450  linkdata() Line 450  linkdata()
450              if test "x$ADM" = x ; then              if test "x$ADM" = x ; then
451                  files=`( cd ../input ; ls -1 | grep -v CVS )`                  files=`( cd ../input ; ls -1 | grep -v CVS )`
452                  for i in $files ; do                  for i in $files ; do
453                      if test ! -d "../input/"$i ; then                      if test ! -d "../input/"$i -a ! -f $i ; then
454                          ln -sf "../input/"$i $i                          ln -sf "../input/"$i $i
455                      fi                      fi
456                  done                  done
# Line 520  createcodelet() Line 520  createcodelet()
520  int main( int argc, char** argv )  {  int main( int argc, char** argv )  {
521    int linnum,best,lncnt;    int linnum,best,lncnt;
522    double a,b,abave,relerr;    double a,b,abave,relerr;
523    best = -16;    best = -22;
524    lncnt = 0;    lncnt = 0;
525    while( 1 & (lncnt+=1) < 999 )  {    while( 1 & (lncnt+=1) < 999 )  {
526      scanf("%d", &linnum);      scanf("%d", &linnum);
# Line 529  int main( int argc, char** argv )  { Line 529  int main( int argc, char** argv )  {
529      abave = 0.5*(fabs(a)+fabs(b));      abave = 0.5*(fabs(a)+fabs(b));
530      if (abave > 0.0) {      if (abave > 0.0) {
531        relerr=fabs(a-b)/abave;        relerr=fabs(a-b)/abave;
532        if (relerr > 0.0) {        if (relerr > 0.0) { linnum = (int)log10(relerr); }
533          linnum = (int)log10(relerr);        else { linnum = -16 ; }
534          best = (best > linnum) ? best : linnum;        best = (best > linnum) ? best : linnum;
       }  
     }  
     else {  
       if (best == -16 && abave != 0)  best = -22;  
535      }      }
536    }    }
537    if (lncnt == 999) best=-29;    if (lncnt == 999) best=-29;
# Line 543  int main( int argc, char** argv )  { Line 539  int main( int argc, char** argv )  {
539    return 0;    return 0;
540  }  }
541  EOF  EOF
542      cc -o tmp_cmpnum tmp_cmpnum.c -lm      $CC -o tmp_cmpnum tmp_cmpnum.c -lm
543    
544      if [ -x ./tmp_cmpnum ]; then      if [ -x ./tmp_cmpnum ]; then
545          echo "OK"          echo "OK"
546          return 0          return 0
547      else      else
548          echo          echo
549          echo "ERROR: failed to compile comparison code"          echo "ERROR: failed to compile comparison code -- please specify"
550            echo "  a C compiler using the CC environment variable."
551          exit 1          exit 1
552      fi      fi
553  }  }
# Line 639  MPACKDIR="../tools/mpack-1.6" Line 636  MPACKDIR="../tools/mpack-1.6"
636  HAVE_MPACK=  HAVE_MPACK=
637  MPACK="$MPACKDIR/mpack"  MPACK="$MPACKDIR/mpack"
638  COMMAND=  COMMAND=
639  MAKE=make  if test "x$MAKE" = x ; then
640        MAKE=make
641    fi
642    if test "x$CC" = x ; then
643        CC=cc
644    fi
645  JOBS=  JOBS=
646  MPI=f  MPI=f
647  DELDIR=  DELDIR=
# Line 881  for dir in $TESTDIRS ; do Line 883  for dir in $TESTDIRS ; do
883      fout=      fout=
884      if test "x$ADM" = x ; then      if test "x$ADM" = x ; then
885          fout=$dir"/results/output.txt"          fout=$dir"/results/output.txt"
         check_for_add_mon_output  $fout  
886      else      else
887          fout=$dir"/results_ad/output.txt_adm"          fout=$dir"/results_ad/output.txt_adm"
888      fi      fi
# Line 889  for dir in $TESTDIRS ; do Line 890  for dir in $TESTDIRS ; do
890          echo "can't read \"$fout\" -- skipping $dir"          echo "can't read \"$fout\" -- skipping $dir"
891          continue          continue
892      fi      fi
893        if test "x$ADM" = x ; then
894            check_for_add_mon_output  $fout
895        fi
896    
897      # Check for additional types of monitor output      # Check for additional types of monitor output
898    
# Line 966  for dir in $TESTDIRS ; do Line 970  for dir in $TESTDIRS ; do
970          echo "DATE='$DATE'" >> $CDIR"/summary.txt"          echo "DATE='$DATE'" >> $CDIR"/summary.txt"
971          echo "tdir='$dir'" >> $CDIR"/summary.txt"          echo "tdir='$dir'" >> $CDIR"/summary.txt"
972    
         OLD_COMMAND=$COMMAND  
         COMMAND="./mitgcmuv > output.txt"  
973          for ex in $extra_runs ; do          for ex in $extra_runs ; do
974              test -e "$dir/tr_run.$ex" && rm -rf "$dir/tr_run.$ex"              test ! -e "$dir/tr_run.$ex" && mkdir "$dir/tr_run.$ex"
975              mkdir "$dir/tr_run.$ex"              for ldir in build input input.$ex ; do
976              links=`( cd "$dir/input" > /dev/null 2>&1 ; ls -1 | grep -v CVS )`                  (
977              (                      cd "$dir/$ldir" > /dev/null 2>&1
978                  cd "$dir/tr_run.$ex"                      ls -1 2>/dev/null \
979                  for i in $links; do                          | sed -e 's|^CVS$||g' | sed -e 's|^output.txt$||g'
980                      ln -s ../input/$i $i                  ) > tr_exrun_links
981                  done                  (
982              )                      cd "$dir/tr_run.$ex"
983              links=`( cd "$dir/input.$ex" > /dev/null 2>&1 ; ls -1 | grep -v CVS )`                      cat ../../tr_exrun_links | while read i ; do
984              (                          if test ! "x$i" = x ; then
985                  cd "$dir/tr_run.$ex"                              test -e $i  &&  rm -f $i
986                  for i in $links; do                              ln -s "../"$ldir"/"$i $i
987                      test -e $i  &&  rm -f $i                          fi
988                      ln -s ../input.$ex/$i $i                      done
989                  done                  )
990                  ln -s ../$builddir/mitgcmuv mitgcmuv                  test -e tr_exrun_links  &&  rm -f tr_exrun_links
991              )              done
992              runmodel $dir/tr_run.$ex && run=Y \              runmodel $dir/tr_run.$ex && run=Y \
993                  && results=`testoutput $dir tr_run.$ex "."$ex`                  && results=`testoutput $dir tr_run.$ex "."$ex`
994              fres=`printf '%s %s %s %s' ${genmake:-N} ${makedepend:-N} ${make:-N} ${run:-N}`              fres=`printf '%s %s %s %s' ${genmake:-N} ${makedepend:-N} ${make:-N} ${run:-N}`
# Line 1000  for dir in $TESTDIRS ; do Line 1002  for dir in $TESTDIRS ; do
1002              echo "DATE='$DATE'" >> $CDIR"/summary.txt"              echo "DATE='$DATE'" >> $CDIR"/summary.txt"
1003              echo "tdir='$dir'" >> $CDIR"/summary.txt"              echo "tdir='$dir'" >> $CDIR"/summary.txt"
1004          done          done
         COMMAND=$OLD_COMMAND  
1005      else      else
1006          fres=`printf '%s %s %s %s' ${genmake:-N} ${makedepend:-N} ${make:-N} ${run:-N}`          fres=`printf '%s %s %s %s' ${genmake:-N} ${makedepend:-N} ${make:-N} ${run:-N}`
1007          fres=$fres"$results   $dir"          fres=$fres"$results   $dir"

Legend:
Removed from v.1.52  
changed lines
  Added in v.1.61

  ViewVC Help
Powered by ViewVC 1.1.22