There is a wealth of details and curiosities (asymmetries, unexpected positions), but do they matter ?
Some will be artifacts of selection techniques, presentation techniques, truncation.
Avoid getting bogged down in these now until have Geant4 equivalents to compare against, otherwise risk spending time barking up the wrong trees. This will provide a candle against which it should be easier to see which aspects need attention.
So, in summary aim for Geant4 comparison earlier rather than later : once have interface into main features of the propagation. (currently missing surfaces).
Collect G4 steps into VBO like structure ?
Pushing up to –max-slots 30 reduces asymmetry peculiarities a lot. Ten slots (which is effectively 8 slots) is simply not enough. Pushing to –max-slots 100 suffers from crashes when in animation modes and slow interface in other modes.
With selection based on from/to materials. Peculiarities:
Tyvek,Tyvek 9755 # not real, just 0,0
GdDopedLS,Acrylic 6209 confetti and noodle modes show many steps starting on upper acylic of inner AD, almost none from the bottom
# large numbers along muon path are expected, its almost inevitable that any step staring inside GDLS is going to interesect to acrylic
udp.py --material GdDopedLS,ANY
# generalize, still almost nothing downwards
Acrylic,LiquidScintillator 5809
LiquidScintillator,Acrylic 5402
MineralOil,Acrylic 5000
Acrylic,MineralOil 3575
ESR,Air 2079
udp.py --material ESR,Air --style noodles,confetti ## almost all at base, pointed down
pushing up max-slots to 30 equalizes this a lot, so a truncation artifact
StainlessSteel,IwsWater 1178
Acrylic,Air 482
Acrylic,GdDopedLS 402 # huge asymmetry, whereas not for LS ?
MineralOil,Pyrex 306 # OK: Mostly just inside the MineralOil, nr Acrylic, and all pointing at PMTs. Top orthographic clearest
StainlessSteel,MineralOil 258
MineralOil,StainlessSteel 240
Air,ESR 237 udp.py --material Air,ESR --style noodles,confetti ## also, almost all at base
Vacuum,Bialkali 191 # efficiency ?
Pyrex,Vacuum 165 # OK: all inside PMTs, for clear view make geometry invisible with I
Bialkali,Vacuum 130
UnstStainlessSteel,MineralOil 82
Pyrex,MineralOil 59
IwsWater,IwsWater 16
Vacuum,OpaqueVacuum 14
StainlessSteel,Water 9
MineralOil,UnstStainlessSteel 8
LiquidScintillator,Teflon 8
LiquidScintillator,GdDopedLS 7
LiquidScintillator,MineralOil 6
GdDopedLS,LiquidScintillator 4
OwsWater,Pyrex 3
OpaqueVacuum,Vacuum 3
IwsWater,StainlessSteel 2
Teflon,LiquidScintillator 2
Water,StainlessSteel 2
StainlessSteel,GdDopedLS 2
StainlessSteel,NitrogenGas 2
OwsWater,UnstStainlessSteel 1
Air,Acrylic 1
IwsWater,Water 1
g4daeview.sh --load 1 --wipepropagate --debugkernel --debugphoton 0 --max-slots 30
54068 Tyvek,Tyvek # dummy
12936 LiquidScintillator,Acrylic
12365 Acrylic,LiquidScintillator
12324 MineralOil,Acrylic
9128 Acrylic,MineralOil
8646 GdDopedLS,Acrylic
2761 Acrylic,GdDopedLS
2678 ESR,Air
2169 Acrylic,Air
1425 StainlessSteel,IwsWater
1139 MineralOil,StainlessSteel
759 Air,ESR
697 Bialkali,Vacuum
655 MineralOil,Pyrex
638 Vacuum,Bialkali
636 Pyrex,Vacuum
525 Pyrex,MineralOil
295 StainlessSteel,MineralOil
255 Vacuum,Pyrex
240 Vacuum,OpaqueVacuum
226 OpaqueVacuum,Vacuum
105 UnstStainlessSteel,MineralOil
62 MineralOil,UnstStainlessSteel
50 UNKNOWN,UNKNOWN
30 LiquidScintillator,GdDopedLS
23 Teflon,LiquidScintillator
21 LiquidScintillator,MineralOil
19 GdDopedLS,LiquidScintillator
17 LiquidScintillator,Teflon
16 MineralOil,LiquidScintillator
10 StainlessSteel,Water
5 IwsWater,IwsWater
4 Air,Acrylic
3 StainlessSteel,GdDopedLS
3 GdDopedLS,Teflon
3 Water,StainlessSteel
3 OwsWater,Pyrex
3 Teflon,GdDopedLS
3 StainlessSteel,NitrogenGas
2 IwsWater,StainlessSteel
2 IwsWater,Water
1 OwsWater,UnstStainlessSteel
g4daeview.sh --load 1 --wipepropagate --debugkernel --debugphoton 0 --max-slots 100
304179 LiquidScintillator,LiquidScintillator # dummy zeros
20825 MineralOil,Acrylic
20400 LiquidScintillator,Acrylic
19592 Acrylic,LiquidScintillator
15015 Acrylic,MineralOil
11249 GdDopedLS,Acrylic
5097 Acrylic,GdDopedLS
3423 Acrylic,Air
2886 ESR,Air
2318 MineralOil,StainlessSteel
1680 StainlessSteel,IwsWater # all absorption steps presumably
1561 Bialkali,Vacuum
1128 Vacuum,Bialkali
1126 Pyrex,Vacuum
1094 MineralOil,Pyrex
1006 Pyrex,MineralOil
963 Air,ESR
526 Vacuum,Pyrex
466 Vacuum,OpaqueVacuum
454 OpaqueVacuum,Vacuum
371 StainlessSteel,MineralOil
189 LiquidScintillator,GdDopedLS
187 Teflon,LiquidScintillator
155 LiquidScintillator,MineralOil
123 UnstStainlessSteel,MineralOil
110 MineralOil,UnstStainlessSteel
95 GdDopedLS,LiquidScintillator
83 MineralOil,LiquidScintillator
65 LiquidScintillator,Teflon
51 UNKNOWN,UNKNOWN
15 IwsWater,StainlessSteel
14 Water,StainlessSteel
12 StainlessSteel,Water
6 IwsWater,IwsWater
6 IwsWater,Water
5 Air,Acrylic
3 GdDopedLS,Teflon
3 Teflon,GdDopedLS
3 StainlessSteel,GdDopedLS
3 OwsWater,Pyrex
3 StainlessSteel,NitrogenGas
2 Nitrogen,Water
1 Water,IwsWater
1 Vacuum,Acrylic
1 OwsWater,UnstStainlessSteel
1 Nitrogen,MineralOil
1 MineralOil,Nitrogen
1 MineralOil,Vacuum
1 Acrylic,Vacuum
1 Vacuum,MineralOil
Need to expand VBO to hold material info.
p_flags[1077] p_lht[1077]
[[ 10.017 10.017 ] [[ 1255 3 5 0] GdDopedLS Acrylic
[ 10.017 19.2213] [ 991 5 11 1] Acrylic LiquidScin
[ 10.017 19.3094] [ 635 11 5 2] LiquidScin Acrylic
[ 10.017 21.8971] [ 371 5 6 3] Acrylic MineralOil
[ 10.017 22.0028] [632049 5 1 4] Acrylic Air
[ 10.017 22.0614] [632341 1 4 5] Air ESR
[ 10.017 22.0616] [632354 4 1 6] ESR Air
B_ABSORB [ 10.017 22.0616] [ -1 4 1 7] ESR Air
B_ABSORB [ 10.017 22.0616] [ -1 4 1 7] ESR Air
B_ABSORB [ 10.017 22.0616]] [ -1 4 1 7]] ESR Air
p_post[1077] p_dirw[1077] p_polw[1077] p_ccol[1077]
[[ -18007.123 -799808.25 -7062.793 10.017 ] -1 [[ -0.2251 0.4768 -0.8497 487.7488] [[ 0.7983 -0.4097 -0.4414 1. ] [[ 1. 1. 1. 1.]
[ -18423.6504 -798926. -8635. 19.2213] 1850.32 [ -0.224 0.4745 -0.8513 487.7488] [-0.3634 0.7698 0.5247 1. ] [ 1. 1. 1. 1.]
[ -18427.5977 -798917.625 -8650. 19.3094] 17.6273 [ -0.2251 0.4768 -0.8497 487.7488] [-0.3628 0.7684 0.5273 1. ] [ 1. 1. 1. 1.]
[ -18544.6973 -798669.625 -9092. 21.8971] 520.173 [ -0.224 0.4745 -0.8513 487.7488] [-0.3634 0.7698 0.5247 1. ] [ 1. 1. 1. 1.]
[ -18549.4336 -798659.5625 -9110. 22.0028] 21.1586 [ -0.2287 0.4843 -0.8445 487.7488] [-0.3605 0.7637 0.5356 1. ] [ 1. 1. 1. 1.]
[ -18552.1133 -798653.875 -9119.9004 22.0614] 11.728 [ -0.3425 0.7255 -0.5969 487.7488] [-0.2548 0.5397 0.8023 1. ] [ 1. 1. 1. 1.]
[ -18552.1426 -798653.8125 -9119.9502 22.0616] 0.0851179 [ -0.3426 0.7257 -0.5966 487.7488] [-0.2547 0.5395 0.8026 1. ] [ 1. 1. 1. 1.]
[ -18552.1426 -798653.8125 -9119.9502 22.0616] 0.0 [ -0.3426 0.7257 -0.5966 487.7488] [-0.2547 0.5395 0.8026 1. ] [ 1. 0. 0. 1.]
[ -18552.1426 -798653.8125 -9119.9502 22.0616] 0.0 [ -0.3426 0.7257 -0.5966 487.7488] [-0.2547 0.5395 0.8026 1. ] [ 1. 0. 0. 1.]
[ -18334.7812 -799114.25 -8299.5605 17.2575]] 965.551 [ -0.2251 0.4768 -0.8497 487.7488]] [ 0.7983 -0.4097 -0.4414 1. ]] [ 1. 1. 1. 1.]]
t_post[1077] t_dirw[1077] t_polw[1077] t_ccol[1077]
Despite the crash when attempt to animate, can use other modes with –max-slots=100 which eliminates trunctions.:
g4daeview.sh --load 1 --wipepropagate --debugkernel --debugphoton 0 --max-slots 100
Interface is slow however. The photon disappearance technique does not prevent the processing of the invisibles.
daephotonsanalyzer.sh --load 1
In [2]: z.tl.min(), z.tl.max()
Out[2]: (0.0, 254.15379)
In [4]: np.where(z.tl > 200)
Out[4]:
(array([ 181, 415, 809, 1127, 1230, 1244, 1305, 1784, 1798, 1852, 1856,
2365, 2439, 2547, 2593, 2799, 2926, 2938, 3024, 3077, 3158, 3655,
3659, 3831]),)
udp.py --sid 181 --style spagetti,confetti,noodles