File indexing completed on 2026-04-09 07:49:15
0001
0002 usage(){ cat << EOU
0003 sboundary_test.sh
0004 ===================
0005
0006 ::
0007
0008 ~/o/sysrap/tests/sboundary_test.sh
0009
0010
0011 N=160 POLSCALE=10 AOI=BREWSTER ./sboundary_test.sh
0012 N=160 POLSCALE=10 AOI=45 ./sboundary_test.sh
0013
0014 N=4 POLSCALE=10 AOI=BREWSTER ./sboundary_test.sh
0015
0016 EOU
0017 }
0018
0019 name=sboundary_test
0020 cd $(dirname $(realpath $BASH_SOURCE))
0021 export PYTHONPATH=$PWD/../../..
0022
0023 export FOLD=/tmp/$USER/opticks/$name
0024 mkdir -p $FOLD
0025
0026 n=16
0027 force=R
0028 aoi=CRITICAL
0029 n1=1.5
0030 n2=1.0
0031 b=1
0032
0033 export N=${N:-$n}
0034 export FORCE=${FORCE:-$force}
0035 export AOI=${AOI:-$aoi}
0036 export N1=${N1:-$n1}
0037 export N2=${N2:-$n2}
0038 export B=${B:-$b}
0039
0040 topline="opticks/sysrap/tests/sboundary_test.sh N:$N N1:$N1 N2:$N2 FORCE:$FORCE AOI $AOI B:$B "
0041 case $AOI in
0042 BREWSTER) topline="$topline (Polarizing angle)" ;;
0043 CRITICAL) topline="$topline (TIR: Total Internal Reflection, ie no refract)" ;;
0044 *) topline="$topline" ;;
0045 esac
0046 topline="$topline EYE $EYE LOOK $LOOK"
0047 export TOPLINE=${TOPLINE:-$topline}
0048 export GEOM=AOI_${AOI}
0049
0050
0051 cuda_prefix=/usr/local/cuda
0052 CUDA_PREFIX=${CUDA_PREFIX:-$cuda_prefix}
0053
0054
0055 defarg=build_run_ana
0056 arg=${1:-$defarg}
0057
0058 if [ "${arg/build}" != "$arg" ]; then
0059 gcc $name.cc \
0060 -std=c++11 -lstdc++ -lm \
0061 -I.. \
0062 -DMOCK_CURAND \
0063 -I$CUDA_PREFIX/include \
0064 -I$OPTICKS_PREFIX/externals/glm/glm \
0065 -I$OPTICKS_PREFIX/externals/plog/include \
0066 -o $FOLD/$name
0067
0068 [ $? -ne 0 ] && echo $BASH_SOURCE build error && exit 1
0069 fi
0070
0071 if [ "${arg/run}" != "$arg" ]; then
0072 $FOLD/$name
0073 [ $? -ne 0 ] && echo $BASH_SOURCE run error && exit 2
0074 fi
0075
0076 if [ "${arg/pdb}" != "$arg" ]; then
0077 ${IPYTHON:-ipython} --pdb -i $name.py
0078 [ $? -ne 0 ] && echo $BASH_SOURCE pdb error && exit 3
0079 fi
0080
0081 if [ "${arg/ana}" != "$arg" ]; then
0082 ${PYTHON:-python} $name.py
0083 [ $? -ne 0 ] && echo $BASH_SOURCE ana error && exit 4
0084 fi
0085
0086
0087 if [ "$arg" == "pvcap" -o "$arg" == "pvpub" -o "$arg" == "mpcap" -o "$arg" == "mppub" ]; then
0088 export CAP_BASE=$FOLD/figs
0089 export CAP_REL=sboundary_test
0090 export CAP_STEM=$GEOM
0091 case $arg in
0092 pvcap) source pvcap.sh cap ;;
0093 mpcap) source mpcap.sh cap ;;
0094 pvpub) source pvcap.sh env ;;
0095 mppub) source mpcap.sh env ;;
0096 esac
0097 if [ "$arg" == "pvpub" -o "$arg" == "mppub" ]; then
0098 source epub.sh
0099 fi
0100 fi
0101
0102
0103 exit 0
0104