File indexing completed on 2026-04-10 07:50:29
0001
0002
0003 usage(){ cat << EOU
0004 viz.sh
0005 ========
0006
0007 Use qi first indices of each history as APID/BPID indices to viz::
0008
0009 In [1]: a.qtab_,a.qtab
0010 Out[1]:
0011 ('np.c_[qn,qi,qu][quo]',
0012 array([[b'900', b'0', b'TO BT SR BT SA '],
0013 [b'93', b'12', b'TO BT SA '],
0014 [b'2', b'600', b'TO BT SR BT AB '],
0015 [b'2', b'239', b'TO BR SA '],
0016 [b'1', b'484', b'TO BT SR BR SR BT SA '],
0017 [b'1', b'938', b'TO BT SR AB '],
0018 [b'1', b'964', b'TO BT AB ']], dtype='|S96'))
0019
0020 epsilon:tests blyth$ APID=484 ./viz.sh
0021
0022 Find some big bouncer BPID to look at::
0023
0024 In [4]: np.c_[np.where(b.n>5)[0], b.q[b.n>5]]
0025 Out[4]:
0026 array([[b'56', b'TO BT BR BR BR BT SA '],
0027 [b'865', b'TO BT BT BR BR SR SR SR SR SR SR SR SA '],
0028 [b'877', b'TO BT BT BR BR SR SR SA '],
0029 [b'896', b'TO BT BT BR SR SR SR SR SR SR SA '],
0030 [b'943', b'TO BT BT BR SR SR SR SR SR SA '],
0031 ...,
0032 [b'9057', b'TO BT BT BR SR SR SR SR SR SA '],
0033 [b'9073', b'TO BT BT BR SR SR SR SR SR BR SA '],
0034 [b'9076', b'TO BT BT BR SR SR SR SR SR SR SR SR BT BT SA '],
0035 [b'9092', b'TO BT BT BR SR SR SR SR SR SR SR BR BR BR BR SA '],
0036 [b'9107', b'TO BT BT BT BT SA ']], dtype='|S96')
0037
0038
0039
0040
0041 Photons with "SC" scatter out of the plane, use pyvista 3D plotting with::
0042
0043 MODE=3 BPID=... ./viz.sh
0044
0045
0046 Adjusting view and annotation for viaibility::
0047
0048 APID=10 FOCUS=0,0,260 TIGHT=1 ./viz.sh
0049
0050 BPID=9092 BOPT=idx,pdy FOCUS=0,0,280 TIGHT=1 HV_THIRDLINE=0.5,0.97 ./viz.sh
0051
0052
0053
0054 EOU
0055 }
0056
0057
0058 DIR=$(dirname $BASH_SOURCE)
0059
0060 defarg="ana"
0061 arg=${1:-$defarg}
0062 script=$DIR/U4SimtraceTest.sh
0063 aopt=idx
0064 bopt=idx
0065
0066 if [ -n "$APID" -a -n "$BPID" ]; then
0067 N=1 APID=$APID BPID=$BPID $script $arg
0068 elif [ -n "$APID" ]; then
0069 N=0 APID=$APID AOPT=${AOPT:-$aopt} $script $arg
0070 elif [ -n "$BPID" ]; then
0071 N=1 BPID=$BPID BOPT=${BOPT:-$bopt} $script $arg
0072 elif [ "$arg" == "runboth" ]; then
0073 N=0 $script run
0074 N=1 $script run
0075 else
0076 N=${N:-1} $script $arg
0077 fi
0078
0079
0080
0081
0082
0083