File indexing completed on 2026-04-09 07:48:46
0001
0002
0003 MODE=${1:-0}
0004
0005 ana_cmd_0(){ cat << EOC
0006 $* $(which tboolean.py) --tagoffset 0 --tag 1 --cat tboolean-box --pfx tboolean-box --src torch --show
0007 EOC
0008 }
0009 ana_cmd_1(){ cat << EOC
0010 LV=box $* $(which histype.py)
0011 EOC
0012 }
0013 ana_cmd_2(){ cat << EOC
0014 $* $(which seq.py)
0015 EOC
0016 }
0017
0018
0019 usage(){ cat << EON
0020 To regenerate the event files read by these analysis scripts, run::
0021
0022 LV=box GGeoTest=INFO tboolean.sh --generateoverride 10000 --noviz
0023
0024 EON
0025 }
0026
0027 ana_log(){
0028 local py="${*:-python3}"
0029 py=${py// /_}
0030 local mode=${MODE}
0031 local idx=${IDX:-0}
0032 echo /tmp/$USER/opticks/ana/ana_log_${py}_mode${mode}_idx${idx}.log
0033 }
0034
0035 cfpy()
0036 {
0037 : compare output from running same cmd with two pythons
0038 local py2cmd="$(ana_cmd_$MODE python2.7)"
0039 local py3cmd="$(ana_cmd_$MODE python3)"
0040
0041 local py2log="$(ana_log python2.7)"
0042 local py3log="$(ana_log python3)"
0043
0044 mkdir -p $(dirname $py2log)
0045
0046 echo "$py2cmd"
0047 eval "$py2cmd" 2> $py2log 1>&2
0048 [ $? -ne 0 ] && echo FAIL from py2.7 && cat $py2log && exit 1
0049
0050 echo "$py3cmd"
0051 eval "$py3cmd" 2> $py3log 1>&2
0052 [ $? -ne 0 ] && echo FAIL from py3 && cat $py3log && exit 1
0053
0054
0055 local cmd="diff $py2log $py3log"
0056 echo $cmd
0057 eval $cmd
0058 echo rc $?
0059 echo $cmd
0060 }
0061
0062 run()
0063 {
0064 local py="${*:-python3}"
0065 echo py "$py"
0066 local cmd="$(ana_cmd_$MODE "$py")"
0067 echo cmd "$cmd"
0068 local log0="$(ana_log "$py")"
0069 echo log0 $log0
0070 mkdir -p $(dirname $log0)
0071 echo eval
0072
0073 eval "$cmd"
0074 local rc=$?
0075 echo cmd $cmd : rc $rc
0076 cat $log0
0077 echo cmd $cmd : rc $rc
0078 }
0079
0080
0081 repeatability()
0082 {
0083 : repeat the same cmd comparing log output
0084 local py="${1:-python3}"
0085 local cmd="$(ana_cmd_$MODE "$py")"
0086 echo $FUNCNAME : "$py" : $cmd
0087
0088 local log0="$(ana_log "$py")"
0089 mkdir -p $(dirname $log0)
0090
0091 local rc
0092 local nn=$(seq 0 9)
0093 for n in $nn ; do
0094 local logn="$(IDX=$n ana_log "$py")"
0095 eval "$cmd" 2> $logn 1>&2
0096 local diffcmd="diff $log0 $logn"
0097 eval $diffcmd
0098 rc=$?
0099 echo $diffcmd : $rc
0100 [ $rc -ne 0 ] && echo $FUNCNAME FAIL logn $logn && return 1
0101 done
0102 return 0
0103 }
0104
0105
0106
0107
0108
0109
0110
0111
0112
0113 run "/Users/blyth/miniconda3/bin/ipython -i --"
0114
0115
0116
0117
0118