-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
269 lines (254 loc) · 15.9 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
<!DOCTYPE html>
<html lang="en">
<head style="margin: 0; height: 100%; overflow: hidden">
<link type="text/css" rel="stylesheet" href="/PlasticPET-graphicx/css/styles.css" />
<link rel="stylesheet" href="https://use.typekit.net/uqq2lcv.css">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.1/css/all.css" integrity="sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf" crossorigin="anonymous" />
</head>
<body class="home-template" style="margin: 0; height: 100%;">
<div class="bkg"></div>
<div class="container">
<div style="overflow:hidden;">
<div class="card">
<h1 class="site-title" id="plasticpet-selected-plots">PlasticPET - Selected Plots</h1>
<ul>
<li>(*) Some plots have very poor statistics, but I haven't yet had a chance to regenerate them... </li>
<li>If you would like to use those, please tell me, and I will generate them ASAP (will take a day or two, since simulation is fairly slow).</li>
<li>I'm not sure how detailed of a presentation you plan to make, so I focused on a consise but comprehensive set.</li>
<li>With that said, the entire Surface Treatment section can be ignored, and showing all the validation plots on KNN & Reconstruction would be excessive.</li>
<li>All plots which mention <i>2 degrees</i> really mean around 1.3 degrees (the G4 polished value), I just rounded up the number when presenting.</li>
<li>All reconstructions need to be prequalified : <b>there is a known TOF bug</b> decreasing the available resolution</li>
<li>Hover over images to see full size (limited by screen size).</li>
</ul>
<p><a href="https://github.com/akhilsadam/PlasticPET-graphicx/archive/refs/heads/main.zip">Download as ZIP</a></p>
<h2 id="setup">SETUP</h2>
<h3 id="geometry">Geometry</h3>
<ul>
<li>I am assuming Mr. Proga has supplied this to satisfaction... </li>
</ul>
<h3 id="cross-section-material-definition">0-Cross-Section & Material Definition</h3>
<details open>
<summary>Details</summary>
<ul>
<li>EJ208 & SiPM Response</li>
</ul>
<div>
<img src="0-CrossSection/EJ208.png" alt=""> <img src="0-CrossSection/SiPM.jpg" alt="">
</div>
<ul>
<li>Geant4 Implementation of Polyvinyltoulene (PVT) against NIST standards: </li>
</ul>
<div>
<img src="0-CrossSection/PVT_G4_VS_NIST_CS.png" alt=""> <img src="0-CrossSection/PVT_G4_VS_NIST_L.png" alt="">
</div>
<ul>
<li>Geant4 Implementation of EJ208 (addition of Pb) against NIST standards: </li>
</ul>
<div>
<img src="0-CrossSection/PVT_G4_W_Pb_CS.png" alt=""> <img src="0-CrossSection/PVT_G4_W_Pb_L.png" alt="">
</div>
</details>
<h3 id="primitives">1-Primitives</h3>
<details open>
<summary>Details</summary>
<ul>
<li>Example Creation/Production & Detection Plots; to motivate looking at sum histograms.</li>
</ul>
<div>
<img src="1-Primitives/Creation.png" alt=""> <img src="1-Primitives/Detection.png" alt="">
</div>
</details>
<h3 id="surface-treatment-">2-Surface Treatment (*)</h3>
<h4 id="light-yield-across-varying-plastic-roughness-motivate-using-polished-crystal">Light Yield across Varying Plastic Roughness | Motivate using Polished Crystal</h4>
<details open>
<summary>Details</summary>
<ul>
<li>VK_sigmaalpha = 12 degrees, EJ_sigmaalpha = <code>[2deg, 12deg]</code> respectively. These values are from a previous G4 paper that used them to discriminate between rough and polished surfaces.</li>
</ul>
<div>
<img src="2-Surfaces/EJVK-2-12.png" alt=""> <img src="2-Surfaces/EJVK-12-12.png" alt="">
</div>
<ul>
<li>VK_sigmaalpha = 0.0001, EJ_sigmaalpha = <code>[0.0001,1.3deg,4deg,6deg,8deg,12deg,30deg]</code> respectively. All with 200 events. </li>
</ul>
<div>
<img src="2-Surfaces/EJVK-0.0001.png" alt="">
<img src="2-Surfaces/EJVK-1.3-0.0001.png" alt="">
<img src="2-Surfaces/EJVK-4-0.0001.png" alt="">
<img src="2-Surfaces/EJVK-6-0.0001.png" alt="">
<img src="2-Surfaces/EJVK-8-0.0001.png" alt="">
<img src="2-Surfaces/EJVK-12-0.0001.png" alt="">
<img src="2-Surfaces/EJVK-30-0.0001.png" alt="">
</div>
<ul>
<li>EJ & VK_sigmaalpha = <code>[1.3deg, 12deg]</code>, respectively. </li>
</ul>
<div>
<img src="2-Surfaces/EJVK-1.3.png" alt="">
<img src="2-Surfaces/EJVK-12.png" alt="">
</div>
</details>
<h4 id="reflection-suite">Reflection Suite</h4>
<details open>
<summary>Details</summary>
<li>Boundary Interactions (EJ_sigmaalpha,VK_sigmaalpha,EJ_reflectivity) = <code>[(2,-,0.95),(12,-,0.95),(2,12,0.95),(12,12,0.95),(2,12,1),(12,12,1)]</code>deg, respectively. Dash implies no VK. Note EJ208 is expected to have 100% *G4 reflectivity*
unless there is surface dirt! </li>
<div>
<img src="2-Surfaces/REJ-2.png" alt="">
<img src="2-Surfaces/REJ-12.png" alt="">
<img src="2-Surfaces/REJVK-2-12.png" alt="">
<img src="2-Surfaces/REJVK-12-12.png" alt="">
<img src="2-Surfaces/IREJVK-2-12.png" alt="">
<img src="2-Surfaces/IREJVK-12-12.png" alt="">
<img src="2-Surfaces/AEJ-2.png" alt="">
<img src="2-Surfaces/AEJ-12.png" alt="">
<img src="2-Surfaces/AEJVK-2-12.png" alt="">
<img src="2-Surfaces/AEJVK-12-12.png" alt="">
<img src="2-Surfaces/IAEJVK-2-12.png" alt="">
<img src="2-Surfaces/IAEJVK-12-12.png" alt="">
</div>
<li>Simple comparision of with and without VK.</li>
<div>
<img src="2-Surfaces/RSA-EJVK.png" alt="">
<img src="2-Surfaces/RSA-EJ.png" alt="">
</div>
<li>SigmaAlpha Summaries.</li>
<div>
<img src="2-Surfaces/SAS-1.jpg" alt="">
<img src="2-Surfaces/SAS-2.jpg" alt="">
<img src="2-Surfaces/SAS-3.jpg" alt="">
<img src="2-Surfaces/SAS-4.jpg" alt="">
<img src="2-Surfaces/SAS-5.jpg" alt="">
</div>
<li>Travel Protocol : number of surface interactions vs boundary time. SigmaAlpha is varied : <code>(EJ,VK) = [(1.3,1.3),(1.3,12),(12,1.3),(12,12)].</code></li>
<div>
<img src="2-Surfaces/alpha-1.3-1.3.png" alt="">
<img src="2-Surfaces/alpha-1.3-12.png" alt="">
<img src="2-Surfaces/alpha-12-1.3.png" alt="">
<img src="2-Surfaces/alpha-12-12.png" alt="">
</div>
</details>
<h3 id="KNN-">3-KNN</h3>
<li>Note Time of Flight error is sqrt(2)*KNN Time error, as the KNN operates on single Arrays, and is for single gammas.</li>
<h4 id="Valid">Validation</h4>
<details open>
<summary>Details</summary>
<li>KNN to predict gamma interaction position from photon #5-10 (by detection) on either side of the scintillator array.</li>
<li>First we have a PCA transformation, then a Mahalonobis transformation, then a test for the optimal k, and then a output-space visualization</li>
<li>Note for the output-space visualization, the time for the actual and KNN-predicted interaction is set to 0, which is why those points are not located with the rest.</li>
<div>
<img src="3-KNN/Valid/detRes_PCA.png" alt="">
<img src="3-KNN/Valid/detRes_PCA-MAHA.png" alt="">
<img src="3-KNN/Valid/detRes_KNN_OptimalNeighbors.png" alt="">
<img src="3-KNN/Valid/detRes_KNN_VISN.png" alt="">
</div>
</details>
<h4 id="RR">Point Source without Quantum Efficiency (rough EJ and VK --- 12 SigmaAlpha)</h4>
<details open>
<summary>Details</summary>
<li>The histogram is a light-yield histogram binned by z-position (axial).</li>
<li>The right reconstruction has been NLM (non-local-means) filtered.</li>
<li>Not showing complete reconstruction as we have the TOF bug to fix first.</li>
<div>
<img src="3-KNN/RR/Detected Photon Distributions_Total.png" alt="">
<img src="3-KNN/RR/detRes_Predictions_KNN_4_.png" alt="">
<img src="3-KNN/RR/detRes_training_KNN_4.png" alt="">
<img src="3-KNN/RR/renderLOR.jpg" alt="">
<img src="3-KNN/RR/renderArt.png" alt="">
<img src="3-KNN/RR/renderArt_NLM.png" alt="">
</div>
</details>
<h4 id="SS">Point Source without Quantum Efficiency (smooth EJ and VK --- 1.3 SigmaAlpha)</h4>
<details open>
<summary>Details</summary>
<li>The histogram is a light-yield histogram binned by z-position (axial).</li>
<li>The right reconstruction has been NLM (non-local-means) filtered.</li>
<li>Not showing complete reconstruction as we have the TOF bug to fix first.</li>
<div>
<img src="3-KNN/SS/Detected Photon Distributions_Total.png" alt="">
<img src="3-KNN/SS/detRes_Predictions_KNN_4_.png" alt="">
<img src="3-KNN/SS/detRes_training_KNN_4.png" alt="">
<img src="3-KNN/SS/renderLOR.jpg" alt="">
<img src="3-KNN/SS/renderArt.png" alt="">
<img src="3-KNN/SS/renderArt_NLM.png" alt="">
</div>
</details>
<h4 id="PSQE0">Point Source with Quantum Efficiency / PDE</h4>
<details open>
<summary>Details</summary>
<li>The histogram is a light-yield histogram binned by z-position (axial).</li>
<li>The right reconstruction has been NLM (non-local-means) filtered.</li>
<li> The complete reconstruction is inaccurate as we have the TOF bug to fix first.</li>
<div>
<img src="3-KNN/PSQE0/Detected Photon Distributions_Total.png" alt="">
<img src="3-KNN/PSQE0/detRes_Predictions_KNN_4_.png" alt="">
<img src="3-KNN/PSQE0/detRes_training_KNN_4.png" alt="">
<img src="3-KNN/PSQE0/renderLOR.jpg" alt="">
<img src="3-KNN/PSQE0/renderArt.png" alt="">
<img src="3-KNN/PSQE0/renderArt_NLM.png" alt="">
</div>
<div class="special">
<img src="3-KNN/PSQE0/renderArt_art.png" alt="">
</div>
</details>
<h3 id="Test-">4-Gamma Only Simulation (Test in <code>Python</code>)</h3>
<details open>
<summary>Details</summary>
<li>Direct generation and reconstruction of gamma.</li>
<li>First we have the full render, then gamma interaction positions, then the lines of response and lines of response center points.</li>
<div>
<img src="4-Test/renderI.png" alt="">
<img src="4-Test/renderI_centers.png" alt="">
<img src="4-Test/renderI_points.png" alt="">
</div>
</details>
<h3 id="Phantom-">5-Phantoms</h3>
<details open>
<summary>Details</summary>
<li>ICRP110 Phantom.</li>
<li>Radiation from brain (light-yield in singles, then paired gammas), then from bloodstream (light-yield only in paired gammas).</li>
<div>
<img src="5-Phantom/ICRP110.png" alt="">
<img src="5-Phantom/ICRP-Brain_singles.png" alt="">
<img src="5-Phantom/ICRP-Brain.png" alt="">
<img src="5-Phantom/ICRP-Blood.png" alt="">
</div>
</details>
<h3 id="Point-">6-Point Source Reconstruction (Spatial Resolution & Sensitivity)</h3>
<details open>
<summary>Details</summary>
<li>Still debugging a TOF bug that prevents results here.</li>
<li>First we will show two truth-renderings for a central point source(which also have the TOF bug), and then those of an inaccurate reconstruction.</li>
<li>A compounding error is the last plot, which depicts the component-wise distance of the random walk a gamma will take in the detector.</li>
<div>
<img src="6-Point/database_renderLOR.jpg" alt="">
<img src="6-Point/database_test_render.png" alt="">
</div>
<div>
<img src="6-Point/renderLOR.jpg" alt="">
<img src="6-Point/renderI.png" alt="">
</div>
<div>
<img src="6-Point/debug_Gamma_position.png" alt="">
</div>
</details>
<h1 class="site-title">Thank you for reading!</h1>
</div>
</div>
</div>
<script type="text/javascript">
var _gauges = _gauges || [];
(function() {
var t = document.createElement('script');
t.type = 'text/javascript';
t.async = true;
t.id = 'gauges-tracker';
t.setAttribute('data-site-id', '5eb65b115292fb396cffe189');
t.setAttribute('data-track-path', 'https://track.gaug.es/track.gif');
t.src = 'https://d2fuc4clr7gvcn.cloudfront.net/track.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(t, s);
})();
</script>
</body>
</html>