#!/bin/csh -f

@ err = 0

dtcoomm .25 .50 > coomm.out || @ err = $err + 1
dtcoomm 1.0 .50 >> coomm.out || @ err = $err + 1
dtcoomm 1.0 0.0 >> coomm.out || @ err = $err + 1
dtcoomm 0.0 1.0 >> coomm.out || @ err = $err + 1
dtcoomm .50 0.0 >> coomm.out || @ err = $err + 1
dtcoosm .25 .50 > coosm.out || @ err = $err + 1
dtcoosm 1.0 .50 >> coosm.out || @ err = $err + 1
dtcoosm 1.0 0.0 >> coosm.out || @ err = $err + 1
dtcoosm 0.0 1.0 >> coosm.out || @ err = $err + 1
dtcoosm .50 0.0 >> coosm.out || @ err = $err + 1
dtcscmm .25 .50 > cscmm.out || @ err = $err + 1
dtcscmm 1.0 .50 >> cscmm.out || @ err = $err + 1
dtcscmm 1.0 0.0 >> cscmm.out || @ err = $err + 1
dtcscmm 0.0 1.0 >> cscmm.out || @ err = $err + 1
dtcscmm .50 0.0 >> cscmm.out || @ err = $err + 1
dtcscsm .25 .50 > cscsm.out || @ err = $err + 1
dtcscsm 1.0 .50 >> cscsm.out || @ err = $err + 1
dtcscsm 1.0 0.0 >> cscsm.out || @ err = $err + 1
dtcscsm 0.0 1.0 >> cscsm.out || @ err = $err + 1
dtcscsm .50 0.0 >> cscsm.out || @ err = $err + 1
dtcsrmm .25 .50 > csrmm.out || @ err = $err + 1
dtcsrmm 1.0 .50 >> csrmm.out || @ err = $err + 1
dtcsrmm 1.0 0.0 >> csrmm.out || @ err = $err + 1
dtcsrmm 0.0 1.0 >> csrmm.out || @ err = $err + 1
dtcsrmm .50 0.0 >> csrmm.out || @ err = $err + 1
dtcsrsm .25 .50 > csrsm.out || @ err = $err + 1
dtcsrsm 1.0 .50 >> csrsm.out || @ err = $err + 1
dtcsrsm 1.0 0.0 >> csrsm.out || @ err = $err + 1
dtcsrsm 0.0 1.0 >> csrsm.out || @ err = $err + 1
dtcsrsm .50 0.0 >> csrsm.out || @ err = $err + 1
dtbcomm .25 .50 > bcomm.out || @ err = $err + 1
dtbcomm 1.0 .50 >> bcomm.out || @ err = $err + 1
dtbcomm 1.0 0.0 >> bcomm.out || @ err = $err + 1
dtbcomm 0.0 1.0 >> bcomm.out || @ err = $err + 1
dtbcomm .50 0.0 >> bcomm.out || @ err = $err + 1
dtbscmm .25 .50 > bscmm.out || @ err = $err + 1
dtbscmm 1.0 .50 >> bscmm.out || @ err = $err + 1
dtbscmm 1.0 0.0 >> bscmm.out || @ err = $err + 1
dtbscmm 0.0 1.0 >> bscmm.out || @ err = $err + 1
dtbscmm .50 0.0 >> bscmm.out || @ err = $err + 1
dtbscsm .25 .50 > bscsm.out || @ err = $err + 1
dtbscsm 1.0 .50 >> bscsm.out || @ err = $err + 1
dtbscsm 1.0 0.0 >> bscsm.out || @ err = $err + 1
dtbscsm 0.0 1.0 >> bscsm.out || @ err = $err + 1
dtbscsm .50 0.0 >> bscsm.out || @ err = $err + 1
dtbsrmm .25 .50 > bsrmm.out || @ err = $err + 1
dtbsrmm 1.0 .50 >> bsrmm.out || @ err = $err + 1
dtbsrmm 1.0 0.0 >> bsrmm.out || @ err = $err + 1
dtbsrmm 0.0 1.0 >> bsrmm.out || @ err = $err + 1
dtbsrmm .50 0.0 >> bsrmm.out || @ err = $err + 1
dtbsrsm .25 .50 > bsrsm.out || @ err = $err + 1
dtbsrsm 1.0 .50 >> bsrsm.out || @ err = $err + 1
dtbsrsm 1.0 0.0 >> bsrsm.out || @ err = $err + 1
dtbsrsm 0.0 1.0 >> bsrsm.out || @ err = $err + 1
dtbsrsm .50 0.0 >> bsrsm.out || @ err = $err + 1
dtvbrmm .25 .50 > vbrmm.out || @ err = $err + 1
dtvbrmm 1.0 .50 >> vbrmm.out || @ err = $err + 1
dtvbrmm 1.0 0.0 >> vbrmm.out || @ err = $err + 1
dtvbrmm 0.0 1.0 >> vbrmm.out || @ err = $err + 1
dtvbrmm .50 0.0 >> vbrmm.out || @ err = $err + 1
dtvbrsm .25 .50 > vbrsm.out || @ err = $err + 1
dtvbrsm 1.0 .50 >> vbrsm.out || @ err = $err + 1
dtvbrsm 1.0 0.0 >> vbrsm.out || @ err = $err + 1
dtvbrsm 0.0 1.0 >> vbrsm.out || @ err = $err + 1
dtvbrsm .50 0.0 >> vbrsm.out || @ err = $err + 1

if ( $err == 0 ) then
    echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" 
    echo "+        No errors detected in Sparse BLAS routines:          +"
    echo "+   dcscmm, dcsrmm, dcoomm, dbcomm, dbscmm, dbsrmm, dvbrmm    +"
    echo "+   dcscsm, dcsrsm, dcoosm,         dbscsm, dbsrsm, dvbrsm    +"
    echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
else
    echo " Errors reported in run_tests: "  $err
endif
