Testing Document For Cylindrical PET Detector Module
Last Revised: 20, May, 1999
A.1) Verify that the expected number of photons pass through the detector without interacting.
Simulate:
- 1,000,000 decays
- No Importance Sampling
- 511 keV Photons, minimum = 511
- Coherent scatter off
- Fixed Direction = true
Object:
- Point source at (0,0,0) in air
- radius = 15 cm
- z-axis = 1cm
Detector:
- Forced Interaction = false
- num rings = 1
- num layers = 1
- layer is active = true
- layer material = NaI (9)
- inner radius = 25 cm
- outer radius = 27 cm
- z-axis = 1 cm
Results
O = I(exp(-2mu*((1 probScatter) + (probScatter * comptonToScatterProb) ) ))
O = I(exp(-2*0.34107*((1 0.82801) + (0.82801*0.94434)) ) )
O = I(exp(-2(0.34107*0.95391)))
O = I * 0.52168
Expected Results = 1039941 ( = 1993448 *0.52168)
Actual Results = 1039544
A/E = 1.00
(A-E)/sqrt(E) = -0.39
-
A.2) Verify that the expected number of photons pass through the detector without interacting with multiple layers. Repeat A.1 modifying the detector in the following way:
Detector:
- Forced Interaction = false
- num rings = 1
- num layers = 4
- layer is active = true
- layer material = NaI (9)
- inner radius = 25 cm
- outer radius = 25.5 cm
- layer is active = true
- layer material = NaI (9)
- inner radius = 25.5 cm
- outer radius = 26 cm
- layer is active = true
- layer material = NaI (9)
- inner radius = 26 cm
- outer radius = 26.5 cm
- layer is active = true
- layer material = NaI (9)
- inner radius = 26.5 cm
- outer radius = 27 cm
- z-axis = 1 cm
Results (same formula as A.1)
O = I(exp(-2mu*((1 probScatter) + (probScatter * comptonToScatterProb) ) ))
O = I(exp(-2*0.34107*((1 0.82801) + (0.82801*0.94434)) ) )
O = I(exp(-2(0.34107*0.95391)))
O = I * 0.52168
Expected Results = 1039968 ( = 1993498 *0.52168)
Actual Results = 1039259.
A/E = 1.00
(A-E)/sqrt(E) = -0.70
-
B.1) Verify that Forced Interaction does not bias the data. Repeat the following simulation with and without forced interaction. Compare the binned results using a t-test.
Simulate: Same as A.2 except
- 30,000,000 decays
Coherent scatter = true
Fixed Direction = false
-
- Object:
Point source at (0,6,0) in air (use a 5x5 object)
-
Target: z-axis = 10 cm
Detector:
Forced Interaction = (TRUE & FALSE... two files)
z-axis = 10 cm
Binning:
Scatter Bins = 1 (there may be some coherent scatter events, but bin them in the same bin with the trues)
Num Z Bins = 4 ( 10cm extent)
Num TD Bins = 32
Num AA Bins = 32
Num Energy Bins = 1
- Num Energy Bins = 1
-
Results
Number of bins checked = 16384
Number of valid bins in set 'A' = 1062
Number of valid bins in set 'B' = 1551
Number of valid pairs found = 1062
Number of pairs with one valid and one too small = 489
Number of pairs with both > 0 but < min = 3271
Number of pairs with both zero = 11562
Num pairs with valid weights = 1062
Minimum T-Test value = -2.938
Maximum T-Test value = 2.676
0.0 <= |T-Test| <= 1.0 = 758 => %71.37
0.0 <= |T-Test| <= 2.0 = 1023 => %96.33
0.0 <= |T-Test| <= 3.0 = 1062 => %100.00
C.1) Validate detector tracking. Perform two simulations. The first should be a point source in air with a threefour-layer detector. The first layer should be non-active NaI and the second should be non-active BGOgraphite. The third should be a non-active air gap, and The the third fourth should be perfect absorber. For the second simulation, simulate the NaI and BGO graphite rings within the object and have a single layer detector of perfect absorber only.
Simulate (C1.1):
- 150,000,000 decays
- No Importance Sampling
- 511 keV Photons, minimum = 350
- Coherent scatter = true
Object:
- Point source at (0,6,0) in air (a 5x5 activity object with activity = 1 in the (0,6,0) voxel will match simulation C1.2)
- radius = 15 cm
- z-axis = 1cm
Detector:
- Forced Interaction = false
- num rings = 1
- num layers = 4
- layer is active = false
- layer material = NaI (9)
- inner radius = 15 cm
- outer radius = 16 cm
-
- layer is active = false
- layer material = BGO (10)graphite (12)
- inner radius = 16 cm
- outer radius = 17 cm
-
- layer is active = false
- layer material = air (0)
- inner radius = 17 cm
- outer radius = 19 cm
-
- layer is active = true
- layer material = Perfect Absorber (17)
- inner radius = 17 19 cm
- outer radius = 17.0119.01 cm
- z-axis = 1 cm
Binning:
- Scatter Bins = 1 (Set Max = 100)
- Num Z Bins = 2 ( 1cm extent)
- Num TD Bins = 32101 from -10 to 10
- Num AA Bins = 3264
- Num Energy Bins = 1, EMin = 350 keV
Simulate (C1.2):
- 40,000,000 decays
- No Importance Sampling
- 511 keV Photons, minimum = 350
- Coherent scatter = true
Object:
- Point source at (0,6,0) in air with NaI and graphite rings (a 17x17 activity object with activity=9 in the (0,6,0) voxel should match C1.1 above)
- num X bins = 10244096
- num Y bins = 10244096
- radius = 17 cm
- z-axis = 1cm
- Create a cylinder with r=17cm of BGOgraphite, and then a cylinder with r=16cm of NaI and then a cylinder with r=15cm of air.
Target:
- radius = 17 cm
Detector:
- Forced Interaction = false
- num rings = 1
- num layers = 12
- layer is active = true
- layer material = air (0)
- inner radius = 17 cm
- outer radius = 19 cm
- layer is active = true
- layer material = Perfect Absorber (17)
- inner radius = 17 19 cm
- outer radius = 17.0119.01 cm
- z-axis = 1 cm
Binning:
- Scatter Bins = 1 (Set Max = 100)
- Num Z Bins = 2 ( 1cm extent)
- Num TD Bins = 32101 from -10 to 10
- Num AA Bins = 3264
- Num Energy Bins = 1, EMin = 350 keV
Results
- Analysis of this test is quite involved and not well suited to displaying here. The following Microsoft Excel worksheet is available for looking at these results, Worksheet.
D.1) Validate detector multiple rings don't cause a problem..
- Simulate (D1.1):
- 1,000,000 decays
- No Importance Sampling
- 511 keV Photons, minimum = 511
- Coherent scatter = true
Object:
- Line source in air with NaI ring
- num X bins = 1
- num Y bins = 1
- radius = 15 cm
- z-axis = 16 cm
Detector:
- Forced Interaction = false
- num rings = 4
- num layers = 1
- layer is active = true
- layer material = NaI (9)
- inner radius = 15 cm
- outer radius = 18 cm
- z-axis = 4 cm
- num layers = 1
- layer is active = true
- layer material = NaI (9)
- inner radius = 15 cm
- outer radius = 18 cm
- z-axis = 4 cm
- num layers = 1
- layer is active = true
- layer material = NaI (9)
- inner radius = 15 cm
- outer radius = 18 cm
- z-axis = 4 cm
- num layers = 1
- layer is active = true
- layer material = NaI (9)
- inner radius = 15 cm
- outer radius = 18 cm
- z-axis = 4 cm
Binning:
- Scatter Bins = 1 (Set Max = 100)
- Num Z Bins = 4 ( 16cm extent)
- Num TD Bins = 32
- Num AA Bins = 32
- Num Energy Bins = 1
Simulate (D1.2):
- 1,000,000 decays
- No Importance Sampling
- 511 keV Photons, minimum = 511
- Coherent scatter = true
Object:
- Line source in air with NaI ring
- num X bins = 1
- num Y bins = 1
- radius = 15 cm
- z-axis = 16 cm
Detector:
- Forced Interaction = false
- num rings = 1
- num layers = 1
- layer is active = true
- layer material = NaI (9)
- inner radius = 15 cm
- outer radius = 18 cm
- z-axis = 4 cm
Binning:
- Scatter Bins = 1 (Set Max = 100)
- Num Z Bins = 4 ( 16cm extent)
- Num TD Bins = 32
- Num AA Bins = 32
- Num Energy Bins = 1
Results
- Compare results by performing T-Tests.
-
- Enter name of count file for simulation 'A': ct.d1
Enter name weight file for simulation 'A': wt.d1
Enter name of weight squared file for simulation 'A': wtsq.d1
Enter name of count file for simulation 'B': ct.d2
Enter name of weight file for simulation 'B': wt.d2
Enter name of weight squared file for simulation 'B': wtsq.d2
Enter size of header to skip [32768]:
- Number of bins checked = 16384
Number of valid bins in set 'A' = 1024
Number of valid bins in set 'B' = 1024
Number of valid pairs found = 1024
Number of pairs with one valid and one too small = 0
Number of pairs with both > 0 but < min = 2463
Number of pairs with both zero = 12897
-
- Do you want to continue (Yes..No) [Yes]:
Num pairs with valid weights = 1024
Minimum T-Test value = -2.794
Maximum T-Test value = 2.686
- 0.0 <= |T-Test| <= 1.0 = 683 => %66.70
0.0 <= |T-Test| <= 2.0 = 970 => %94.73
0.0 <= |T-Test| <= 3.0 = 1024 => %100.00
0.0 <= |T-Test| <= 2.79 = 1024, => %100.00