Citation |

- Permanent Link:
- https://ufdc.ufl.edu/AA00031845/00001
## Material Information- Title:
- Beta particle dosimetry of the trabecular region of a thoracic vertebra utilitizing NMR microscopy
- Creator:
- Jokisch, Derek W., 1973-
- Publication Date:
- 1999
- Language:
- English
- Physical Description:
- vi, 236 leaves : ill. ; 29 cm.
## Subjects- Subjects / Keywords:
- Bone marrow ( jstor )
Bones ( jstor ) Dosage ( jstor ) Dosimetry ( jstor ) Electrons ( jstor ) Geometry ( jstor ) Integers ( jstor ) Microscopy ( jstor ) Spine ( jstor ) Subroutines ( jstor ) Dissertations, Academic -- Nuclear and Radiological Engineering -- UF ( lcsh ) Magnetic resonance imaging ( lcsh ) Nuclear and Radiological Engineering thesis, Ph.D ( lcsh ) - Genre:
- bibliography ( marcgt )
non-fiction ( marcgt )
## Notes- Thesis:
- Thesis (Ph.D.)--University of Florida, 1999.
- Bibliography:
- Includes bibliographical references (leaves 223-235).
- General Note:
- Typescript.
- General Note:
- Vita.
- Statement of Responsibility:
- by Derek W. Jokisch.
## Record Information- Source Institution:
- University of Florida
- Rights Management:
- The University of Florida George A. Smathers Libraries respect the intellectual property rights of others and do not claim any copyright interest in this item. This item may be protected by copyright but is made available here under a claim of fair use (17 U.S.C. Â§107) for non-profit research and educational purposes. Users of this work have responsibility for determining copyright status prior to reusing, publishing or reproducing this item for purposes other than what is allowed by fair use or other copyright exemptions. Any reuse of this item in excess of fair use or other copyright exemptions requires permission of the copyright holder. The Smathers Libraries would like to learn more about this item and invite individuals or organizations to contact the RDS coordinator (ufdissertations@uflib.ufl.edu) with any additional information they can provide.
- Resource Identifier:
- 030475411 ( ALEPH )
43164441 ( OCLC )
## UFDC Membership |

Downloads |

## This item has the following downloads: |

Full Text |

BETA PARTICLE DOSIMETRY OF THE TRABECULAR REGION OF A THORACIC VERTEBRA UTILIZING NMR MICROSCOPY By DEREK W. JOKISCH A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 1999 ACKNOWLEDGEMENTS First, I would like to thank my colleagues in the Department of Nuclear and Radiological Engineering. The "bone group" of Phillip Patton, Didier Rajon, and Lionel Bouchet was a great help throughout this research. I would also like to thank my committee and the faculty in the department for all of their help. Dr. Wesley Bolch has provided the enthusiasm, encouragement, and leadership that have made this research successful. Dr. Ben Inglis at the University of Florida Brain Institute provided help with the training and troubleshooting necessary for the NMR image acquisitions. In addition, I would like to specifically thank Dr. Bolch and Dr. David Hintenlang for the guidance they have provided throughout my graduate education. I would like to thank my parents for providing tremendous support throughout all my years. Finally, I would like to thank my wife, Kelly, for her patience and support over the last four years. This research was performed under appointment to the Nuclear Engineering/Health Physics Fellowship Program administered by the Medical University of South Carolina for the U.S. Department of Energy. TABLE OF CONTENTS ACKNOWLEDGEMENTS ..................................................................... i A B ST R A C T ....................................................................................... v CHAPTERS 1 INTRODUCTION ............................................................................. 1 2 THE MEASUREMENT OF CHORD DISTRIBUTIONS IN DIGITAL IMAGES.. 4 Introduction .................................................................................... 4 Chord Distributions ........................................................................ 4 Chord Distributions across a Square/Rectangle ........................................ 5 Chord Distributions across Spherical Objects ......................................... 9 Relationship between p- and I-random Chord Distributions ........................ 10 Materials and Methods ........................................................................ 11 Chord Lengths across Voxelized Cube .................................................. 11 Chord Lengths across Voxelized Sphere ................................................ 11 Results and Discussion ........................................................................ 13 Chord Lengths across Voxelized Cube .................................................. 13 Chord Lengths across Voxelized Sphere ................................................ 13 C onclusion ..................................................................................... . 14 3 MEASUREMENT OF TRABECULAR CHORD DISTRIBUTIONS FROM NMR MICROSCOPIC IMAGES FOR SKELETAL DOSIMETRY ............................. 29 Introduction ..................................................................................... 29 Bone Structure/Physiology ............................................................... 29 B one C ell T ypes ........................................................................... 30 Factors in Trabecular Microstructure Variation ....................................... 31 Past Skeletal Dosimetry Work and Models ............................................. 33 Modem Imaging Techniques for Studying Trabecular Bone Architecture ......... 35 Materials and Methods ........................................................................ 38 Specimen Preparation .................................................................... 38 Im aging H ardw are .......................................................................... 39 Im age Processing ........................................................................... 40 Chord Distribution Acquisition ........................................................... 43 Functions whichMed and changeMed ................................................... 44 Use of Step Sizes in Chord Distribution Program .................................... 45 Statistical Independence of Bone and Marrow Chord Lengths ...................... 45 Results and Discussion ........................................................................ 46 Estimates of Trabecular and Marrow Cavity Chord Distributions .................. 47 Statistical Dependence of Chord Distributions ......................................... 50 C onclusion ...................................................................................... 5 1 4 A NEW METHOD FOR BETA-DOSIMETRY OF THE TRABECULAR SKELETON USING MONTE CARLO TRANSPORT IN VOXELIZED NMR IM A G E S .......................................................................................... 7 1 Introduction ..................................................................................... 7 1 Chord Length Distribution Based Dosimetry Models ................................. 71 Possible Limitations of Chord Length Distribution Based Dosimetry Models .... 74 Electron Gamma Shower 4 ............................................................... 77 Materials and Methods ........................................................................ 77 Voxel Transport in EGS4 .................................................................. 77 Details of Voxel Array Transport Code ................................................. 78 Using Image as Input to Voxel Transport ............................................... 81 Details of Bone Array Transport Code .................................................. 82 Method for Scoring Dose in the Endosteal Region .................................... 85 The Infinite Trabecular Transport Model ............................................... 85 Details of Infinite Transport Code ....................................................... 86 The Macro-Thoracic Transport Model .................................................. 87 Details of Thoracic Transport Code ...................................................... 89 Method of S-Value Calculations ......................................................... 91 Results and Discussion ........................................................................ 94 Voxel Array Transport ..................................................................... 94 "BoneArray" Transport .................................................................... 95 Infinite Array Transport ................................................................... 95 Macro Thoracic Transport ................................................................ 96 Method of Scoring Endosteal Dose ...................................................... 98 Comparisons to Chord Length Distribution Based Models ......................... 98 C onclusions ..................................................................................... 102 5 SUMMARY AND CONCLUSIONS ....................................................... 130 APPENDIX A CHORD DISTRIBUTION ACQUISITION PROGRAM ............... 133 APPENDIX B VOXEL ARRAY EGS4 USER CODE ..................................... 143 APPENDIX C BONEARRAY EGS4 USER CODE ........................................ 153 APPENDIX D INFINITE TRABECULAR BONE EGS4 USER CODE ................ 173 APPENDIX E MACRO-THORACIC VERTEBRA EGS4 USER CODE ............... 194 R EFER EN C E S ................................................................................... 223 BIOGRAPHICAL SKETCH ................................................................... 236 Abstract of Dissertation Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy BETA PARTICLE DOSIMETRY OF THE TRABECULAR REGION OF A THORACIC VERTEBRA UTILIZING NMR MICROSCOPY By Derek W. Jokisch August 1999 Chairman: Dr. Wesley E. Bolch Major Department: Nuclear and Radiological Engineering Radiation damage to the hematopoietic bone marrow represents the primary limiting factor to the further development of internal emitter therapies such as radioimmunotherapy and the use of incorporated radiopharmaceuticals for bone pain palliation. Improvements in radiation dosimetry of bone marrow are believed to be a prerequisite to accurate predictions of myelotoxicity for these radionuclide therapies. Current radiation dosimetry models for the prediction of marrow dose utilize a scheme in which separate calculations of cumulated activity and dose per transition (radionuclide S value) must be made. The selection of an appropriate S value is generally limited to one of only three sources, all of which use as input the trabecular microstructure of an individual measured 20 years ago, and the tissue masses derived from different individuals measured 70 years ago. This work improves on previously developed methods, which may be used to expand the microstructural database (particularly for non-Reference Man patients). Techniques were developed to avoid voxel effects that arise when taking microstructural measurements across a digitized image. In addition, this work developed a basis for comparison of the existing dosimetry models to an accurate methodology allowing for radiation transport in a voxelized image. The images used are obtained using NMR microscopy methods. This work will be the first of its kind in skeletal dosimetry in that it will allow for S-value calculation using microstructural and mass data from the same source. A new method for performing skeletal dosimetry was developed, and absorbed fraction results are found to be consistent in shape with other models. At electron energies less than 100 keV, all models studied were found to be consistent for all source and target combinations. Finally, a dose example comparing accepted methodologies with the one developed in this study illustrated the variance and importance of skeletal tissue masses used in calculating S-values and absorbed dose. CHAPTER 1 INTRODUCTION Due to the important role bone plays in both the skeletal and hematopoietic systems, radiation doses to the skeleton have important consequences. Not only is bone serviced by a complex vascular system, but it also serves as the "housing" for the hematopoietic marrow, which is responsible for the production of blood cells. The interlaced geometry of the bone and marrow regions necessitates that a discussion of the radiation dose to one region can not take place without discussing the effect it has on the other system. In other words, radiation treatment of an osteosarcoma, or bone tumor, is limited by the corresponding radiation damage to healthy marrow. Conversely, ablation of marrow by irradiation for the purposes of marrow transplants is limited by the radiation damage to healthy osteogenic tissue. Accurate internal dosimetry of the trabecular skeleton is important both within the fields of radiation protection and medical physics. Within the radiation protection field, several radionuclides preferentially seek out the skeletal system upon inhalation or ingestion. Strontium-90 and Radium-226 are examples of two radionuclides that have been studied extensively over the last 50 years (Hindmarsh et al. 1958; Vaughan 1960; Spiers 1966a; Spiers 1967; Spiers 1969; Vaughan 1973; Polig et al. 1992). Presently, the U.S. Department of Energy (DOE) faces an enormous challenge in the environmental clean-up and waste management of its facilities. Overall, there are 137 sites with 10,000 individual remediation units and 7,000 contaminated buildings that must be safely dismantled (U. S. Department of Energy 1995). Over half the radionuclides that pose an inhalation hazard to workers during decontamination and decommissioning (D&D) activities are known to localize within the skeleton. As both the Nuclear Regulatory Commission and DOE have established criteria for D&D activities that are now dosimetry-based, accurate and nonconservative models for radiation dose to the skeleton become increasingly important in making cost-effective decisions on cleanup efforts. Recent advancements in nuclear medicine have added new reasons for being concerned with trabecular dosimetry. In radioimmunotherapy applications, dose to the bone marrow has been established as a limiting factor (Rubin and Scarantino 1978; Siegel et al. 1990; Sgouros 1993; Sgouros et al. 1996; Zanzonico and Sgouros 1997). Another internal therapeutic application of beta-emitting skeletal-seeking radionuclides is for bone pain palliation in patients with painful osteosarcomas (Payne 1608; Potsaid et al. 1978; Poulsen et al. 1989; Ackery and Yardley 1993; Collins et al. 1993; Porter and Chisholm 1993; Silberstein 1993; Atkins et al. 1995; Hoskin 1995a; Hoskin 1995b; Kan 1995; Twycross 1995; Silberstein 1996; Ben-Josef and Porter 1997; Janjan 1997; Krishnamurthy et al. 1997; Mercandante 1997; Goddu et al. 1999; Dawson et al. 1999). Unfortunately, the mechanism that contributes to patient relief is not well understood. While it is beyond the scope of this specific research project, a better understanding of the radiation dosimetry of the trabecular region could result in a better understanding of the palliative phenomenon. It is well known that radiation can lead to cancers in both the skeletal and hematopoietic systems. Of these cancers, osteosarcomas and leukemia are of major concern. Furthermore, it is six times more likely that an osteosarcoma will develop on trabecular surfaces than on cortical endosteum (Spiers et al. 1977) due to the fact that trabecular bone has six times the surface area of cortical bone (Vaughan 1973). Consequently, it becomes important to accurately determine the absorbed dose to this tissue for differing therapy agents and treatment regimes. With improved dosimetric models for trabecular regions, unintended risks associated with these therapies may be reduced. This work was initiated four years ago in an effort to find out if improved methods existed for obtaining the microstructural data traditionally used in trabecular dosimetry. The next chapter describes the modality chosen for obtaining this microstructural data using NMR microscopy. In addition, the characteristics of acquiring this unique set of geometrical data are described. Potential problems arise when acquiring data from digital images. These problems are identified, and solutions are presented. Chapter 3 presents the results obtained from two separate images of the same human thoracic vertebral sample. These results can then be used as input for a trabecular bone dosimetry model. Finally, Chapter 4 presents an alternative, and innovative method for performing dosimetrv in the trabecular skeleton. The images are directly coupled to radiation transport codes allowing for voxelized transport in the real (digitized) structure. The results are then used to compare with traditional methods of performing trabecular dosimetry. CHAPTER 2 THE MEASUREMENT OF CHORD DISTRIBUTIONS IN DIGITAL IMAGES Introduction F. W. Spiers, in his work with skeletal dosimetry, was the first to recognize that trabecular bone dosimetry required detailed knowledge of trabecular microstructure (Spiers and Overton 1962; Spiers 1963). His research group at the University of Leeds developed a method for performing skeletal dosimetry using frequency distributions of straight-line path lengths through bone and marrow regions. The current study looks at the methods for obtaining these distributions and the characteristics of measuring them within digital images. Chord Distributions The current accepted method of performing beta-particle dosimetry in trabecular bone relies on distributions of path or chord lengths through the trabecular site of interest. The frequency of chord lengths through bodies has been studied for applications varying from acoustics to ecology (Kellerer 1971). Chord lengths are defined by the intersection of a straight line or ray with two boundaries. There are a variety of methods for obtaining these distributions dependent on the origin and direction of the rays relative to the object. As pointed out by Eckerman (Eckerman et al. 1985), "Failure to note the distinct nature of these distributions can result in misunderstanding of some aspects of the radiation transport processes." Three fundamental methods of randomly obtaining these frequency distributions are relevant in trabecular dosimetry. 1. Mean-free-path randomness (or l-randomness). A chord of a convex body is defined by a point in space and a direction. The point and the direction are chosen randomly from independent uniform distributions. This kind of randomness results, for example, if the convex body is exposed to a uniform, isotropic field of straight lines. 2. Interior radiator randomness (or I-randomness). A chord is defined by a point in the interior of the convex body and a direction. The point and the direction are chosen randomly from independent uniform distributions. This kind of randomness results, for example, if the convex body contains a uniform distribution of point sources, each of which emits radiation isotropically. 3. Surface radiator randomness (or S-randomness). A chord is defined by a point on the surface of the convex body and a direction. The point and the direction are chosen randomly from independent uniform distributions. This kind of randomness results, for example, if the surface of a convex body contains a uniform distribution of point sources, each of which emits radiation isotropically (Kellerer 1971). Mean free path randomness was utilized by Beddoe in the work of Spiers at the University of Leeds (Beddoe et al. 1976), and is the method used at the University of Florida (Jokisch et al. 1998b; Bouchet et al. 1999b). Several people have studied the mathematics of chord distributions across simple geometric shapes (Coleman 1969; Kellerer 1971; Eckerman et al. 1985). Chord Distributions across a Square/Rectangle Of particular interest in this study is the nature of chord distributions across rectangles, the typical shape of pixels within a digital image. Fig. 1 is an illustration of rays crossing a square at a given angle. For a given angle of incidence, 0, there is a maximum chord length occurring when the ray is able to reach the opposite side of the square. This maximum chord length is equal to W *secO, Eq. 1 where W is the dimension of the square. Thus, 6= arccos(-KL, Eq. 2 where L is the length of the maximum chord. The relative number of chords with this length is going to be proportional to W-x, since there is a chord fired from an equally spaced distance along the side of the square. The dimension x = W tanO. Eq. 3 Setting f(L)=W-x, where f(L) is the frequency of chords of length L, results in f(L) = W I - tan ~arccos( -~] Eq. 4 This equation results in the curve shown in Fig. 2. When viewed within a larger distribution of chord lengths from a digital image, this pixel effect "A" will result in a series of spikes with the tail shown in Fig. 2. Also obvious in Fig. I is the fact that a linear distribution of chord lengths of length less than W*sec(O) will be measured. These chords will be measured with an equal frequency regardless of angle of incidence for chords of length less than W. Consequently, as a result of pixel effect "B", a straight line of equal non-zero probability is expected leading up to the length equal to the pixel size. For chords from length W to W*sec(Om,), there will be a linear decrease in the frequency of chords since the frequency of the angles is equal. Note that 0.x = 450 for a square, so sec(0,ï¿½) = 1.414. For a square pixel resolution of 59 gim, this maximum reach of pixel effect "B" will extend out to 83 gim. Obviously in the range from 59-83 gim, or W to W*sec(O x), this effect is superimposed by pixel effect "A". To summarize the two pixel effects, there are contributions from chords resulting from rays traversing from one side of the pixel to the opposite side (effect "A") and from chords resulting from rays traversing from one side to an adjacent side of a pixel (effect "B"). The chord distribution across a square has also been derived by Kellerer (Kellerer 1971), yielding forL < W f(L)= {L 2W 2 for W < L < 2W Eq. 5 [L2V-2 2W Note that this equation includes both pixel effects for the region from W to W*sec(O). For the case of rectangular pixels, pixel effect "B" is slightly more complicated. Fig. 3 represents rays crossing a rectangular pixel. For this case it is necessary to determine the Om where the largest chord distribution will switch from IWxsec(8) to IWycsc(O). Since 0m = arctan{(WY 1, Eq. 6 L W, sec(0 , for0 = + 0,,900+ 0 -+ 1800 +0,.,2700+ 0,. - 3600 Lmax = Ijwy sec(0 , for 0 0,. -- 900 +m0,1800 +0,, - 2700,G Eq. 7 This relationship will be used later to attempt to remove these pixel effects from the final measured chord length distributions. Pixel effect "A" results in a chord distribution containing spikes as shown in Fig. 4. This distribution was obtained from a NMR image of a human trabecular bone. Since the pixels have a finite resolution, a chord length is not accurate to a level of 1.0 Am, so it is necessary to group the data, or place it into bins of some width. Grouping the data thus removes the presence of the pixel effect peaks. A bin-width equal to the smallest resolution is chosen in order to produce a smoother distribution, which is just as useful in dosimetry models. Coleman (1969) has derived the g-chord distributions through a cube of unit width. The result is as follows: 8/3 -3/e' for 0 < L 1 3e f(L) 6r+ I- 8(2L2+l)WT- forl The shape of this distribution is plotted in Fig. 5 and compared to that of the square. Data acquisition at the University of Leeds was performed in two dimensions. Of course, the desired end result is a set of distributions that describes the omnidirectional pathlengths of beta particles through the trabecular region. These are obtained by combining the chord distributions of each of the three orthogonal planes. "In the case of bones which show no apparent symmetry, scans in three orthogonal planes can be combined directly to give an omnidirectional distribution" (Beddoe et al. 1976). If the Beddoe statement of directly combining 2D chords from orthogonal planes is true, these two shapes in Fig. 5 should match up. Three orthogonal planes through a cube would result in chords form three sets of two-dimensional squares, which when combined would be the distribution for a square, not of that for a cube. However, the shapes are very similar, and for dosimetry purposes probably do not result in significant differences. Chord Distributions across Spherical Objects The relationships for chord distributions in a circle and in a sphere are easily derivable. For the circle shown in Fig. 6 where R is the radius, and L is the distance of a chord crossing the circle at a point y, L = 2x Eq. 9 x2 + y2 = R2 Eq. 10 y=ï¿½ R2- Eq. 11 dy +L Eq. 12 dL 4 R2_(L)2 The chord lengths L, are fired uniformly across the circle from -R to R, so the probability density function of y is Ay) =1 Eq. 13 2R Since each given chord length L occurs twice over the range of y = -R to R, the probabilities of y and L are related by 2f(y)dy = f(L)dL. Eq. 14 Substituting Eqs. 12 and 13 into Eq. 14 yields: dyL 1 L J Eq. 15 f(L)2f~y =R 4 R-L] L Eq. 16 4RF R2- Similar techniques are used to derive the chord distribution across a sphere. The resulting frequency distribution is f(L) L Eq. 17 The mathematically derived distributions for a circle and a sphere are compared in Fig. 7. Relationship Between p- and I-random Chord Distributions The chord distribution based dosimetry models utilize the A-random chord distributions for their input. However, it is also necessary to use I-random chords in the model of Bouchet et al. (Jokisch et al. 1998b; Bouchet et al. 1999b). This model samples from an I-random distribution for the first "shell" when a particle originates. To derive an I-random chord distribution from a p-random chord distribution, the following relationship can be used: d f, (d)= f (d), Eq. 18 (d)1, ' where fi(d) and f,,(d) are the probability density functions for chord lengths under I- and g-randomness, respectively, and In addition, there is a relationship between the mean t-chord length and the surface to volume ratio (Eckerman et al. 1985). This relationship is given by Cauchy's theorem: (x) =4-. Eq. 19 S This relationship will be used later for comparison to the measured value of the surface to volume ratio. Materials and Methods In order to study the consequences of measuring chord lengths in a voxelized digital image, studies were done on a couple of different simple voxelized shapes. First, chords were measured across a cube in order to verify the relationships discussed previously. Next, a three-dimensional digital image was created of a sphere. Obviously, a voxelized sphere no longer maintains the smooth edges that a mathematical sphere would have. The chord distributions for a sphere have been mathematically derived, and provide a method for quantifying effects pixels or voxels have on the measured chord distributions. Chord Lengths across Voxelized Cube Chords were acquired across a voxelized cube, to assess what changes might be seen in the chord distributions across each geometry. Chord Lengths across Voxelized Sphere Next, chord distributions were acquired across a voxelized sphere. First a sphere composed digitally of cubical voxels was created. Chord distributions across this body were then acquired using a variety of different methods. Chord distributions can be acquired in either two dimensions or in three dimensions. In fact, up to this point, chord distributions for skeletal dosimetry have only been acquired using two-dimensional techniques. Previous work at the University of Florida (Jokisch 1997; Jokisch et al. 1998b), as well as at the University of Leeds, obtains chord distribution measurements in multiple two dimensional slices from each of three orthogonal planes. In this work, however, three-dimensional images have been obtained and acquisition is not limited to the two dimensional studies performed at Leeds. Acquiring chord distributions with both two-dimensional and three-dimensional techniques and comparing the results can test the Beddoe statement. The method used to acquire chord distributions uses parallel isotropic rays fired across an image. When the ray intersects two boundary points, the distance of the resulting chord is measured. This distance is the measured chord length. These methods are simple enough when dealing with a continuous object. They become more difficult when dealing with voxelized objects due to the voxel effects discussed and derived in the introduction. To overcome these effects, three different methods for acquiring chord distributions have been developed. The first method is rather straightforward in that every chord length is measured regardless of its size or origin. This method will be referred to as the "pure" method. The second method insures that each measured chord crosses from one side of a voxel to an opposite side. In other words, chords that result from a ray crossing one side of a voxel, and then hitting an adjacent side are ignored. Mathematically the measured chord length is compared to a calculated minimum distance that is based on the angle at which the ray is traveling relative to the voxel. These calculations come from the equations derived in the introduction. This method will be referred to as the "Large-1" method. Essentially, the "Large_l" method guarantees that the ray moves one resolution distance in either the x or y (or z in 3D) dimension. The "Large_2" method goes a step further in that it guarantees that the ray move a resolution distance in all two (or three) dimensions if a chord length is to be measured. Fig. 8 is a visual depiction of the two "large" methods. In this study, chords will be acquired using all three methods and the results compared. In addition, this will be done using both two and three-dimensional techniques. Results and Discussion Chord Lengths across Voxelized Cube Chord lengths were acquired across a voxelized cube. The cube was placed orthogonal to the voxelization, such that there would not be any geometrical differences between a mathematically "perfect" cube and the voxelized cube. The results are shown in Fig. 9. The cube was set to have a unit length, width, and height. Fig. 9 shows good agreement between the mathematically derived and measured results. The peaks that are seen in the measured sample after unit width are due to angular sampling. Chords are fired in discrete angles, and as the discrete step is decreased, the distribution would smooth into the neighbor values. Firing chords over many angles quickly becomes computer-time limited, and may not be necessary for accurate dosimetry. Chord Lengths across Voxelized Sphere For this study, chords were fired across a voxelized sphere and compared to the theoretical result. Unlike the cube, the voxelized sphere does have a slightly different geometry from the "perfect" sphere. Chords were fired using the three different methods described earlier (each of the three methods in both 2D and 3D). Fig. 10 displays the measured chord distributions across the voxelized sphere of radius equal to 500 units using two and three-dimensional techniques. There is a difference at very low distances due to differences in the voxel effects that three dimensional acquisition pick up, while two dimensional techniques do not. However, it is interesting to observe that the general shape of the two dimensional results match the expected spherical distribution, and not the circular distribution (from Fig. 7). Fig. 11 displays the results for the pure, "Largel ", and "Large_2" acquisitions. These results were all obtained using three-dimensional acquisition of the chord lengths. The pure method results in the greatest peak at small chord lengths, followed by the "Large-1" technique as expected. It is important to note that the three techniques only vary at these small chord lengths and that the general shape of the distribution for the body being measured is preserved in all cases. Fig. 12 illustrates this point further by comparing the "Large_l" and "Large_2" results with the expected mathematical result from a "perfect" sphere. The frequency of the small chords is critical when calculating the average chord length. All six acquisitions produce a different mean chord length as shown in Table 1. The "Large_2" method resulted in mean results closest to those of the non-voxelized "perfect" sphere. Conclusion The problems associated with acquiring p-random chord distributions in voxelized objects have been discussed. It is concluded that voxel effects should be minimized, and two different methods have been presented for doing this. It is recommended that the "Large_2" method should be used to acquire chords across voxelized surfaces. Note that small differences do exist between two-dimensional and three-dimensional acquisitions. These differences are probably too small to make significant differences in skeletal dosimetry. Nevertheless, the three-dimensional 15 acquisition method is considered more accurate and will be utilized in future studies of chord distributions in human trabecular bone samples imaged via NMR microscopy. 16 Table 1. Mean chord lengths for the various methods in a voxelized sphere. Method Mean Chord Percentage of the Mean Length Chord Length in the "Perfect" Sphere Pure 3D 443.8 66.6 Pure 2D 525.9 78.9 "Large_l" 3D 573.7 86.1 "'Large_l" 2D 614.1 92.1 "Large_2" 3D 633.9 95.1 "Large_2" 2D 652.4 97.9 "Perfect" Sphere 666.7 100.0 Figure 1. Sketch of rays traversing square pixel of width W. 100 60 j 40 20 0 0 25 50 75 100 125 150 L Figure 2. Pixel effect "A" for a pixel width of W=100. Figure 3. Sketch of rays traversing rectangular pixel of dimensions Wx x Wy 0.018 0.016 0.014 0.012 S0.01 0.0080.004 0.102 0 50 100 150 200 250 300 350 400 450 Length (microns) Figure 4. Raw chord distribution with pixel effects. 0 1 1 1 1 i l l . i 1.. 0.01 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Chord Lengths Figure 5. The mathematical chord distributions across a cube and a square. Figure 6. Sketch of circle for use in the derivation of circular chord distributions. 0.006 0.005 _ SphereI -" Circle 0.004 P 0.0013 0.001 S - "" Figere 0 00 200 300 400 500 600 700 800 900 1000 Chord Length Mathematical chord distributions for a sphere and a circle. Figure 8. Illustration of two methods of obtaining chord distributions. The minimum accepted chord length relative to voxel dimensions is depicted for the "Large 1" (cross adjacent sides) and the "Large_2" (cross opposite sides). 4.5 4 3.5-- -7 Measured Voxelized Cube 0 3 --Mathematical Cube 2.5 . 2 2 1.5 1 0.5 0.01 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Chord Lengths Figure 9. Measurements of chord distribution across a voxelized cube. 0.016 [ - 1-----0.014-- pure3D 0.014 .I pure2D 0.012 - 0.01 0008--_ _ _ 0.006 -0.004--I I 0.002 -- -0 100 200 300 400 500 600 700 800 900 1000 Chord Length Figure 10. Comparison of chord lengths measured with 2D and 3D techniques on the voxelized sphere. 0.0160.014 0.012 :3 0.01 "pure" (3D) ,- ......Large_l" (3D) S0.0086 ...Large_2 " (3D) 0.006 z 0.004 0,002.. ..,,.. I ---- ï¿½rge ".(3D 0 1 i_0 100 200 300 400 500 600 700 800 900 1000 Chord Length Figure 11. Chord distribution across the voxelized sphere using all three methods. 0.005 0.0045 0.00 : ......."Large; l" (3D),0.004 :~ - - = arge_2" (31)) 0.0035 : - Mathematical 0.003 1,. 0.0025 -- 0.002 -, 0.0015 0.0005 W 0 0 200 400 600 800 1000 Chord Length Figure 12. Comparison of large technique results on the voxelized sphere to the expected mathematical result from a "perfect" sphere. CHAPTER 3 MEASUREMENT OF TRABECULAR CHORD DISTRIBUTIONS FROM NMR MICROSCOPIC IMAGES FOR SKELETAL DOSIMETRY Introduction Bone Structure/Physiology There are two main types of bone in terms of histological structure. Cortical bone is the hard compact structure that makes up the exterior of all bones. Cortical bone comprises 80% of the skeletal mass (Beme and Levy 1993). One of the few structures that penetrate the compactness of the cortical regions is the Haversian canal system. The Haversian canals are the pathways the circulatory system uses to supply the living bone cells with nutrients. There have been two published studies on the dosimetry of cortical bone by Beddoe (1976a; 1977) and Akabani (1993). Most recently, Bouchet developed a model at the University of Florida (Bouchet and Bolch 1999). The second type of bone, and the area of interest in this research, is trabecular bone. Trabecular bone, also referred to as spongy bone, consists of a complex network of bone spicules, which surround cavities of marrow. Bone marrow can be either active (red marrow) or inactive (yellow marrow). The active marrow is responsible for the production of blood cell lines. The yellow marrow is inactive since the hematopoietic cells have been replaced with fat cells. Trabecular bone exists in the inner regions of the vertebra, ribs, skull, pelvis, and the ends of the long bones. Where the bone surface interfaces with either a Haversian canal (in cortical bone) or a marrow cavity (trabecular bone) there exists a thin layer of osteogenic cells called the endosteum. A similar layer exists on the exterior of the cortical bone called the periosteum. Fig. 13 is an illustration of the cortical and trabecular regions showing these structures. Bone Cell Types The cellular components of cortical and trabecular bone are the same. There are three types of bone cells that control the production and destruction of osteoid matrix. Osteoblasts are responsible for the formation of bone, or ossification. They are responsible for the formation of a collagen-based osteoid matrix, and the deposition of calcium in the form of calcium phosphate into the osteoid matrix. Osteoblasts exist on the endosteal and periosteal surfaces, and are the most radiosensitive of the three bone cells (Vaughan 1960). The stem cells that produce the osteoblasts also exist on the endosteal and periosteal surfaces. These pre-osteoblasts are very radiosensitive. Osteoclasts counteract the work of the osteoblasts by destroying or resorbing bone. Osteoclasts also exist on the endosteal bone surfaces and are capable of removing calcium phosphate and destroying the osteoid matrix. They do this by producing hydrolytic enzymes that digest minerals and the bone matrix (Vaughan 1975). Osteocytes are simply osteoblasts that are surrounded by the osteoid matrix. Osteocytes are osteoblasts that bury themselves within the osteoid matrix over time. Obviously, osteocytes are not on the endosteal surface. However, osteocytes are believed to aid in the osteogenic processes by staying in contact with osteoblasts through channels called canaliculi. Osteocytes may become active osteoblasts again if they are uncovered by bone resorption later in life. For these reasons, the degree to which the bone volume is dosimetrically important is not fully understood. Fig. 14 is an illustration of trabecular bone showing the location of these bone cells. Factors in Trabecular Microstructure Variation The dynamic nature of bone has been outlined above by describing the function of the three bone cell types. The creation (by osteoblasts) and resorption (by osteoclasts) rates result in a process called bone remodeling. The ossification and resorption rates vary throughout life, thus controlling overall bone growth. These rates also respond to physiological inputs such as hormones and the presence or lack of compression stress. The remodeling of bone tissues results in approximately 15% bone mass turnover every year for an adult human (Beme and Levy 1993). Bone mass peaks in humans between the ages of 20 to 30 years. Remodeling reaches equilibrium around 35 to 40 years of age, and then decreases for the remainder of life (Berne and Levy 1993). Because women have smaller overall bone mass than men, this natural loss of bone, especially when coupled with hormonal losses due to menopause, can create bone structural problems such as osteoporosis. Trabecular structure varies with age (Atkinson 1965; Atkinson 1967; Snyder et al. 1974), gender (Atkinson 1967; Mosekilde 1989), skeletal site (Eckerman 1985), and skeletal orientation (Atkinson 1967; Atkinson and Woodhead 1973; Mosekilde 1989; Hahn et al. 1992). Due to these variations, trabecular microstructure data is more properly characterized by distributions as opposed to mean values. The ossification and resorption rates mentioned above also vary with skeletal site and orientation. Obviously, any change in the size of trabeculae corresponds with a change in marrow cavity size. Additionally, the percentage of active marrow that fills the cavities changes with age (Mechanik 1926; Custer and Ahlfeldt 1932; Ellis 1961). For these reasons, any study on the microstructure of trabecular regions of bone must pay attention to age and genderrelated changes in that microstructure. Trabecular bone structure can also be highly anisotropic in its internal structure (Williams and Lewis 1982; Cowin 1989; Turner 1992). Several studies have demonstrated a difference between the horizontal and vertical trabecular structure in stress-bearing bones such as vertebra (Atkinson 1967; Atkinson and Woodhead 1973; Mosekilde 1989; Hahn et al. 1992). These studies suggest that the ossification and resorption processes in bone respond to compression and stress. In the case of a vertebra, the horizontal struts are not as structurally important as the vertical segments and they thin considerably faster than the vertical segments with subject age. There has also been at least one study that did not see a horizontal resorption preference (Snyder et al. 1993). Trabecular and cavity sizes also vary with skeletal location. Additionally, the fractional mass of active marrow also varies with skeletal location. Some skeletal sites, such as the adult vertebrae, are more important to marrow dosimetry than others due to the larger portion of active marrow they contain. Since yellow marrow does not contain appreciable populations of hematopoietic stem cells, skeletal regions containing yellow marrow are only of dosimetric importance in regard to radiation doses to endosteal tissues. The geometry and composition of the trabecular region of the skeleton creates several unique dosimetry problems. Since bone marrow cavities are located within the trabecular bone structure, the dimensions of the two interlacing regions must be accurately known in order to calculate the absorbed dose to these sites. The anisotropic structure of this region further complicates any dosimetry studies in that it is difficult to apply any sort of uniform modeling technique to such a complex geometry. Furthermore, the small sizes of trabecular and cavity regions, relative to the ranges of typical beta particles emitted from bone-seeking radionuclides, imply that an electron may traverse several cavities while continuously depositing kinetic energy. Two electrons with the same energy and starting point may take completely different paths, traversing differing amounts of marrow and bone as demonstrated in Fig. 15. Past Skeletal Dosimetry Work and Models F. W. Spiers is responsible for most of the early work on skeletal dosimetry. While at the University of Leeds, Spiers began with relatively simple studies on the bone and soft tissue interface, and the unique dosimetry associated with that region (Spiers 1949; Spiers 1951). Spiers later looked at influences of the percentage of active marrow on trabecular dosimetry (Spiers and Overton 1962; Spiers 1963). He utilized the active marrow distribution data derived by Ellis (1961) from the work of Mechanik (1926) and Custer (1932). Spiers was the first to recognize that the anisotropic structure of trabecular bone required a unique method for characterizing the geometry in order to perform accurate skeletal internal dosimetry of beta-emitters (Spiers 1966b; Spiers 1967). This characterization was originally performed using microscopes and visual inspection. At this point, Spiers' group began working on a method to describe the geometry in terms of frequency distributions of linear path lengths through the trabecular and marrow cavities. These distributions are called chord length distributions. Again, this work was originally performed using microscopes and visual inspection. Eventually, the Leeds group was able to automate the process of obtaining chord distributions (Spiers 1969; Darley 1972; Beddoe 1976b; Beddoe et al. 1976). They physically sectioned trabecular bone regions in to thin slices and took contact radiographs of the slices. In their techniques, the radiograph is mounted on a turntable below a light microscope. Above the turntable is a photomultiplier tube. As the turntable rotates, the radiograph is also moved radially, creating scan lines of minimal arc. The apparatus is shown in Fig. 16. The duration of a light pulse seen by the photomultiplier corresponds to a marrow chord length. The opposite is true of trabecular chords. Darley (1972) developed the original apparatus. Later Beddoe used the system and improved on the radiography and preparation of the bone sections (Beddoe 1976a). The distance between consecutive scan lines in the Leeds optical scanner is approximately 8 gtm. The Leeds scanner had a dead time of 39 jts after the registration of a pulse length. This corresponds to a lost path length of 100 gtm as the turntable continued to rotate. They justified this loss by stating that "... this lost path length occurs almost entirely over the "dark" feature which is not being measured" (Beddoe 1976a). The bone and marrow chord lengths are measured in separate scans. Thus, if marrow chords were being measured and the following bone chord was less than 100 gim, the next marrow chord would be registered as being smaller than actual size. The opposite would be true for the bone chord scan. The effective resolution of their scanning system including film noise was reported as 11.5 ptjm (Beddoe 1976a). In order to obtain omnidirectional distributions, Spiers and his colleagues had to make some symmetry assumptions. In the case of human vertebra, the Beddoe study found symmetry in one direction. "This means that scanning measurements in any set of parallel planes cut parallel to the symmetry axis are sufficient to generate an omnidirectional distribution" (p. 594, Beddoe et al. 1976). For adult dosimetry estimates, the Leeds research team established "definitive" chord length measurements at seven skeletal sites (parietal bone, rib, iliac crest, cervical vertebrae, lumbar vertebrae, femur head, and femur neck) for one 44-year-old normal human subject. Their rationale was to establish a skeletal dosimetry standard consistent with the concept of a "Reference Man" for use in radiation protection internal dosimetry calculations (ICRP 1975). Additional measurements were also made in two children of ages 9 and 1.7 years (Whitwell 1973). Modern Imaging Techniques for Studying Trabecular Bone Architecture While the research of Spiers and his students was superb in its level of detail and completeness, future improvements in skeletal dosimetry, particularly for medical applications, require an expanded database of marrow and trabecular chord distributions. These databases should more fully encompass variations in trabecular microstructure with both subject age and gender. Newer techniques in medical imaging can now be applied to this particular task. A few years ago, studies were initiated at the University of Florida (Jokisch and Bolch 1996; Jokisch 1997; Jokisch et al. 1997; Patton et al. 1997; Bolch et al. 1998; Jokisch et al. 1998a) to look at techniques that could be used to improve on, or expand, the microstructure database gathered at Leeds. This work resulted in choosing nuclear magnetic resonance (NMR) microscopy coupled with image processing techniques to obtain chord distributions in human thoracic vertebra (Jokisch et al. 1998b). Interest in bone micromorphology extends well beyond the radiation dosimetry community. Many studies have focused on trabecular microstructure in an attempt to measure various structural parameters that might prove to be statistically reliable predictors of bone fracture risk in diseases such as osteoporosis. These studies have traditionally been performed using optical microscopy (Parfitt et al. 1983; Odgaard et al. 1990) or scanning electron microscopy (Whitehouse et al. 1971; Whitehouse and Dyson 1974; Boyde et al. 1986). These techniques require substantial sample preparation and are inherently destructive to the specimen. Furthermore, physical sectioning does not permit viewing the sample in multiple planes, a highly desirable feature considering the anisotropic nature of trabecular bone. Over the past decade, several groups have investigated the use of two nondestructive techniques for high-resolution imaging of trabecular bone: quantitative computed tomography (QCT) and high-resolution NMR microscopy. QCT has been used to measure regional bone mineral density (Cody et al. 1989; Cody et al. 1991; Flynn and Cody 1993; Bone et al. 1994; Kleerekoper et al. 1994a; Kleerekoper et al. 1994b; Grampp et al. 1996; Link et al. 1997; Majumdar et al. 1997; Link et al. 1998a; Link et al. 1998b) and bone structural parameters (Kuhn et al. 1990; Chevalier et al. 1992; Durand and Ruegsegger 1992; Muller et al. 1996; Link et al. 1997; Majumdar et al. 1997; Link et al. 1998a; Link et al. 1998b; Laib and Ruegsegger 1999) at various skeletal sites in vivo. Several studies have utilized QCT for in vitro analyses of trabecular bone (Cody et al. 1989; Kuhn et al. 1990; Ciarelli et al. 1991; Cody et al. 1991; Engelke et al. 1993; Goulet et al. 1994; Muller et al. 1994; Kinney et al. 1995; McCubbrey et al. 1995; Cody et al. 1996; Muller and Ruegsegger 1996; Ruegsegger et al. 1996; Link et al. 1997; Jiang et al. 1998; Link et al. 1998a; Link et al. 1998b; Ouyang et al. 1998; Hans et al. 1999). NMR microscopy represents an alternative to QCT for analyzing trabecular bone microstructure. This imaging technique is ideally suited for this purpose in that bone marrow is composed primarily of water and lipids, thus providing an abundant source of proton MR signal. Conversely, bone does not contain hydrogen in both abundance and chemical form necessary to produce a sufficient signal. The bone-marrow interface thus ensures a high intrinsic contrast in the resulting image. Several investigators have used NMR microscopy to quantify trabecular microarchitecture both in vivo (Sebag and Moore 1990; Wong et al. 1991; Foo et al. 1992; Jara et al. 1993; Chung et al. 1994; Grampp et al. 1996; Guglielmi et al. 1996; Gordon et al. 1997; Majumdar et al. 1997; Ouyang et al. 1997; Song et al. 1997; Wehrli et al. 1998) and in vitro (Chung et al. 1995; Chung et al. 1996; Majumdar et al. 1996; Hwang et al. 1997; Wessels et al. 1997; Link et al. 1998c; Takahashi et al. 1999). Isotropic resolutions for these in vitro studies have been reported in the range of 50 to 150 gtm. NMR microscopy of human subjects in vivo have yielded images with voxels ranging from 78-200 pgm in plane and with slice thicknesses of 500700 pgm using clinical MR units at a field strength of 1.5 T (Jam et al. 1993; Majumdar et al. 1995). Improved resolutions for in vivo NMR imaging would be possible using newer 3 Tesla clinical machines. NMR microscopy presents three distinct advantages over QCT for studying the microarchitecture of trabecular bone for improved radiation dosimetry modeling. First, NMR does not utilize ionizing radiation and thus applications to in vivo imaging are not dose limited. Second, NMR images may be acquired in any arbitrary plane without sample or subject repositioning. QCT would require sample positioning to acquire in a specific orientation. Finally, NMR microscopy can be used to assess the fat and lipid mass fractions of the marrow spaces (Dixon 1984; Ballon et al. 1991; Glover and Schneider 1991; Ballon et al. 1996; Ballon et al. 1998). This latter technique would allow one to not only assess the trabecular and marrow chord length distributions through the sample, but one could additionally determine the fraction of marrow space occupied by active marrow (i.e., the regional marrow cellularity). Marrow cellularity has been shown to be an important parameter in skeletal site-specific radiation dose estimates (ICRP 1995; Stabin 1996). Materials and Methods Specimen Preparation The University of Florida Tissue Bank, Inc supplied a single block of four human thoracic vertebral bodies. Vertebral bodies are a good site to begin studies of trabecular bone microstructure for dosimetry modeling in that the vertebra contain a large percentage of active marrow in adults (ICRP 1995). The subject, from whom the specimen was obtained, was a 52-y-old male trauma victim with no known metabolic disorders that would present an abnormal skeletal structure. The specimen was harvested post-autopsy within 12 hours of death and was stored at -200C until later use. Following NMR imaging of the intact specimen on a Varian 200-MHz spectrometer, cylindrical cores were drilled from the vertebral bodies using a coring bit of 12-mm inner diameter. Subsequently, the bone marrow was removed by immersing the cored samples in 5% sodium hypochlorite aqueous solution for several hours and rinsing repeatedly with hot water. One of these samples was then suspended in 1 mM Gd-DTPA aqueous solution within a 13-mm ID glass vial for subsequent NMR imaging at 600 MHz. Imaging Hardware Proton NUR images were acquired on two commercially available spectrometers housed in the University of Florida's Center for Structural Biology (CSB), a component of the UF Brain Institute. The intact vertebral block was first imaged using a Varian 20cm-wide bore spectrometer operating at a 200 MHz proton resonance frequency (4.7 T magnetic field strength). A gradient amplitude of 5.8 Gauss cml was applied in all three axes. A 12-cm-diameter quadrature birdcage radiofrequency coil was used to obtain sufficient sensitivity and RF field homogeneity. One cylindrical vertebral core was subsequently imaged on two different occasions using a Varian 13-mm-bore Unity Spectrometer operating at 600 MHz proton resonance frequency (14.1 T magnetic field strength). A gradient amplitude of 80 Gauss cm'1 was applied in all three axes. A 15-mm-diameter standard high-resolution radiofrequency (RF) coil was used to obtain sufficient sensitivity and RF field homogeneity. The acquisition of the initial images of the entire vertebral block is described in Jokisch (Jokisch 1997). These two dimensional images will be utilized later for determining the macroscopic size of the thoracic vertebra. There were two imaging sessions performed on the 600-MHz spectrometer using the cored sample. A conventional 3D spin-echo sequence was used to obtain a fully three-dimensional image of the sample. The repetition and echo times were 300 ms and 24 ms, respectively. The field-of-view was 15 x 15 x 10 mm3, and a voxel spatial resolution of 59 x 59 x 78 pm 3 was achieved. The second image had a field of view of 11.25 x 15 x 15 mm3, and a spatial resolution of 59 x 59 x 59 pm3. It is these images from which both marrow and trabeculae chord length distributions will be obtained. In addition, these images will be used as the input to a radiation transport code that is discussed in Chapter 4. Image Processing An image is represented digitally as a series of discrete elements. These picture elements, or pixels, are small divisions of the picture. Pixels relate brightness to a given location in the overall image. Pixels are stored in a file in order from left to right and top to bottom as gray levels. Gray levels are simply an integer that corresponds to the brightness of the pixel. The images used in this work used eight-bit data, or 256 gray levels. A gray value of 256 corresponds to white, and a value of 0 corresponds to black. In three dimensional image structures, the volume elements, or voxels, are stored in a three dimensional array. Three image-processing steps are required prior to making estimates of marrow cavity and trabecular chord distributions. These steps include (1) image thresholding, (2) image segmentation, and (3) image filtering. The first image-processing step is to acquire a gray-level intensity histogram of the voxels. A gray-level histogram is a frequency distribution of all pixel intensities within an image (Castleman 1996). Since the sample represents only two media (Gddoped water within the marrow spaces and the bone trabeculae), the histogram would ideally contain only two peaks: one peak at a lower intensity representing bone voxels and another at high intensity representing water (or marrow space) voxels. Image segmentation is the recognition and delineation of objects within an image. In this work, it is desirable to separate the marrow cavities from the bone trabeculae by assigning a gray-level threshold that effectively segments the image into only bone and marrow voxels (a binary image). To avoid edge artifacts, construction of the histogram is typically confined to an interior region of interest within each image slice (Chung et al. 1995). In this study, image thresholding is performed automatically by a user-written code that incorporates the results of the application of the tissue classification model of Chung et al. (1995). In this model, a NMR image of trabecular bone yields a gray-level histogram containing two peaks: one which obeys a Rayleigh distribution (p) and is associated with signal-free bone voxels, and one which obeys a Gaussian distribution (p.) and is associated with higher-intensity marrow-space voxels. The overall frequency of signal intensity x is thus given as p(x)= Bp, (x)+ Mfp,(x) MBix eXX +M 1 (xi- (x Eq. 20 Y )Y 2c" ) G 2~. where CFB is the standard deviation of the Rayleigh distribution (which has a mean of zero) describing the signal intensities from the bone voxels; and P.M and aM are the mean and standard deviation, respectively, of the Gaussian distribution describing the signal intensities from the marrow space pixels. Bf and Mf are the fractions of voxels in the image that are ideally assigned to bone and marrow, respectively, existing under zero partial volume intensity mixing. Since the constraint B +Mf =1 Eq. 21 must be satisfied, the overall frequency of signal intensity p(x) has four unknown parameters: OB, CaM, gtM, and Bf (or Mf). Using a composite histogram for the images, nonlinear least-squares techniques are used to determine best-fit estimates for these four parameters. A threshold intensity, x = T, can be defined such that all voxels with gray levels below T are considered bone voxels, and all voxels with gray levels above T are considered marrow voxels. The probability of (erroneously) classifying a marrow voxel as bone is given as Eb.(T) = JT pg(x)dX, Eq.22 while the probability of (erroneously) classifying a bone voxel as marrow is given as E.. (T) = JT p, (x)dx. Eq. 23 The overall probability of error in image segmentation is thus E(T) = BfE,,,.(T)+ MIEb.(T). Eq. 24 Since a threshold value that minimizes the error in image segmentation is desired, the latter equation is differentiated with respect to T using Liebnitz's rule and set to zero (Gonzalez and Wintz 1987). The optimal threshold, Tot, for each histogram is then obtained by iterative solution of the resultant expression: 2~ T2 (I, - Bf) r (T,, -gu P.) t1 2xp1 2"2 1 . Eq. 25 After determining the optimal threshold intensity value, Topt, for both images, binary images are subsequently produced through image segmentation. The final image-processing step involves elimination of single voxels of anomalously high or low intensity arising from signal noise through the application of a median filter to the binary image following image segmentation. Others performing analysis on NMR images of human trabecular bone have applied median filters (Chung et al. 1995; Link et al. 1997; Majumdar et al. 1997; Jiang et al. 1998). In this work, a minimal neighborhood area of 3 x 3 x 3 voxels was chosen for image filtering. Chord Distribution Acquisition The methods used to acquire the chord distributions in the images have already been described in general. A C program (Appendix A) was written to make digital measurements of chord lengths across marrow cavities and trabeculae within the binary, filtered images in a manner analogous to that performed by Spiers and colleagues using their optical bone scanner. Mean-free-path randomness (g-randomness), in which rays are initiated external to the trabecular region-of-interest, was utilized in the work of Spiers (Beddoe et al. 1976) and is the method used here. Distributions are obtained by firing uniform, isotropic rays across a region of interest. Each time the ray crosses a boundary, a length measurement of the previous region is taken and recorded. The uniform lines are angled isotropically in three dimensions using the relationship theta = 360t Eq. 26 ANGSTEP phi = arcsin[1 GSp Eq. 27 where t and p run from 0 to ANGSTEP-1, and the parameter ANGSTEP is determined by the user. For this study ANGSTEP was set to 32. The separation between the uniform lines is determined mathematically, since this distance must be equal for all angles. This represents a correction from previous work (Jokisch 1997; Jokisch et al. 1998b), where the perpendicular distance between scan lines was not constant. As shown in Fig. 17, the distance between starting points for successive rays is dependent on theta and is relatively easy to find. In three dimensions, there is also a dependence on phi. Setting the perpendicular distance between each successive ray to be equal to the resolution of the image has led to the derivation of these relationships. step, = Vsin' 0 + sin2 0 - sin2 4 sin 20 Eq. 28 _ sin 20 + sin2 0 + sin 2 4 sin 20 stepj = Eq. 29 VIp - sin2 e + sin2 4 sin2 0 stepK = 1 Eq. 30 cosd 4) Functions whichMed and changeMed Due to the large size of the three dimensional image array, it is desirable to compress the data when running the chord distribution program. Since the image is binary, in that a voxel is either bone or marrow, a voxel's medium may be identified through individual bits, as opposed to bytes of digital values. This results in compressing the image by a factor of 8. In order to do this, special functions had to be written. The function changeMed puts a 0 (bone) or 1 (marrow) in the appropriate bit location depending on the type of medium that should be assigned to that voxel address. It does this using bitwise operators. Similarly, the function whichMed returns a 0 or I after determining what medium is in a given voxel location. Use of Step Sizes in the Chord Distribution Program The chord distribution program fires rays by hopping in small steps along the desired angle. These steps are determined by the user and are set to be much smaller (<0.1) than the resolution of the image. Once a given chord length is observed by the program, it is compared to a length determined by the stepfind function. The stepfind function determines the smallest measurable chord length depending on the angle at which the ray is moving relative to the voxel. These calculations have already been described in Chapter 2 on page 12. Statistical Independence of Bone and Marrow Chord Lengths One of the assumptions of a chord length distribution based dosimetry model is that bone and marrow chord lengths are statistically independent of each other. A chord length based dosimetry model samples randomly and alternatively from both the marrow and bone distributions. It may be that there is an association between the occurrence of chords of given lengths. In other words, in the real structure perhaps large marrow chords almost always follow large bone chords, or vice versa, which are in turn followed by large bone chords again. This association seems likely upon visual examination of an image of the trabecular region, where different regions appear to have different characteristics. Existing distribution-based models do not account for this association. During the acquisition of the chord lengths, data can be acquired which will test the statistical independence of the two distributions. This acquisition is done by recording separate distributions after seeing a chord less than a certain length. As a result, separate chord length values are obtained which are dependent on the previous chord length. Results and Discussion Fig. 18 displays a 3D representation of the cored trabecular bone sample as acquired on the 600-MHz spectrometer. As noted earlier, the image was acquired in a voxel matrix format of 256 x 256 x 128 with a spatial resolution of 59 x 59 x 78 gm3 per image voxel. A representative slice extracted from this 3D image is shown in Fig. 19 for the transverse-viewing plane. A second, separate NMR acquisition on the 600-MHz spectrometer was performed on the same thoracic sample. This acquisition produced an image with a voxel matrix format of 192 x 256 x 256 and a spatial resolution of 59 x 59 x 59 gim3 per image voxel. Fig. 20 is a single slice extracted from the second imaging session. A three dimensional region of interest was selected from the image from which a gray-level histogram was constructed. This same region of interest will be used for the threshold calculation, chord distribution measurement, and voxel radiation transport. Fig. 21 shows the gray level histogram for the image obtained in the first NMR image acquisition at 600 MHz. As predicted under the tissue classification model of Chung et al., the distribution is bimodal and follows the Rayleigh-Gaussian distribution. As described earlier, nonlinear least-squares techniques are used to fit the histogram from which an optimal image threshold is selected by numerical solution. The parameters from the curve fit result in the curve also displayed in Fig. 21. Fig. 22 shows the gray level histogram and curve fit for the second NMR image acquisition at 600 MHz. The second image had a marrow volume fraction approximately 10% greater than that found in the first image. This observation will be significant in the next chapter when comparing energy absorption in the two images following electron transport simulations in each. Application of both a threshold for image segmentation and a median filter for removal of single high- or low-intensity voxels yields a binary image form which chord distributions may be obtained. Fig. 23 displays a segmented and median filtered image of the single slice given in Fig. 19. The square interior to this image delineates a twodimensional projection of the region of interest in which chord distributions are assessed. Estimates of Trabecular and Marrow Cavity Chord Length Distributions It is proposed that NMR microscopy be used to expand the original data base of chord length distributions reported by Spiers and his colleagues for use in radiation dosimetry models of the skeleton. Correspondingly, it is of interest to compare chord distributions measured by the Leeds' group to those measured in this work. Shown in Figs. 24 and 25 are the normalized chord length distributions for both trabeculae and marrow cavities, respectively, as measured by NMR microscopy and image analysis. Also shown are the chord distributions for the cervical and lumbar vertebra as measured by the Leeds' optical bone scanner and reported in Appendix C of Whitwell's thesis (1973). During the preparation of Figs. 24 and 25, it was noted that the tables of chord distributions across the marrow cavities and trabeculae within the lumbar vertebra were mislabeled on p. C.5 of Whitwell's thesis. This error is easily verified by integrating the normalized probability density functions for each region and comparing the result to unity. The labeling error, however, does not seem to have been carried over to the reported mean chord lengths in Table 5.1 of her thesis or in Table 2 of Whitwell and Spiers (1976). Despite this observation, it is suspected by this author that this error was incorporated into the dosimetry model of Eckerman (1985), which was used to calculate S-values used in MIRDOSE3 (Stabin 1994; Stabin 1996). These models will be explained later. For the trabecular chord distributions shown in Fig. 24, general agreement is seen between the three vertebrae. In fact, in the peak area at low chord lengths, the frequency for the measured thoracic vertebra is between the Leeds' measurements of lumbar and cervical vertebrae. Since the thoracic are anatomically located between the lumbar and cervical, it is expected that the microstructure of the thoracic vertebra should be quantitatively in-between the other two skeletal sites. The peak at small chord lengths had not been observed in the thoracic vertebra in earlier studies (Jokisch 1997; Jokisch et al. 1998b). This observation is attributed to the new method (e.g., "Large_2" method) used to avoid voxel effects. The distributions for all three skeletal sites tail away with the same shape. There is one significant difference at -450 gm for the thoracic vertebra measured here. It is presumed that this small peak in the distribution is a part of the real structure. For the marrow chord distributions shown in Fig. 25, similar agreement is observed in the three distributions. The distributions tail away with the same shape and frequency. Discrepancies are apparent at small chord lengths, with the thoracic vertebra appearing to have lower frequencies at small chords which should produce a larger calculated mean chord length than that from the Leeds cervical and lumbar distributions. The publications from the Leeds' group represent the only known published source of chord length distributions for normal trabecular bone microstructure. For many other studies of trabecular bone micromorphometry, average chord lengths are more frequently reported. Table 2 lists estimates of both mean trabecular chord lengths and mean marrow cavity chord lengths published in other studies. Chung et al. (1993) estimates a mean trabecular thickness (+ 1 standard deviation) for 22 lumbar vertebrae of 127 + 13 tm, a value much lower than our estimates of 281 and 257 Jtm for the thoracic vertebra. In a later study, however, the authors studied the variation of trabecular thickness with decreasing image slice thickness. The authors noted a convergence of the mean trabecular thickness to between 180 to 190 ptm at slice thicknesses below 300 gm. This range is thus more in line with our estimate for the thoracic vertebra. Goulet et al. (1994) used QCT in their study of trabecular bone sites; no quantitative comparison with our data can be made considering the wide variety of skeletal sites included in their estimates. Our estimated mean trabecular thickness of 281 and 257 gm is consistent with light microscopy measurements reported by Mosekilde (1989), Whitwell (1973), and Beddoe et al. (1976). The latter study was conducted in part to show the biological variability of this microstructural parameter. Our estimated mean marrow cavity size of 1,170 and 1,460 gim for the thoracic vertebra is found to be intermediate to those reported by Whitwell (1973) for the neighboring cervical and lumbar vertebra (909 gim and 1,233 gtm, respectively) for a similarly aged male subject. In the study of Beddoe et al. (1976), the authors report a population mean marrow cavity chord length of 1,070 + 128 gim for the lumbar vertebra. The significant difference in the mean chord lengths measured in the first and second image does warrant consideration. Again, the second image contains approximately 90% marrow by volume as compared to -82% in the first image. The same sample was used in both imaging sessions, but the sample was stored in water for a little over a year between the two sessions. As a result, significant demineralization of the bone matrix took place. This resulted in the increase in the marrow volume fraction. This is further evidenced by qualitatively looking at the second image (Fig. 20). As minerals dissolved along the bone surfaces, water took its place. This water was somewhat immobilized (relative to the water in the cavities) in the remaining bone matrix. As a result the local spin-lattice relaxation time, TI is shortened, and the signal in these regions is significantly enhanced, producing the bright boundary voxels outlining all the surfaces. Additional reasons for a small percentage difference between the two images could be due to susceptibility artifacts and sample orientation. Some susceptibility artifacts do appear at the bone-marrow interface in Fig. 19. These artifacts could lead to an error in tissue classification. Some statistical difference is expected between the two samples simply as a result of the inability to exactly duplicate the experiment. For example, it is probable that the sample was not imaged in the same orientation the second time around. The majority of the differences however, are still attributed to the bone demineralization. Statistical Dependence of Chord Distributions One of the assumptions of using chord distributions as input for dosimetry models is that bone and marrow chord distributions are statistically independent of one another. To test the independence of these distributions, separate marrow distributions were acquired specific and indexed to the previous bone chord length. Calculating the mean marrow chord length for each of the previous bone length intervals results in the graph shown in Fig. 26. As predicted, there is a definite observable relationship between the length of a bone chord and the length of its successive marrow chord. If the distributions were statistically independent, there should no such relationship and the line in Fig. 26 would have no slope. Instead, Fig. 26 shows that if a large bone chord length is seen, the next marrow chord will be, on average, smaller than the overall marrow chord length mean. Fig. 27 displays a three-dimensional plot illustrating the dependence of the two chord distributions on one another. Marrow chord distributions have been plotted with respect to the length of the previously encountered bone chord length. Fig. 28 displays the same distribution, normalized to the marrow and bone bin widths. This figure shows the overall relative frequency for a successive bone and marrow chord length combinations. These results suggest a possible improvement to the existing chord lengthbased dosimetry models. To utilize this potential improvement, the models would need to randomly sample a first chord length from the total distribution. For successive chord length sampling, however, the model would sample from a different distribution depending on the length of the previously sampled chord. Conclusion The microscopic structure of trabecular bone for a thoracic vertebral specimen was successfully characterized by NMR microscopy combined with digital image processing. The resulting chord length distributions across both bone trabeculae and bone marrow cavities were found to be in general agreement with those measured for the cervical and lumbar vertebrae in a similarly aged healthy adult male using physical sectioning and two dimensional automated light microscopy. As noted earlier, this latter data currently forms the foundation upon which all past and current standardized internal dosimetry models of the skeleton are based. The current study thus further demonstrates that NMR microscopy of trabecular bone may be used to augment and expand this data base, thus providing an important tool for comparisons with dosimetry models that will be discussed in the next chapter. In addition, this work has suggested that the assumption of statistical independence between bone and marrow chord lengths may be incorrect. This result could form a basis for differences in the dosimetry of the trabecular skeleton when comparing chord based dosimetry models to more realistic transport models. A possible method for curtailing any bias due to statistical dependence has been suggested. This method would require selective sampling from an appropriate chord distribution based on the previously sampled chord length. The chord length distributions presented in this study are for a single cored sample of a thoracic vertebra, and thus are not presented as definitive results for all thoracic vertebrae. Note that limited sample size did not deter the use of the Leeds' data for use in skeletal dosimetry models adopted by both the Medical Internal Radiation Dosimetry (MIRD) Committee of the Society of Nuclear Medicine and the International Commission on Radiological Protection (ICRP). The potential use of NMR microscopy to assess larger data sets of chord distributions (with much greater ease than optical methods) should be pursued. Furthermore, an expanded database may allow the development of more age- and gender-specific models of skeletal dose. While such detailed models may not be necessary in radiation protection applications, it may be very important in applications to internal emitter therapies. These patients, particularly older females for which marrow dose estimates are desired, may present trabecular bone morphologies very different from those defined by "Reference Man." While skeletal dosimetry models based upon measured data of trabecular bone microstructure contribute greatly to our understanding of radiation effects to this organ system, they still require several assumptions as to the transport of electrons and other charged particles through the "real" geometry of the region. A more realistic transport model is thus sought against which models based on chord length distributions can be compared and validated. Table 2. Comparison of measured mean chord lengths with values published from other studies. Study Image Skeletal site Subject(s) Mean trabecular chord length Mean marrow chord length technique age/gender (Wtm) (Pim) UF (present study) NMR Image 1 Thoracic vertebra 52-y-old male 281 1,170 Jokisch et al. (1998) NMR Thoracic vertebra 52-y-old male 201 998 Chung et al. (1993) NMR Lumbar vertebra 16 subjects 127 + 13 Not reported 22 specimens 24-86 y (mean 60 y) Chung et al. (1995a) NMR Lumbar vertebra Not reported 180 to 190 Not reported Goulet et al. (1994) QCT Tibia, femur, iliac crest, 55-y-old female 140 + 20 640 + 240 radius, humerus, 61-y-old female lumbar vertebra 31 -y-old male 69-y-old male Mosekilde (1989) Sectioning/light Lumbar vertebra Males 19-50 y Horiz: 156 + 30 Horiz: 589 + 78 microscopy Vert: 217 + 28 Vert: 699 + 125 Whitwell (1973) Sectioning/light Cervical vertebra 44-y-old male 280 909 microscopy Whitwell Sectioning/light Lumbar vertebra 44-y-old male 246 1233 microscopy Beddoe et al. (1976) Sectioning/light Lumbar vertebra 44-y-old male 235 1,172 microscopy 44-y-old male 207 953 52-y-old male 187 1,310 48-y-old male 173 1,040 44-y-old male 190 1,144 39-y-old male 160 998 Compact Bone Lymphatic ~- aVessel Osteornc Fibrous Layer Inner "Osteogenic Layer (contains osteoblasts) .:<\ Periosteal Blood Vessels Figure 13. A diagram of cortical and (Tortora 1992). Kaversian Canals Trabecular Bone trabecular bone illustrating the microstructure Concentric Lamellae K Interstitial Lamellae A _ Trbeculae Interstital Lamellae Osteoclast Osteocyte Osteablasts Marrow Cavities Figure 14. A diagram of trabecular bone illustrating the types of bone cells and their location (Tortora 1992). Trabeculae MaiTow Cavity Paths Figure 15. Skematic of differing paths of two electrons emitted within anisotropic regions of trabecular bone. ;*do a kotatiny tueneble b uAaaly traverse~d 8"ifaezI atag g fw rag microaope in-I1 Tunmtalle axisu of Xofttioa .-Y' OPtLo Gzim A 11 Figure 16. Depiction of the Leeds bone scanner (Darley 1972). step L w Figure 17. Depicting the separation between starting points of successive rays. The steps must be found such that the perpendicular distance between the rays is constant for all angles. Figure 18. 3D image representation of a section of the cored vertebral sample acquired at a proton resonance frequency of 600 MHz (14.1 T magnetic field strength). Figure 19. Single transverse slice extracted from the 3D image shown in Figure 18. Figure 20. Single transverse slice extracted from the second 3D image. 0.014 Ro1ist~ 0.012 -ROI Fit 0.01 0,008 a 0.006 0.004-0.002 0 Gray Level Figure 21. Gray level histogram and curve fit for first image. 0.008 0.007 ROI Hist 0.006 -ROIFit 0.005 ! 0.004 0.003 0.002 0.001 Gray Level Figure 22. Gray level histogram and curve fit for second image. Figure 23. Segmented and median filtered binary image of the trabecular bone region shown in Figure 19. 0.005 0.0045.. Leeds Cervical 0.004-- -X- Leeds Lumbar -0.0035 - ,-0- Thoracic Image I 0.003 ---9- Thoracic Image 2 o0.003 0.0025 0.002 0.0015 0.001 0.0005 01 0 200 400 600 800 1000 1200 1400 Chord Length (JIm) Figure 24. Normalized, omnidirectional chord length distributions through trabeculae of the cervical vertebra as measured with physical sectioning and automated light microscopy (Whitwell 1973) and the corresponding distribution for trabeculae in the thoracic vertebra as measured with NMR microscopy and image processing (present study). 0.0012 Leeds Cervical 0.001 -X- Leeds Lumbar --0- Thoracic Image I - 0.0008 - 0.0008-0 0.0002' 40 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 Chord Length (urm) Figure 25. Normalized, omnidirectional chord length distribtions through marrow cavities of the cervical vertebra and lumbar vertebra as measured with physical sectioning and automated light microscopy (Whitwell 1973) and the corresponding distribution for marrow cavities in the thoracic vertebra as measured with NMR microscopy and image processing (present study). 1400 1200 1000 o 800 600 S400 ,- 2000 0 1000 2000 3000 4000 5000 Length of Previous Bone Chord (sum) Figure 26. Mean marrow chord lengths with respect to the length of the previous bone chord. 0.005 Normalized Frequency (/.m) Marrow Chord Length (tjm) CON Previous Bone Chord Length (jIm) Figure 27. Three-dimensional plot showing marrow chord distributions dependent upon the length of the previously sampled bone chord length. This distribution is normalized only to the marrow chord length bin widths. 8.0e-6 6.0e-6 4.0e-6' S2.0eZ o.o 0 '00 800 3000 800 1000 400 Figure 28. Normalization of Fig. 27 displaying relative frequencies of bone and marrow chord length combinations. This plot could also be interpreted as displaying the bone chord distributions depending on the length of the previous sampled marrow chord length or vice versa. CHAPTER 4 A NEW METHOD FOR BETA-DOSIMETRY OF THE TRABECULAR SKELETON USING MONTE CARLO TRANSPORT IN VOXELIZED NMR IMAGES Introduction Chord Length Distribution Based Dosimetry Models The work performed by Spiers group at the University of Leeds set up a fundamental method for performing dosimetry in this region of the skeleton. To calculate dose in trabecular bone, one must know the geometry that the particle travels through while depositing energy. Chord distributions of both bone trabeculae and marrow cavities obviously provide this required data. There are essentially two options for utilizing Monte Carlo techniques in calculating absorbed fractions using chord length distributions. The first is to transport the particles in such a way that the traversed distance across a given medium equals the sampled chord length. Note that this method does not create a mathematical geometric model of marrow cavities and bone trabeculae, and thus does not create a geometry that looks like trabecular structure. The second option is to use the chord distribution data to create such a geometrical model. The Leeds group did not intend their chord distributions to be used for this purpose, and it has not been shown to be accurate. The Leeds data has since served as the basis for almost all subsequent trabecular bone dosimetry models published to date (Whitwell and Spiers 1976; Spiers et al. 1978a; Spiers et al. 1978b; Chen and Poston 1982; Eckerman 1985; Stabin 1996; Bouchet et al. 1999a; Bouchet et al. 1999b). It is important to consider what this geometrical data is, and how it should be used in dosimetry calculations. The chord distributions are a collection of linear path lengths through the bone and marrow regions. Essentially, this means that the spatial transport of the beta particle is fixed for a given sampled chord. Of course, one of the main assumptions of this method is that beta particles travel in approximately straight lines through both marrow cavities and bone trabeculae. It would be theoretically improper to use the chord distributions to setup some geometrical simulation of a marrow cavity, where the electron could travel a straight-line distance different than that sampled from the chord distribution. Naturally, the Spiers research group was the first to use their chord distribution data in beta-particle dosimetry (Whitwell 1973; Whitwell and Spiers 1976; Spiers et al. 1978a; Spiers et al. 1978b). These methods utilized Monte Carlo techniques to randomly sample from their measured chord distributions in order to determine where beta particles would deposit their energy. The Whitwell study coupled the experimentally measured chord length distributions with range-energy relationships to calculate dose conversion factors for seven radionuclides of interest in health physics (14C, 18F, 22Na, 32p, 45Ca, 9OSr, 90Y). In this study, only volume- and surface-seeking radionuclides were considered, and only the marrow and endosteum were chosen as target regions. For nuclear medicine purposes, these skeletal-averaged conversion factors were converted to monoenergetic specific absorbed fractions using the average beta-particle energy of each radionuclide (Snyder et al. 1974). These specific absorbed fractions were used to calculate S values as published in MIRD Pamphlet No. 11 (Snyder et al. 1975). S values for marrow as a source region were tabulated despite the fact that Whitwell did not consider the marrow as a source in her studies. For radiation protection purposes, the ICRP published Report 30 (ICRP 1978) based on the same Whitwell dose conversion factors. For a source of beta particles in the bone volume, a single absorbed fraction value is used. For beta particles originating on the bone surface, two absorbed fractions are recommended: one for average beta energy less than 0.2 MeV, and a different value for average energies greater than 0.2 MeV. These absorbed fractions were then implemented in the MIRDOSE2 program (Stabin 1996), which is utilized in nuclear medicine dosimetry. In 1986, Eckerman reexamined these absorbed fractions (Eckerman 1985). He used the same Leeds chord distributions and a one-dimensional approach similar to that of Whitwell to derive absorbed fractions for seven trabecular bone sites. In 1996, S values derived from these calculations were implemented in the MIRDOSE3 program to be used in nuclear medicine dosimetry (Stabin 1994; Stabin 1996). Recently, a group from the University of Cincinnati used Monte Carlo techniques to calculate beta particle dose to skeletal metastases from a bone-seeking radiopharmaceutical (Samaratunga et al. 1995). They, however, did not use the Leeds data, choosing instead to acquire their own geometrical data for a given patient. They measured bone and soft tissue path lengths in bone of patients who had skeletal metastases. They classified them based upon what type of lesion was seen in the patient. This work did not pay attention to skeletal site, and made two-dimensional to threedimensional conversions based upon assumptions similar to Spiers. The Samaratunga study then performed dose calculations by setting up three-dimensional ellipsoidal structures of bone surrounded by an infinite marrow-tissue medium. The next bone ellipsoid would be created when the particle reached a distance from the first ellipsoid equal to the sampled path length. This model allows the particle to traverse a bone pathlength different from the sampled chord length. There were a few attempts to use the Leeds geometry data in order to setup a model allowing betas to be transported in three-dimensions (Chen and Poston 1982; Parry 1995). However, these models had several theoretical problems. Specifically, these models do not properly use the chord distributions since they allow beta particles to travel distances not equal to the chord length used to set up the geometry. In addition, the Parry model was not consistent in the treatment of bone and marrow traversals. It also transported the particle through a region of marrow-bone-bone-marrow-bone-bonemarrow-etc. as opposed to marrow-bone-marrow-bone-etc. Out of these models was born a three-dimensional transport model developed by Bouchet et al. (1999b). This model improves on the one-dimensional models in that it allows for the treatment of backscattered electrons, delta rays, and bremsstrahlung photons not previously considered. It also includes corrections of the theoretical errors in the Chen and Parry models. The electron pathlengths in the Bouchet et al. model are allowed to deviate from the straight lines that the chord lengths were based on. This model transports the electron through the alternating marrow and bone regions by sampling an appropriate chord length and setting it equal to the linear distance between the entry and exit points of the electron in a hemispherical shell. This transport concept is shown in Fig. 29. Possible Limitations of Chord Length Distribution Based Dosimetry Models While the Bouchet et al. model is believed to be an improvement over the onedimensional models that do not allow the pathlength deviation, it does rely on the pathlength not deviating far from the straight-line displacement. It should be obvious that while these models for transport seem theoretically correct, they all rely on a few basic assumptions. The degree to which these assumptions affect the accuracy of dosimetry results has so far been immeasurable. The present work attempts to quantify the accuracy of these assumptions by providing a voxel transport model to compare with each of these chord length-based models. As mentioned above, the 3D model of Bouchet et al. contains several theoretical improvements over the ID model in that it allows for the treatment of backscattered electrons, delta rays, and bremsstrahlung photons. While this treatment should allow for more realistic transport and energy deposition, it also presents the following theoretical limitation. If a particle encounters a large angular scatter along its path (up to 900 is allowed), the sampled chord length will no longer be accurate. In other words if the particle exhibits a large angular deviation, it is likely that the path length in a real geometry would change. This is the fundamental assumption of any chord length-based dosimetry model, which will be tested here: that straight-line path lengths can approximate the electron transport through trabecular bone. In addition, a chord length distribution-based model assumes that distributions are independent of one other. A chord length model randomly samples from both the marrow and bone distributions. It may be that there is an association between the occurrence of chords of given lengths. In the real structure perhaps large marrow chords almost always follow large bone chords, or vice versa, which are in turn followed by large bone chords again. This seems likely upon visual examination of an image of the trabecular region, where different regions appear to have different characteristics. The current distribution-based models can not account for this association. As suggested in the previous chapter, there is a way of sampling chord lengths based on the previously encountered chord. This method should alleviate any bias due statistical dependence of the chord-based dosimetry models. Separate but similar to the length association, is a possible angular association. A distribution-based model assumes an isotropic microstructure. It has been shown that many skeletal sites exhibit anisotropy, especially in stress bearing bones such as vertebra (Atkinson 1967; Atkinson and Woodhead 1973; Mosekilde 1989; Hahn et al. 1992). These studies suggest that the ossification and resorption processes respond to compression and stress. In the case of vertebra, the horizontal struts are not as important structurally as the vertical segments. They found that the horizontal segments thin out considerably faster with age. There has also been at least one study that did not see the horizontal resorption preference (Snyder et al. 1993). Furthermore, the chord length-based models have had to use approximations to account for the macroscopic dimensions of the bone site that contains the trabecular region, if they account for it at all. These models treat the skeletal site as an infinite "sea" of trabecular bone, or put another way, they assume that all initial electron energy is deposited within the trabecular region of the skeletal site. The 3D model of Bouchet et al. does allow bremsstrahlung photons that travel a distance greater than 5 cm from the initial source point to escape the trabecular region. Also, the work of Whitwell did make allowances for "the finite sizes of the bones, which result in some energy escape from the structure" when coming up with skeletal averages of her dose factors (Whitwell 1973; Whitwell and Spiers 1976). For large skeletal sites like the vertebra, the assumption of total electron energy deposition is probably accurate, especially at moderate to low energies. However, this may not be true for high energies or in active marrow containing sites such as the cranium, clavicle, scapula, ribs, and sacrum, which are macroscopically thin in one or more dimensions. Electron Gamma Shower 4 The models used in this work require the accurate simulation of photon and electron transport in different media. The transport code used in this research was the Electron Gamma Shower Version 4 (EGS4) (Ford and Nelson 1978; Nelson et al. 1985; Bielajew and Rogers 1987). This code is commonly used for the purposes of internal dosimetry and has been benchmarked extensively. The EGS4 code requires user definition of the three-dimensional transport geometry, media, and radiation source characteristics. The user interface is a series of subroutines that are called by the EGS4 program. These subroutines will be discussed in detail in later sections when describing specific models. Materials and Methods Voxel Transport in EGS4 First it was necessary to establish a method for transporting electrons and photons in a voxel geometry using the ESG4 code. This has already been done for the purpose of suborgan internal dosimetry (Bolch et al. 1996; Bolch et al. 1997; Bouchet 1998). The image-based trabecular models to follow will use this voxel array transport as a necessary portion of their code. An original voxel transport code was written (Appendix B) and absorbed fraction results were compared to those of Bouchet (1998), who benchmarked his results with point kernel estimates. Details of Voxel Array Transport Code Subroutine HOWFAR. The HOWFAR subroutine is used to calculate the distance to the nearest boundary based on the direction the particle is going to travel. In this case, the geometry is simply a cube. The EGS4 program enters HOWFAR with a distance USTEP that it wants to transport the particle. If that distance is less than the distance to the nearest boundary along the direction of travel, then HOWFAR returns without changing USTEP. If USTEP is greater than this distance, USTEP is changed to the distance to the boundary and the current region of the particle is changed appropriately. When performing transport in a voxel array geometry, there are two related coordinate systems to keep track of. The first is the obvious floating-point location of the particle. The second is the integer location referring to the voxel the particle is currently in. The relationship between these coordinates is rather simple in this model, but will be manipulated later to allow for particle reintroduction in the trabecular transport. There are a number of variables used in this geometry. XVOX, YVOX, and ZVOX are the integer locations of the particle in the voxel array. They refer to the voxel the particle is currently within. H, YDIM, and L are the sizes of a voxel in the x, y, and z dimensions respectively. The first step in HOWFAR is to determine which voxel the particle is in. This is done with the following equation: XVOX = NINTXI +MDVOX Eq. 31 The NINT function rounds the expression to the nearest integer, thus giving an integer location of the particle that corresponds to the voxel location. Adding the MIDVOX value establishes which voxel X1=0.0 is in. The floating-point origin has been defined as being in the center of the MIDVOX voxel. The next step is a check to ensure that the floating-point location and voxel location correspond correctly. The relationship given below calculates the perpendicular distance from the particle to all 6 boundary planes of the voxel. This is done with the following equation: P3 = (XVOX- MJDVOX)* L + L_ X1 Eq. 32 2 Once the distances have been calculated, they are all checked to ensure the perpendicular distance is not negative. A negative perpendicular distance would indicate that the particle was incorrectly place within the voxel array. The next portion of HOWFAR is a quick check to make sure the particle is still within the voxel region of interest. If the particle leaves the region of interest, it is marked to be discarded and the HOWFAR subroutine returns. If the particle is within the region of interest, the HOWFAR subroutine next calculates the distance to the boundaries along the direction of travel. This is done similar to the equation above, except now the distance is along the direction of travel, so the expression is divided by the directional cosine of the angles. P3= (XVOX-MIDVOX)*L+ L -xI]UNP Eq. 33 1 2 Note that this value can be negative, indicating that the particle is heading in the opposite direction of the plane. If this is the case, the P3 is set to a large value of 5000 cm. The minimum of the 6 distances is found and assigned to the variable DIST. Finally, HOWFAR compares the DIST value to that of USTEP. If USTEP is greater than DIST, HOWFAR returns with no changes. Otherwise, USTEP is reassigned to equal DIST, and the region number is tagged to be changed by EGS4. Note that in this particle, the region number is inconsequential to the medium since all voxels are comprised of soft tissue. Thus, the region number is changed to either 1 or 2 depending on what the previous voxel region number was. Subroutine AUSGAB. The AUSGAB subroutine is very simple in this code. Note that the discarded energy is stored in a variable ENDISC. Otherwise the energy deposited is stored in the appropriate location of the array ESCORE, depending on the voxel where the energy deposition took place. Subroutine DISTTOREGION. This subroutine is used by PRESTA in transporting electrons. The purpose of the subroutine is to return the minimum distance to a boundary regardless of a direction of travel. Thus, the subroutine is very similar to HOWFAR. The only significant difference is that the perpendicular distance calculation described previously is used for all six planes. The minimum is taken and assigned to TPERP. Subroutine SOURCE. This subroutine tells EGS4 the parameters of the source particles. In this case, the source is always taken as the center voxel of the array. The floating-point location is randomly distributed throughout the center voxel using: XIN = (RAG3- 0.5)* L Eq. 34 The initial direction of the particle is also randomly distributed isotropically using: 4) = 2 * r * RNGI Eq. 35 0 = arccos(1 - 2 * RNG2) Eq. 36 Note that the RNG variables are random numbers between 0 and 1. The U, V, and W directional cosines mentioned earlier are then calculated using the values of PHI and THETA: UIN = sin(0) * cos(O) VIN = sin(0) * sin(O) Eq. 37 WIN = cos(0) Using Image as Input to Voxel Transport Building on the previous voxel array transport methodology, a code was written (Appendix C) which the segmented NMR image of trabecular bone was used as the basis for the transport geometry in EGS4. The two acquisitions of the 3-D image of thoracic vertebrae obtained on the 600-MHz spectrometer were used as the transport geometry. For each voxel in the segmented image, one of two transport media was assigned: marrow or osseous tissue. The atomic composition of osseous tissue, for simulating the voxels within trabeculae, was taken from that given in ICRU Publication 46 for cortical bone (ICRU 1992). It is assumed that the atomic composition of trabeculae is similar to cortical. The atomic composition of the marrow voxels was taken as a weighted average of the compositions of red marrow and yellow marrow, both of which are given in ICRU Publication 46. The percentage of red marrow by mass (the cellularity factor) in the thoracic vertebra was taken as 70% as given in Table 2 of Cristy (Cristy 1981). Note that in this approach, the active marrow is assumed to be uniformly distributed within the marrow cavities (identical composition to all marrow voxels). In this transport model, a region of interest (the same ROI that was used in acquiring chord distributions) was coupled to the EGS4 voxel array transport code. Transport of electrons and photons was performed within this region. When a particle left the region, it will be discarded. This model will provide information as to how important the reintroduction of particles becomes as electron energy changes. Details of Bone Array Transport Code Subroutine IMAGEREAD. This is the subroutine that is responsible for reading the image file and storing it as an array of bone or marrow media. Since the size of these images is rather large, a method for compressing the media array was used. This method takes advantage of the fact that there are only two media (bone and marrow) and the fact that there are 8 binary units (bits) in a byte. When the subroutine reads in a voxel, it takes a gray level (0 to 255) value from the image. This gray level is then compared to the predetermined threshold value to determine whether the voxel is bone (0) or marrow (1). It then calls a function CHANGEMED with arguments of voxel coordinates and media type. Function CHANGEMED. The CHANGEMED function finds the appropriate storage location for a voxel in the ARRAY variable and assigns it the appropriate medium value of zero or one. This is done using the bitwise operators LSHIFT, NOT, OR, and AND. This is the same method that was utilized in the chord distribution program discussed previously. Each location in the ARRAY variable thus contains information regarding the medium type of 8 different voxels. Function WHICHMED. This function is called throughout the code to interpret the compressed ARRAY and return the medium type of a given voxel location. Again, bitwise operators are utilized to accomplish this task. Subroutine FILTER This is the subroutine that performs the median filter operation on the image. The filter operates the same as it does in the chord distribution program. It should be noted that in the MAIN subroutine the volume fraction of marrow is measured before and after the FILTER subroutine is called. Subroutine HOWFAR. The subroutine HOWFAR is the same here as it was in the voxel array program with one exception. If the particle is moving into a new voxel, it determines the medium type of the new voxel and changes IRNEW to be the appropriate value (I=bone, 2=marrow). This could be a point of some confusion. The WHICHMED function returns a value of 0 for bone and I for marrow. However, the region number is 1 for bone and 2 for marrow. The subroutine DISTTOREGION is the same here as it was in the voxel array code. Subroutine SOURCE. This subroutine was written to handle a variety of source options. The user determines the source type in the MAIN routine by setting SOURCEMED to an appropriate integer value. The bone and marrow volume sources are handled similarly. A random floatingpoint within the region of interest is chosen. The subroutine then checks the medium of that location based upon its voxel location. If the medium is of the correct type, the point is accepted, otherwise it is discarded and a new point is selected. The marrow volume source does have an extra requirement. The endosteal region, which is discussed below, is considered part of the marrow voxels. It is necessary to exclude points in the endosteum from being starting points for marrow volume sources by checking the media of the six neighbor voxels. If one or more sides are bones, then the marrow voxel is a surface marrow voxel and it is necessary to check the floatingpoint location of the particle relative to the boundary. The perpendicular distance from the particle's potential starting point to the boundary is calculated. If this distance is less than 10 4m, the point is rejected (since the particle is in the endosteal region) and a new point is randomly chosen. The procedure for choosing the endosteal starting points utilizes similar methods to what has just been discussed. Instead of choosing a random floating-point location, a random voxel is chosen. If it is a marrow voxel, the subroutine checks to see if it is a surface voxel using the same method described previously. It is important that the number of bone neighbors is calculated, since the subroutine will select one starting point for every bone neighbor. The floating-point starting location is randomly selected to be within 10 gim of the voxel edge. This is done for multiple-sided marrow surface voxels by storing the floating-point locations in the arrays ENDOX, ENDOY, and ENDOZ. If there are multiple starting points (sides), the first starting point and source particle is fully transported. When EGS4 next calls the SOURCE subroutine, the next point and particle is selected from the arrays without randomly choosing a new marrow surface voxel. Subroutine AUSGAB. The energy deposition is scored fundamentally the same with the exception of the marrow and endosteal regions. However, instead of scoring the energy deposited in each individual voxel, the scoring is done by region type. All bone voxels are scored together, for example. The special case of scoring the endosteal (and marrow) dose is considered next. Method for Scoring Dose in the Endosteal Region If in the AUSGAB subroutine the energy deposition took place in a marrow voxel, a subroutine called SCOREENDOST is called. Similar to the SOURCE subroutine, the neighbors are checked to see if this is a marrow surface voxel. If not, all the energy deposition is scored in the marrow. If it is a marrow surface voxel, there are two different methods for scoring the endosteal deposition. Method 1. This method simply scores the deposition weighted by the respective volume fraction of marrow and endosteum in that voxel regardless of the location of the event. The number of sides, and thus the number of endosteal surfaces, is calculated. This number is then used to determine the volume fraction of endosteum in the voxel. Note that possible overlapping of two neighboring endosteal surfaces is ignored, resulting in a very slight overestimation of endosteal volume fraction, and thus overestimation of the endosteal absorbed fraction. Method 2. This method utilizes the floating-point location of the energy deposition event with respect to the endosteal surface. After finding the location of the neighboring bone voxels, the perpendicular distance to those voxels is calculated. If this distance is less than 10 pin, the event is treated as occurring in the endosteum and all the energy deposition is scored as such. Otherwise, the energy deposition is scored in the marrow. The results of these two methods will be compared, and one will be chosen as the method for scoring endosteal dose. The Infinite Trabecular Transport Model This model again builds on the previous bone array transport model (Appendix D). The code was modified so that if a particle leaves the region of interest it will be reintroduced back into the region. This model effectively creates an infinite region of trabecular bone. In this manner, the transport code will generate absorbed fraction data that should be equivalent to all previously developed models that use chord distributions as input. None of these models allow the electron to leave the trabecular region. Whitwell did, however, apply a geometry factor called an equilibrium factor in attempt to account for the macroscopic dimensions of a bone site. The algorithm for reintroducing the particle is to place it randomly back within the image, with the condition that it be place in the same medium (bone or marrow) with the same direction as when it reached the boundary. The particle is introduced with the same direction to preserve any anisotropy preference that may exist in the sample. The potential effect of any anisotropy of the sample's microstructure will only be seen in this study, and will not affect the results of the other models. Details of Infinite Transport Code Subroutine REINTRODUCE. When the particle leaves the region of interest in HOWFAR, the subroutine REINTRODUCE is called. The first step this subroutine performs is to store the medium and integer voxel location of the voxel the particle was in when it exited the region of interest boundary. Next, a new voxel location of the same medium and within the region of interest is randomly chosen. Six new parameters are introduced. ISHIFT, JSHIFT, and KSHIFT are defined as the integer value of the shift between the old voxel location and the new randomly chosen voxel location. The total shift of the particle throughout its history is recorded by adding these parameters to TOTALISHIFT(NP), TOTALJSHIFT(NP), and TOTALKSHIFT(NP). The NP variable is necessary so that EGS4 can transport secondary particles using the "shift value" where they were created. These shift parameters result in the only significant change to the other subroutines. For example, the distance calculations, and voxel coordinate determination equations must now include the shift values: P3= -XVOX IDIM TOTALISHIFT(NP) *L + L_ XI, and Eq. 38 - L 2 XVOX = NINTK2J + IDIM + TOTALISHIFT(NP). Eq. 39 T 2 These relationships will be modified once more for the macro-thoracic model. The Macro-Thoracic Transport Model This model again modifies the previous infinite transport model. For the first time in trabecular bone dosimetry, the particles (both electrons and photons) are allowed to leave the trabecular region, enter a cortical shell, and leave the bone all together (Appendix E). This task was accomplished by transporting the particles similar to the infinite model. However, this time a macroscopic boundary was compared to the particle's floating-point location. The boundaries of this macroscopic region were determined using the size of the thoracic vertebra from images acquired on a 200 MHz spectrometer (Jokisch 1997; Jokisch et al. 1998b). These images are from the same sample the core was drilled from which was imaged at higher resolution on the 600 MHz unit. Images of a thoracic vertebral block were acquired on the 200-MHz spectrometer at the CSB. From these images, Figs. 30a to c display single slices of the vertebral block as viewed in the transverse, coronal, and sagittal planes, respectively. As shown in Fig. 30a, the vertebral foramen is clearly visible on the lower left side of the vertebra. The foramen is also visible running along the right side of the vertebra in sagittal view within Fig. 30c. The foramen itself is dark, but is visible due to the strong signal of the adjacent gauze used to wrap the specimen. Similarly, cortical edges of the vertebra in each figure are also visible due to signal from the fluid-soaked gauze and external soft tissue layer. Clearly, the higher intensity marrow regions and lower intensity trabeculae regions are visible in all image planes. It was determined that a semi-cylinder geometry would best fit the macro boundary of the thoracic vertebral body. The block of thoracic vertebra imaged on the 200 MHz spectrometer did not have vertebral processes, and thus the macro-geometry chosen only fits the vertebral body. Fig. 31 depicts the geometry chosen. Note that the geometry is not a perfect semi-cylinder. Rather, the plane across the z-axis has been offset to a certain distance. Measurements of cortical thickness were taken from the images in Figs. 30a to c. A cortical shell was placed on all sides of the trabecular region, and was given a thickness of 1.037 mm. There was not a significant variation in the thickness of the cortical region with location, so a single value of cortical thickness was used to create a shell around the trabecular region. Once the particle reaches the edge of the trabecular region, it will no longer be transported in voxels, instead being transported in a region of cortical bone. If it reenters the trabecular region it will be reintroduced into the voxel transport. If the particle exits on the exterior periosteal side of the cortical shell, it will be discarded. Details of Thoracic Transport Code Subroutine SOURCE. The same sources are considered here as before, but due to the inclusion of the cortical shell boundary, there is a slight modification to the coordinate system. Previously, a random floating point was chosen with the region of interest. Now this floating-point location is chosen to be within the entire trabecular volume defined by the cortical boundary: XIN =(RNG6- 0.5)* 2 * RAD YIN = (RNG7 - 0.5)* C Eq. 40 ZIN - RNG8(RAD - ZPANE) + ZPIANE where RAD is the radius of the cylinder and C is the height of the cylinder. ZPLANE is the offset distance from the plane and the center point of the cylinder. A while loop excludes points that are outside of the cylinder. It is necessary to relate this coordinate system to the region of interest, which is smaller than the total trabecular volume. This is done using the XSHIFT, YSHIFT, and ZSHIFT values: XSHIFT = RNG3 * [L + L * (IMAX - IMIN)] - L /2 - (IDIM2 - IMIN)L - XIN Eq. 41 Subroutine HOWFAR. Adding a cortical shell and boundary requires adding two regions: a cortical region and the discard region. These changes are seen in the HOWFAR subroutine. In addition, the subroutine includes a new floating-point and voxel location determination using the new shift values: p3 = XVOX IDIM2 TOTALISH1TI(NP))L - L- X1 - XSHIFh Eq. 42 XVOX = NINT(X'+ XH1FT + + TOTALISHIFT(NP). Eq. 43 L 2 New checks have also been put in place to check the distance to the cortical shell. If the particle is in the trabecular region (region 1 or 2), the distance to the cortical shell is checked as well as the distances to the voxel boundaries. There are 4 surfaces to check on the cortical shell: the circular surface of the cylinder, the plane cutting the top of the cylinder (YTOP), the plane cutting the bottom of the cylinder (YBOT), and the plane cutting the cylinder into some fraction of a whole cylinder (PLANE Z). HOWFAR takes the smallest of the distances to the voxel boundaries and the distances to the cortical shell and compares then to USTEP. If the cortical shell is the nearer boundary and is smaller than USTEP, the region is changed to 3 for the cortical shell. The next time the code enters HOWFAR (in region 3), the voxel boundaries are no longer considered. Instead, the interior and exterior boundaries of the shell are checked. If the particle leaves via the exterior boundary, it is discarded. If the particle leaves the cortical shell via the interior boundary, it is considered to reenter the trabecular region and the subroutine REINTRODUCE is called. The subroutine DISTTO REGION uses the same algorithm as HOWFAR, only calculating the nearest distance to the boundaries regardless of the direction of travel. Subroutine REINTRODUCE. This subroutine is now called under two different circumstances. The first when a particle leaves the region of interest. This is treated the same way as it was in the infinite model. The second circumstance is when the particle is reentering the trabecular region after having been in the cortical shell. In this case a random voxel is chosen within the region of interest. Since it is impossible to determine whether the particle should be reentering a bone or marrow voxel, no region preference is considered in this case. However, the location and direction of the particle relative to the cortical shell is preserved. The total shift values are now determined based on the value of the floatingpoint location of where the particle will be (XNXT, YNXT, ZNXT) after moving a distance USTEP. Method of S-Value Calculations For electron transport in trabecular bone, three sources and targets are considered: the trabecular bone volume (TBV), the trabecular marrow space (TMS), and the trabecular bone endosteum (ThE). The Medical Internal Radiation Dose (MIRD) Committee established a method for calculating internal dose (Loevinger et al. 1991). This method calculates the absorbed dose to a target region from a source to be the product of the cumulated activity in the source region and a single value (S-value) which factors in the energy deposition for that particular source, target, and radionuclide combination. D(rT +- r,) = A8 x S(rT +- r.) Eq. 44 According to this method, S values for specific radionuclides are calculated for a source region rs and a target region rT: S(rT <- rs )= i AOi(rT - rs) Eq. 45 S MT where Ai is the mean energy emitted per nuclear transition, oi(rT -rs) is the absorbed fraction of energy in the target region for the iv radiation type that originated in the source region, and mT is the mass of the target region. The nuclear decay data were taken from Eckerman et al. (1993; 1994). These files partition the composite beta-particle spectrum for each radionuclide into approximately 100 monenergetic electron energy bins, each with its own particle radiation yield. As mentioned, the absorbed fractions are being calculated using the results from the EGS4 codes. The energy emitted per transition is well known, leaving the target mass as the only unknown. At present all skeletal dosimetry models have derived skeletal tissue masses from sources completely separate from those used to calculate absorbed fractions. Marrow mass estimates come from a study performed by Mechanik in 1926 in Russia (Mechanik 1926). Woodard (1960) summarized the Mechanik paper: In his work Mechanik cleaned the skeletons of 13 cadavers, weighed the fresh bones separately, removed the marrow by a process of maceration which is not described in detail, weighed the moist macerated bones, and recorded the difference between the two weights as the weight of marrow. In other studies he showed that maceration resulted in only minor loss of weight from cortical bone, and that the loss of weight from whole bones was due almost entirely to removal of the marrow... Six of the bodies were of men and seven of women. Their ages ranged from 16 to 86 years. The causes of death are given as 'senile marasmus', four cases (two of them aged only 58 and 60 years); pneumonia, three cases; tuberculosis, three cases; heart disease, two cases; malaria, one case. The bodies appear to have been somewhat but not excessively, emaciated, the weights of the women ranging from 43.5 to 55.2 kg, and those of the men from 59.6 to 65.0 kg. It is most unfortunate that the bodies of previously healthy victims of accidents or other causes of sudden death were not chosen for this study. In the ones actually studied, only those who died of pneumonia presumably were ill so short a time that their skeletons would be likely to be unaffected. Most of the others appear to have succumbed to prolonged wasting illness which might have led to extensive remodeling of the trabecular structures and even of the cortical bone. It is difficult to predict what changes this would cause in the size and distribution of the marrow spaces, but it seems clear that data obtained from such bodies should be applied with caution to normal individuals. Despite these cautions, this data has been extrapolated for use as reference man marrow masses. To calculate masses of active, inactive, and total marrow, cellularity factors must be known. A cellularity factor is the fraction of active marrow mass in the total marrow mass for a given skeletal site. These factors were calculated by Cristy (Cristy 1981) and are tabulated in ICRP Publication 70 (ICRP 1995). The dry weights of the skeleton are also tabulated in ICRP 70 and were originally measured by Trotter and Hixon in 1974 based on 30 white males (Trotter and Hixon 1974). Endosteal mass measurements have been obtained from the surface-to-volume ratios and an assumed endosteal thickness of 10 pim (Bouchet 1998; Bouchet et al. 1999a). A very unique aspect of skeletal dosimetry via NMR microscopy is that target region masses and absorbed fractions can be measured from the same sample. All mass measurements can be based on the same region of interest of the NMR image within which radiation transport was performed. First the total volume of the trabecular region is calculated based on the macro-thoracic boundaries. Next, the fraction of bone and marrow voxels in the region of interest is used to estimate the total volume of bone and marrow within the thoracic vertebral body. Multiplying this bone volume by the density of adult cortical bone (1.92 g cm-3), yields the total trabecular bone volume (TBV) mass. To determine the mass of the trabecular marrow space (TMS), trabecular active marrow (TAM), trabecular inactive marrow (TIM), and trabecular bone endosteum (TBE), other measurements from the NMR images are necessary. First, the volume of endosteum must be subtracted from the calculated bone marrow volume fraction. Going through the region of interest image and counting the number of bone/marrow surfaces gives an estimate of the surface area. This estimate is most probably high due to the jaggedness in the bone-marrow interface introduced by the voxelization process. Since the endosteal region is assumed to be 10 .m thick, the volume of trabecular bone endosteum is calculated by multiplying the surface area by 10 gim and the ratio of macrothoracic volume to region-of-interest volume. Multiplying this value by the density of endosteum (1.03 g cm3) gives the total trabecular bone endosteum mass. The marrow masses are calculated by first subtracting out the volume of trabecular bone endosteum. The density of all the marrow space is taken to be 1.03 g/cm3 yielding the trabecular marrow space (TMS) mass. Finally, cellularity factors from ICRP 70 are used to find the mass of the trabecular active marrow (TAM) and the trabecular inactive marrow (TIM). Table 3 summarizes the derivation of these masses. Results and Discussion Voxel Array Transport Figs. 32 to 35 display the results used to benchmark the voxel array radiation transport code to the code of Bouchet (1998). Fig. 32 shows the absorbed fraction in the source voxel of soft-tissue as a function of photon energy for a voxel size of 0.3 cm. As expected, the curve drops off sharply as the photon energy increases. The results compare quite nicely with those of Bouchet (1998). The same relationships are shown in Fig. 33 for electron sources. The two curves in this work are for different values of ESTEPE, which places a limit on the electron step size. The value set by the user is the maximum allowable fractional energy loss of the electron per step. Here, ESTEPE values of 0.02 and 0.05 were used. Slight differences are seen at intermediate energies. The Bouchet curve was calculated with an ESTEPE of 0.05. |

Full Text |

PAGE 1 BETA PARTICLE DOSIMETRY OF THE TRABECULAR REGION OF A THORACIC VERTEBRA UTILIZING NMR MICROSCOPY By DEREK W. JOKISCH A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 1999 PAGE 2 ACKNOWLEDGEMENTS First, I would like to thank my colleagues in the Department of Nuclear and Radiological Engineering. The "bone group" of Phillip Patton, Didier Rajon, and Lionel Bouchet was a great help throughout this research. I would also like to thank my committee and the faculty in the department for all of their help. Dr. Wesley Bolch has provided the enthusiasm, encouragement, and leadership that have made this research successful. Dr. Ben Inglis at the University of Florida Brain Institute provided help with the training and troubleshooting necessary for the NMR image acquisitions. In addition, I would like to specifically thank Dr. Bolch and Dr. David Hintenlang for the guidance they have provided throughout my graduate education. I would like to thank my parents for providing tremendous support throughout all my years. Finally, I would like to thank my wife, Kelly, for her patience and support over the last four years. This research was performed under appointment to the Nuclear Engineering/Health Physics Fellowship Program administered by the Medical University of South Carolina for the U.S. Department of Energy. ii PAGE 3 TABLE OF CONTENTS ACKNOWLEDGEMENTS i ABSTRACT v CHAPTERS 1 INTRODUCTION 1 2 THE MEASUREMENT OF CHORD DISTRIBUTIONS IN DIGITAL IMAGES.. 4 Introduction 4 Chord Distributions 4 Chord Distributions across a Square/Rectangle 5 Chord Distributions across Spherical Objects 9 Relationship between \iand I-random Chord Distributions 10 Materials and Methods 11 Chord Lengths across Voxelized Cube 11 Chord Lengths across Voxelized Sphere 11 Results and Discussion 13 Chord Lengths across Voxelized Cube 13 Chord Lengths across Voxelized Sphere 13 Conclusion 14 3 MEASUREMENT OF TRABECULAR CHORD DISTRIBUTIONS FROM NMR MICROSCOPIC IMAGES FOR SKELETAL DOSIMETRY 29 Introduction 29 Bone Structure/Physiology 29 Bone Cell Types 30 Factors in Trabecular Microstructure Variation 31 Past Skeletal Dosimetry Work and Models 33 Modern Imaging Techniques for Studying Trabecular Bone Architecture 35 Materials and Methods 38 Specimen Preparation 38 Imaging Hardware 39 Image Processing 40 Chord Distribution Acquisition 43 Functions whichMed and changeMed 44 Use of Step Sizes in Chord Distribution Program 45 Statistical Independence of Bone and Marrow Chord Lengths 45 Results and Discussion 46 iii PAGE 4 Estimates of Trabecular and Marrow Cavity Chord Distributions 47 Statistical Dependence of Chord Distributions 50 Conclusion 51 4 A NEW METHOD FOR BETA-DOSIMETRY OF THE TRABECULAR SKELETON USING MONTE CARLO TRANSPORT IN VOXELIZED NMR IMAGES 71 Introduction 71 Chord Length Distribution Based Dosimetry Models 71 Possible Limitations of Chord Length Distribution Based Dosimetry Models. ... 74 Electron Gamma Shower 4 77 Materials and Methods 77 Voxel Transport in EGS4 77 Details of Voxel Array Transport Code 78 Using Image as Input to Voxel Transport 81 Details of Bone Array Transport Code 82 Method for Scoring Dose in the Endosteal Region 85 The Infinite Trabecular Transport Model 85 Details of Infinite Transport Code 86 The Macro-Thoracic Transport Model 87 Details of Thoracic Transport Code 89 Method of S-Value Calculations 91 Results and Discussion 94 Voxel Array Transport 94 "BoneArray" Transport 95 Infinite Array Transport 95 Macro Thoracic Transport 96 Method of Scoring Endosteal Dose 98 Comparisons to Chord Length Distribution Based Models 98 Conclusions 102 5 SUMMARY AND CONCLUSIONS 130 APPENDIX A CHORD DISTRIBUTION ACQUISITION PROGRAM 133 APPENDIX B VOXEL ARRAY EGS4 USER CODE 1 43 APPENDIX C BONEARRAY EGS4 USER CODE 153 APPENDIX D INFINITE TRABECULAR BONE EGS4 USER CODE 173 APPENDIX E MACRO-THORACIC VERTEBRA EGS4 USER CODE 194 REFERENCES 223 BIOGRAPHICAL SKETCH 236 iv PAGE 5 Abstract of Dissertation Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy BETA PARTICLE DOSIMETRY OF THE TRABECULAR REGION OF A THORACIC VERTEBRA UTILIZING NMR MICROSCOPY By Derek W. Jokisch August 1999 Chairman: Dr. Wesley E. Bolch Major Department: Nuclear and Radiological Engineering Radiation damage to the hematopoietic bone marrow represents the primary limiting factor to the further development of internal emitter therapies such as radioimmunotherapy and the use of incorporated radiopharmaceuticals for bone pain palliation. Improvements in radiation dosimetry of bone marrow are believed to be a prerequisite to accurate predictions of myelotoxicity for these radionuclide therapies. Current radiation dosimetry models for the prediction of marrow dose utilize a scheme in which separate calculations of cumulated activity and dose per transition (radionuclide S value) must be made. The selection of an appropriate S value is generally limited to one of only three sources, all of which use as input the trabecular microstructure of an individual measured 20 years ago, and the tissue masses derived from different individuals measured 70 years ago. This work improves on previously developed methods, which may be used to expand the microstructural database (particularly for non-Reference Man patients). PAGE 6 Techniques were developed to avoid voxel effects that arise when taking microstructural measurements across a digitized image. In addition, this work developed a basis for comparison of the existing dosimetry models to an accurate methodology allowing for radiation transport in a voxelized image. The images used are obtained using NMR microscopy methods. This work will be the first of its kind in skeletal dosimetry in that it will allow for S-value calculation using microstructural and mass data from the same source. A new method for performing skeletal dosimetry was developed, and absorbed fraction results are found to be consistent in shape with other models. At electron energies less than 1 00 keV, all models studied were found to be consistent for all source and target combinations. Finally, a dose example comparing accepted methodologies with the one developed in this study illustrated the variance and importance of skeletal tissue masses used in calculating S-values and absorbed dose. vi PAGE 7 CHAPTER 1 INTRODUCTION Due to the important role bone plays in both the skeletal and hematopoietic systems, radiation doses to the skeleton have important consequences. Not only is bone serviced by a complex vascular system, but it also serves as the "housing" for the hematopoietic marrow, which is responsible for the production of blood cells. The interlaced geometry of the bone and marrow regions necessitates that a discussion of the radiation dose to one region can not take place without discussing the effect it has on the other system. In other words, radiation treatment of an osteosarcoma, or bone tumor, is limited by the corresponding radiation damage to healthy marrow. Conversely, ablation of marrow by irradiation for the purposes of marrow transplants is limited by the radiation damage to healthy osteogenic tissue. Accurate internal dosimetry of the trabecular skeleton is important both within the fields of radiation protection and medical physics. Within the radiation protection field, several radionuclides preferentially seek out the skeletal system upon inhalation or ingestion. Strontium-90 and Radium-226 are examples of two radionuclides that have been studied extensively over the last 50 years (Hindmarsh et al. 1958; Vaughan 1960; Spiers 1966a; Spiers 1967; Spiers 1969; Vaughan 1973; Polig et al. 1992). Presently, the U.S. Department of Energy (DOE) faces an enormous challenge in the envirormiental clean-up and waste management of its facilities. Overall, there are 137 sites with 10,000 individual remediation units and 7,000 contaminated buildings that 1 PAGE 8 2 must be safely dismantled (U. S. Department of Energy 1995). Over half the radionuclides that pose an inhalation hazard to workers during decontamination and decommissioning (D&D) activities are known to localize within the skeleton. As both the Nuclear Regulatory Commission and DOE have established criteria for D&D activities that are now dosimetry-based, accurate and nonconservative models for radiation dose to the skeleton become increasingly important in making cost-effective decisions on cleanup efforts. Recent advancements in nuclear medicine have added new reasons for being concerned with trabecular dosimetry. In radioimmunotherapy applications, dose to the bone marrow has been established as a limiting factor (Rubin and Scarantino 1978; Siegel et al. 1990; Sgouros 1993; Sgouros et al. 1996; Zanzonico and Sgouros 1997). Another internal therapeutic application of beta-emitting skeletal-seeking radionuclides is for bone pain palliation in patients with painful osteosarcomas (Payne 1608; Potsaid et al. 1978; Poulsen et al. 1989; Ackery and Yardley 1993; Collins et al. 1993; Porter and Chisholm 1993; Silberstein 1993; Atkins et al. 1995; Hoskin 1995a; Hoskin 1995b; Kan 1995; Twycross 1995; Silberstein 1996; Ben-Josef and Porter 1997; Janjan 1997; Krishnamurthy et al. 1997; Mercandante 1997; Goddu et al. 1999; Dawson et al. 1999). Unfortunately, the mechanism that contributes to patient relief is not well understood. While it is beyond the scope of this specific research project, a better understanding of the radiation dosimetry of the trabecular region could result in a better understanding of the palliative phenomenon. It is well known that radiation can lead to cancers in both the skeletal and hematopoietic systems. Of these cancers, osteosarcomas and leukemia are of major PAGE 9 3 concern. Furthermore, it is six times more likely that an osteosarcoma will develop on trabecular surfaces than on cortical endosteum (Spiers et al. 1977) due to the fact that trabecular bone has six times the surface area of cortical bone (Vaughan 1973). Consequently, it becomes important to accurately determine the absorbed dose to this tissue for differing therapy agents and treatment regimes. With improved dosimetric models for trabecular regions, unintended risks associated with these therapies may be reduced. This work was initiated four years ago in an effort to find out if improved methods existed for obtaining the microstructural data traditionally used in trabecular dosimetry. The next chapter describes the modality chosen for obtaining this microstructural data using NMR microscopy. In addition, the characteristics of acquiring this unique set of geometrical data are described. Potential problems arise when acquiring data from digital images. These problems are identified, and solutions are presented. Chapter 3 presents the results obtained from two separate images of the same human thoracic vertebral sample. These results can then be used as input for a trabecular bone dosimetry model. Finally, Chapter 4 presents an alternative, and irmovative method for performing dosimetry in the trabecular skeleton. The images are directly coupled to radiation transport codes allowing for voxelized transport in the real (digitized) structure. The results are then used to compare with traditional methods of performing trabecular dosimetry. PAGE 10 4 CHAPTER 2 THE MEASUREMENT OF CHORD DISTRIBUTIONS IN DIGITAL IMAGES Introduction F. W. Spiers, in his work with skeletal dosimetry, was the first to recognize that trabecular bone dosimetry required detailed knowledge of trabecular microstructure (Spiers and Overton 1962; Spiers 1963). His research group at the University of Leeds developed a method for performing skeletal dosimetry using frequency distributions of straight-line path lengths through bone and marrow regions. The current study looks at the methods for obtaining these distributions and the characteristics of measuring them within digital images. Chord Distributions The current accepted method of performing beta-particle dosimetry in trabecular bone relies on distributions of path or chord lengths through the trabecular site of interest. The frequency of chord lengths through bodies has been studied for applications varying from acoustics to ecology (Kellerer 1971). Chord lengths are defined by the intersection of a straight line or ray with two boundaries. There are a variety of methods for obtaining these distributions dependent on the origin and direction of the rays relative to the object. As pointed out by Eckerman (Eckerman et al. 1985), "Failure to note the distinct nature of these distributions can result in misunderstanding of some aspects of the radiation transport processes." Three fundamental methods of randomly obtaining these fi^equency distributions are relevant in trabecular dosimetry. PAGE 11 5 1. Mean-free-path randomness (or ^-randomness). A chord of a convex body is defined by a point in space and a direction. The point and the direction are chosen randomly from independent uniform distributions. This kind of randomness results, for example, if the convex body is exposed to a uniform, isotropic field of straight lines. 2. Interior radiator randomness (or I-randomness). A chord is defined by a point in the interior of the convex body and a direction. The point and the direction are chosen randomly from independent uniform distributions. This kind of randomness results, for example, if the convex body contains a uniform distribution of point sources, each of which emits radiation isotropically. 3. Surface radiator randomness (or S-randomness). A chord is defined by a point on the surface of the convex body and a direction. The point and the direction are chosen randomly from independent uniform distributions. This kind of randomness results, for example, if the surface of a convex body contains a uniform distribution of point sources, each of which emits radiation isotropically (Kellerer 1971). Mean firee path randomness was utilized by Beddoe in the work of Spiers at the University of Leeds (Beddoe et al. 1976), and is the method used at the University of Florida (Jokisch et al. 1998b; Bouchet et al. 1999b). Several people have studied the mathematics of chord distributions across simple geometric shapes (Coleman 1969; Kellerer 1971; Eckerman etal. 1985). Chord Distributions across a Square/Rectangle Of particular interest in this study is the nature of chord distributions across rectangles, the typical shape of pixels within a digital image. Fig. 1 is an illustration of rays crossing a square at a given angle. ' For a given angle of incidence, 0, there is a maximum chord length occurring when the ray is able to reach the opposite side of the square. This maximum chord length is equal to W*sec0, Eq. 1 where W is the dimension of the square. Thus, PAGE 12 6 6 = arcco; Eq.2 where L is the length of the maximum chord. The relative number of chords with this length is going to be proportional to W-x, since there is a chord fired fi'om an equally spaced distance along the side of the square. The dimension x = Wtane. Eq. 3 Setting f(L)=W-x, where f(L) is the frequency of chords of length L, results in f(L) = W 1-tan arccos Eq. 4 This equation results in the curve shown in Fig. 2. When viewed within a larger distribution of chord lengths from a digital image, this pixel effect "A" will result in a series of spikes with the tail shown in Fig. 2. Also obvious in Fig. 1 is the fact that a linear distribution of chord lengths of length less than W*sec(9) will be measured. These chords will be measured with an equal frequency regardless of angle of incidence for chords of length less than W. Consequently, as a result of pixel effect "B", a straight line of equal non-zero probability is expected leading up to the length equal to the pixel size. For chords from length W to W*sec(9niax), there will be a linear decrease in the fi-equency of chords since the frequency of the angles is equal. Note that Gmax = 45Â° for a square, so sec(0max) = 1.414. For a square pixel resolution of 59 this maximum reach of pixel effect "B" will extend out to 83 fim. Obviously in the range from 59-83 ^im, or W to W*sec(0niax), this effect is superimposed by pixel effect "A". To summarize the two pixel effects, there are contributions from chords resulting from rays traversing from one side of the pixel to the PAGE 13 opposite side (effect "A") and from chords resulting from rays traversing from one side to an adjacent side of a pixel (effect "B"). The chord distribution across a square has also been derived by Kellerer (Kellerer 1971), yielding 1 2W for L PAGE 14 resolution is chosen in order to produce a smoother distribution, which is just as useful in dosimetry models. Coleman (1969) has derived the ^i-chord distributions through a cube of unit width. The result is as follows: 81^ -31" m= for 0 < I < 1 6;r + 61-1-8(2// -HyZ^ forl PAGE 15 Chord Distributions across Spherical Objects The relationships for chord distributions in a circle and in a sphere are easily derivable. For the circle shown in Fig. 6 where R is the radius, and L is the distance of a chord crossing the circle at a point y, L = lx Eq.9 dL v2y Â±L 2 a. Eq. 10 Eq. 11 Eq. 12 The chord lengths L, are fired uniformly across the circle from -R to R, so the probability density function of y is Eq. 13 Since each given chord length L occurs twice over the range of y = -R to R, the probabilities of y and L are related by 2f{y)dy = f{L)dL. Eq. 14 Substituting Eqs. 12 and 13 into Eq. 14 yields: , \. L , : . ^\ fiL) = 2f{y)^ = -Eq. 15 4J/?^ L \2j ARM'AEq. 16 PAGE 16 10 Similar techniques are used to derive the chord distribution across a sphere. The resulting frequency distribution is The mathematically derived distributions for a circle and a sphere are compared in Fig. 7. Relationship Between \Land I-random Chord Distributions The chord distribution based dosimetry models utilize the ^-random chord distributions for their input. However, it is also necessary to use I-random chords in the model of Bouchet et al. (Jokisch et al. 1998b; Bouchet et al. 1999b). This model samples from an I-random distribution for the first "shell" when a particle originates. To derive an I-random chord distribution from a ^-random chord distribution, the following relationship can be used: Md) = j^fAdl Eq.l8 where fi(d) and fn(d) are the probability density functions for chord lengths under Iand H-randomness, respectively, and PAGE 17 11 Materials and Methods In order to study the consequences of measuring chord lengths in a voxelized digital image, studies were done on a couple of different simple voxelized shapes. First, chords were measured across a cube in order to verify the relationships discussed previously. Next, a three-dimensional digital image was created of a sphere. Obviously, a voxelized sphere no longer maintains the smooth edges that a mathematical sphere would have. The chord distributions for a sphere have been mathematically derived, and provide a method for quantifying effects pixels or voxels have on the measured chord distributions. Chord Lengths across Voxelized Cube Chords were acquired across a voxelized cube, to assess what changes might be seen in the chord distributions across each geometry. Chord Lengths across Voxelized Sphere Next, chord distributions were acquired across a voxelized sphere. First a sphere composed digitally of cubical voxels was created. Chord distributions across this body were then acquired using a variety of different methods. Chord distributions can be acquired in either two dimensions or in three dimensions. In fact, up to this point, chord distributions for skeletal dosimetry have only been acquired using two-dimensional techniques. Previous work at the University of Florida (Jokisch 1997; Jokisch et al. 1998b), as well as at the University of Leeds, obtains chord distribution measurements in multiple two dimensional slices from each of three orthogonal planes. In this work, however, three-dimensional images have been obtained and acquisition is not limited to the two dimensional studies performed at Leeds. Acquiring PAGE 18 12 chord distributions with both two-dimensional and three-dimensional techniques and comparing the resuhs can test the Beddoe statement. The method used to acquire chord distributions uses parallel isotropic rays fired across an image. When the ray intersects two boundary points, the distance of the resulting chord is measured. This distance is the measured chord length. These methods are simple enough when dealing with a continuous object. They become more difficult when dealing with voxelized objects due to the voxel effects discussed and derived in the introduction. To overcome these effects, three different methods for acquiring chord distributions have been developed. The first method is rather straightforward in that every chord length is measured regardless of its size or origin. This method will be referred to as the "pure" method. The second method insures that each measured chord crosses from one side of a voxel to an opposite side. In other words, chords that result from a ray crossing one side of a voxel, and then hitting an adjacent side are ignored. Mathematically the measured chord length is compared to a calculated minimum distance that is based on the angle at which the ray is traveling relative to the voxel. These calculations come fi-om the equations derived in the introduction. This method will be referred to as the "Large 1" method. Essentially, the "Large 1" method guarantees that the ray moves one resolution distance in either the x or y (or z in 3D) dimension. The "Large_2" method goes a step further in that it guarantees that the ray move a resolution distance in all two (or three) dimensions if a chord length is to be measured. Fig. 8 is a visual depiction of the two "large" methods. In this study, chords will be acquired using all three methods and the PAGE 19 13 results compared. In addition, this will be done using both two and three-dimensional techniques. Results and Discussion Chord Lengths across Voxelized Cube Chord lengths were acquired across a voxelized cube. The cube was placed orthogonal to the voxelization, such that there would not be any geometrical differences between a mathematically "perfect" cube and the voxelized cube. The results are shown in Fig. 9. The cube was set to have a unit length, width, and height. Fig. 9 shows good agreement between the mathematically derived and measured results. The peaks that are seen in the measured sample after unit width are due to angular sampling. Chords are fired in discrete angles, and as the discrete step is decreased, the distribution would smooth into the neighbor values. Firing chords over many angles quickly becomes computer-time limited, and may not be necessary for accurate dosimetry. Chord Lengths across Voxelized Sphere For this study, chords were fired across a voxelized sphere and compared to the theoretical result. Unlike the cube, the voxelized sphere does have a slightly different geometry from the "perfect" sphere. Chords were fired using the three different methods described earlier (each of the three methods in both 2D and 3D). Fig. 10 displays the measured chord distributions across the voxelized sphere of radius equal to 500 units using two and three-dimensional techniques. There is a difference at very low distances due to differences in the voxel effects that three dimensional acquisition pick up, while two dimensional techniques do not. However, it is interesting to observe that the general PAGE 20 14 shape of the two dimensional results match the expected spherical distribution, and not the circular distribution (from Fig. 7). Fig. 11 displays the results for the pure, "Large l", and "Large_2" acquisitions. These results were all obtained using three-dimensional acquisition of the chord lengths. The pure method results in the greatest peak at small chord lengths, followed by the "Large 1" technique as expected. It is important to note that the three techniques only vary at these small chord lengths and that the general shape of the distribution for the body being measured is preserved in all cases. Fig. 12 illustrates this point further by comparing the "Large 1" and "Large_2" results v^dth the expected mathematical resuh from a "perfect" sphere. The frequency of the small chords is critical when calculating the average chord length. All six acquisitions produce a different mean chord length as shown in Table 1 . The "Large_2" method resulted in mean results closest to those of the non-voxelized "perfect" sphere. Conclusion The problems associated with acquiring |a-random chord distributions in voxelized objects have been discussed. It is concluded that voxel effects should be minimized, and two different methods have been presented for doing this. It is recommended that the "Large_2" method should be used to acquire chords across voxelized surfaces. Note that small differences do exist between two-dimensional and three-dimensional acquisitions. These differences are probably too small to make significant differences in skeletal dosimetry. Nevertheless, the three-dimensional PAGE 21 15 acquisition method is considered more accurate and will be utilized in future studies of chord distributions in human trabecular bone samples imaged via NMR microscopy. PAGE 22 16 Table 1. Mean chord lengths for the various methods in a voxelized sphere. Method Mean Chord Percentage of the Mean Length Chord Length in the "Perfect Sphere Pure 3D 443.8 66.6 Pure 2D 525.9 78.9 "Large 1"3D 573.7 86.1 "Large 1"2D 614.1 . V 92.1 "Large 2" 3D 633.9 95.1 "Large 2" 2D 652.4 . 97.9 "Perfect" Sphere 666.7 100.0 PAGE 23 17 Figure 1. Sketch of rays traversing square pixel of width W. PAGE 24 18 Figure 2. Pixel effect "A" for a pixel width of W=100. PAGE 25 Figure 3. Sketch of rays traversing rectangular pixel of dimensions Wx x W, PAGE 26 20 0.018 0.016 0.014 0.012 0 50 1 00 1 50 200 250 300 350 400 450 Length (microns) Figure 4. Raw chord distribution with pixel effects. PAGE 27 21 4 Mathematical Cube Mathematical Square H 1 1 \ \ i 1 1 1 1 h H i h H 1 1I I I 0.01 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Chord Lengths 1.1 1.2 1.3 1.4 1.5 1.6 1 Figwe 5. The mathematical chord distributions across a cube and a square. PAGE 28 22 Figure 6. Sketch of circle for use in the derivation of circular chord distributions. PAGE 29 If 23 ' Sphere Circle I I I 0 100 200 300 400 500 600 700 800 900 1000 Chord Length Figure 7. Mathematical chord distributions for a sphere and a circle. PAGE 30 Figure 8. Illustration of two methods of obtaining chord distributions. The minimum accepted chord length relative to voxel dimensions is depicted for the "Large 1" (cross adjacent sides) and the "Large_2" (cross opposite sides). PAGE 31 25 0.01 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Chord Lengths Figure 9. Measurements of chord distribution across a voxelized cube. PAGE 32 26 0.016 0.014 0.012 I 0.01 u S 0.008 Â•a S 0.006 o Z 0.004 0.002 100 200 300 400 500 600 Chord Length 700 800 Â•pure3D pure2D 900 1000 Figure 10. Comparison of chord lengths measured with 2D and 3D techniques on the voxelized sphere. PAGE 33 1 27 0.016 0.014 0.012 I 0.01 r ^ 0.008 J S 0.006 o Z 0.004 0.002 "pure" (JD) "LargeJ" (3D) -I-.*-"-* 0 100 200 300 400 500 600 700 800 900 1000 Chord Length Figure 11. Chord distribution across the voxelized sphere using all three methods. I PAGE 34 28 0.005 1 0.0045 Chord Length Figure 12. Comparison of large technique results on the voxelized sphere to the expected mathematical result from a "perfect" sphere. PAGE 35 29 CHAPTER 3 MEASUREMENT OF TRABECULAR CHORD DISTRIBUTIONS FROM NMR MICROSCOPIC IMAGES FOR SKELETAL DOSIMETRY Introduction Bone Structure/Physiology There are two main types of bone in terms of histological structure. Cortical bone is the hard compact structure that makes up the exterior of all bones. Cortical bone comprises 80% of the skeletal mass (Berne and Levy 1993). One of the few structures that penetrate the compactness of the cortical regions is the Haversian canal system. The Haversian canals are the pathways the circulatory system uses to supply the living bone cells with nutrients. There have been two published studies on the dosimetry of cortical bone by Beddoe (1976a; 1977) and Akabani (1993). Most recently, Bouchet developed a model at the University of Florida (Bouchet and Bolch 1999). The second type of bone, and the area of interest in this research, is trabecular bone. Trabecular bone, also referred to as spongy bone, consists of a complex network of bone spicules, which surround cavities of marrow. Bone marrow can be either active (red marrow) or inactive (yellow marrow). The active marrow is responsible for the production of blood cell lines. The yellow marrow is inactive since the hematopoietic cells have been replaced with fat cells. Trabecular bone exists in the inner regions of the vertebra, ribs, skull, pelvis, and the ends of the long bones. Where the bone surface interfaces with either a Haversian canal (in cortical bone) or a marrow cavity (trabecular bone) there exists a thin layer of osteogenic cells called PAGE 36 30 the endosteum. A similar layer exists on the exterior of the cortical bone called the periosteum. Fig. 13 is an illustration of the cortical and trabecular regions showing these structures. Bone Cell Types The cellular components of cortical and trabecular bone are the same. There are three types of bone cells that control the production and destruction of osteoid matrix. Osteoblasts are responsible for the formation of bone, or ossification. They are responsible for the formation of a collagen-based osteoid matrix, and the deposition of calcium in the form of calcium phosphate into the osteoid matrix. Osteoblasts exist on the endosteal and periosteal surfaces, and are the most radiosensitive of the three bone cells (Vaughan 1960). The stem cells that produce the osteoblasts also exist on the endosteal and periosteal surfaces. These pre-osteoblasts are very radiosensitive. Osteoclasts counteract the work of the osteoblasts by destroying or resorbing bone. Osteoclasts also exist on the endosteal bone surfaces and are capable of removing calcium phosphate and destroying the osteoid matrix. They do this by producing hydrolytic enzymes that digest minerals and the bone matrix (Vaughan 1975). Osteocytes are simply osteoblasts that are surrounded by the osteoid matrix. Osteocytes are osteoblasts that bury themselves within the osteoid matrix over time. Obviously, osteocytes are not on the endosteal surface. However, osteocytes are believed to aid in the osteogenic processes by staying in contact with osteoblasts through charmels called canaliculi. Osteocytes may become active osteoblasts again if they are uncovered by bone resorption later in life. For these reasons, the degree to which the bone volume PAGE 37 31 is dosimetrically important is not fully understood. Fig. 14 is an illustration of trabecular bone showing the location of these bone cells. Factors in Trabecular Microstructure Variation The dynamic nature of bone has been outlined above by describing the function of the three bone cell types. The creation (by osteoblasts) and resorption (by osteoclasts) rates result in a process called bone remodeling. The ossification and resorption rates vary throughout life, thus controlling overall bone growth. These rates also respond to physiological inputs such as hormones and the presence or lack of compression stress. The remodeling of bone tissues results in approximately 15% bone mass turnover every year for an adult human (Berne and Levy 1993). Bone mass peaks in humans between the ages of 20 to 30 years. Remodeling reaches equilibrium around 35 to 40 years of age, and then decreases for the remainder of life (Berne and Levy 1993). Because women have smaller overall bone mass than men, this natural loss of bone, especially when coupled with hormonal losses due to menopause, can create bone structural problems such as osteoporosis. Trabecular structure varies with age (Atkinson 1965; Atkinson 1967; Snyder et al. 1974), gender (Atkinson 1967; Mosekilde 1989), skeletal site (Eckerman 1985), and skeletal orientation (Atkinson 1967; Atkinson and Woodhead 1973; Mosekilde 1989; Hahn et al. 1992). Due to these variations, trabecular microstructure data is more properly characterized by distributions as opposed to mean values. The ossification and resorption rates mentioned above also vary with skeletal site and orientation. Obviously, any change in the size of trabeculae corresponds with a change in marrow cavity size. Additionally, the percentage of active marrow that fills the cavities changes with age PAGE 38 32 (Mechanik 1926; Custer and Ahlfeldt 1932; Ellis 1961). For these reasons, any study on the microstructure of trabecular regions of bone must pay attention to age and genderrelated changes in that microstructure. Trabecular bone structure can also be highly anisotropic in its internal structure (Williams and Lewis 1982; Cowin 1989; Turner 1992). Several studies have demonstrated a difference between the horizontal and vertical trabecular structure in stress-bearing bones such as vertebra (Atkinson 1967; Atkinson and Woodhead 1973; Mosekilde 1989; Hahn et al. 1992). These studies suggest that the ossification and resorption processes in bone respond to compression and stress. In the case of a vertebra, the horizontal struts are not as structurally important as the vertical segments and they thin considerably faster than the vertical segments with subject age. There has also been at least one study that did not see a horizontal resorption preference (Snyder et al. 1993). Trabecular and cavity sizes also vary with skeletal location. Additionally, the fractional mass of active marrow also varies with skeletal location. Some skeletal sites, such as the adult vertebrae, are more important to marrow dosimetry than others due to the larger portion of active marrow they contain. Since yellow marrow does not contain appreciable populations of hematopoietic stem cells, skeletal regions containing yellow marrow are only of dosimetric importance in regard to radiation doses to endosteal tissues. The geometry and composition of the trabecular region of the skeleton creates several unique dosimetry problems. Since bone marrow cavities are located within the trabecular bone structure, the dimensions of the two interlacing regions must be accurately known in order to calculate the absorbed dose to these sites. The anisotropic PAGE 39 33 Structure of this region further complicates any dosimetry studies in that it is difficult to apply any sort of uniform modeling technique to such a complex geometry. Furthermore, the small sizes of trabecular and cavity regions, relative to the ranges of typical beta particles emitted from bone-seeking radionuclides, imply that an electron may traverse several cavities while continuously depositing kinetic energy. Two electrons with the same energy and starting point may take completely different paths, traversing differing amounts of marrow and bone as demonstrated in Fig. 15. Past Skeletal Dosimetry Work and Models F. W. Spiers is responsible for most of the early work on skeletal dosimetry. While at the University of Leeds, Spiers began with relatively simple studies on the bone and soft tissue interface, and the unique dosimetry associated with that region (Spiers 1949; Spiers 1951). Spiers later looked at influences of the percentage of active marrow on trabecular dosimetry (Spiers and Overton 1962; Spiers 1963). He utilized the active marrow distribution data derived by Ellis (1961) from the work of Mechanik (1926) and Custer (1932). Spiers was the first to recognize that the anisotropic structure of trabecular bone required a unique method for characterizing the geometry in order to perform accurate skeletal internal dosimetry of beta-emitters (Spiers 1966b; Spiers 1967). This characterization was originally performed using microscopes and visual inspection. At this point. Spiers' group began working on a method to describe the geometry in terms of frequency distributions of linear path lengths through the trabecular and marrow cavities. These distributions are called chord length distributions. Again, this work was originally performed using microscopes and visual inspection. PAGE 40 34 Eventually, the Leeds group was able to automate the process of obtaining chord distributions (Spiers 1969; Darley 1972; Beddoe 1976b; Beddoe et al. 1976). They physically sectioned trabecular bone regions in to thin slices and took contact radiographs of the slices. In their techniques, the radiograph is mounted on a turntable below a light microscope. Above the turntable is a photomuhiplier tube. As the turntable rotates, the radiograph is also moved radially, creating scan lines of minimal arc. The apparatus is shown in Fig. 16. The duration of a light pulse seen by the photomuhiplier corresponds to a marrow chord length. The opposite is true of trabecular chords. Darley (1972) developed the original apparatus. Later Beddoe used the system and improved on the radiography and preparation of the bone sections (Beddoe 1976a). The distance between consecutive scan lines in the Leeds optical scanner is approximately 8 (im. The Leeds scanner had a dead time of 39 jas after the registration of a pulse length. This corresponds to a lost path length of 100 ^m as the turntable continued to rotate. They justified this loss by stating that ". . .this lost path length occurs almost entirely over the "dark" feature which is not being measured" (Beddoe 1976a). The bone and marrow chord lengths are measured in separate scans. Thus, if marrow chords were being measured and the following bone chord was less than 100 ^im, the next marrow chord would be registered as being smaller than actual size. The opposite would be true for the bone chord scan. The effective resolution of their scanning system including film noise was reported as 1 1.5 ]xm (Beddoe 1976a). In order to obtain omnidirectional distributions. Spiers and his colleagues had to make some symmetry assumptions. In the case of human vertebra, the Beddoe study found symmetry in one direction. "This means that scanning measurements in any set of PAGE 41 35 parallel planes cut parallel to the symmetry axis are sufficient to generate an omnidirectional distribution" (p. 594, Beddoe et al. 1976). For adult dosimetry estimates, the Leeds research team established "definitive" chord length measurements at seven skeletal sites (parietal bone, rib, iliac crest, cervical vertebrae, lumbar vertebrae, femur head, and femur neck) for one 44-year-old normal human subject. Their rationale was to establish a skeletal dosimetry standard consistent with the concept of a "Reference Man" for use in radiation protection internal dosimetry calculations (ICRP 1975). Additional measurements were also made in two children of ages 9 and 1.7 years (Whitwell 1973). Modern Imaging Techniques for Studying Trabecular Bone Architecture While the research of Spiers and his students was superb in its level of detail and completeness, future improvements in skeletal dosimetry, particularly for medical applications, require an expanded database of marrow and trabecular chord distributions. These databases should more fully encompass variations in trabecular microstructure with both subject age and gender. Newer techniques in medical imaging can now be applied to this particular task. A few years ago, studies were initiated at the University of Florida (Jokisch and Bolch 1996; Jokisch 1997; Jokisch et al. 1997; Patton et al. 1997; Bolch et al. 1998; Jokisch et al. 1998a) to look at techniques that could be used to improve on, or expand, the microstructure database gathered at Leeds. This work resulted in choosing nuclear magnetic resonance (NMR) microscopy coupled with image processing techniques to obtain chord distributions in human thoracic vertebra (Jokisch et al. 1998b). PAGE 42 36 Interest in bone micromorphology extends well beyond the radiation dosimetry community. Many studies have focused on trabecular microstructure in an attempt to measure various structural parameters that might prove to be statistically reliable predictors of bone fracture risk in diseases such as osteoporosis. These studies have traditionally been performed using optical microscopy (Parfitt et al. 1983; Odgaard et al. 1990) or scanning elecfron microscopy (Whitehouse et al. 1971; Whitehouse and Dyson 1974; Boyde et al. 1986). These techniques require substantial sample preparation and are inherently destructive to the specimen. Furthermore, physical sectioning does not permit viewing the sample in multiple planes, a highly desirable feature considering the anisotropic nature of trabecular bone. . ' Over the past decade, several groups have investigated the use of two nondestructive techniques for high-resolution imaging of trabecular bone: quantitative computed tomography (QCT) and high-resolution NMR microscopy. QCT has been used to measure regional bone mineral density (Cody et al. 1989; Cody et al. 1991; Flynn and Cody 1993; Bone et al. 1994; Kleerekoper et al. 1994a; Kleerekoper et al. 1994b; Grampp et al. 1996; Link et al. 1997; Majumdar et al. 1997; Link et al. 1998a; Link et al. 1998b) and bone structural parameters (Kuhn et al. 1990; Chevalier et al. 1992; Durand and Ruegsegger 1992; Muller et al. 1996; Link et al. 1997; Majumdar et al. 1997; Link et al. 1998a; Link et al. 1998b; Laib and Ruegsegger 1999) at various skeletal sites in vivo. Several studies have utilized QCT for in vitro analyses of trabecular bone (Cody et al. 1989; Kuhn et al. 1990; Ciarelh et al. 1991; Cody et al. 1991; Engelke et al. 1993; Goulet et al. 1994; Muller et al. 1994; Kinney et al. 1995; McCubbrey et al. 1995; Cody et al. PAGE 43 37 1996; Muller and Ruegsegger 1996; Ruegsegger et al. 1996; Link et al. 1997; Jiang et al. 1998; Link et al. 1998a; Link et al. 1998b; Ouyang et al. 1998; Hans et al. 1999). hMR microscopy represents an alternative to QCT for analyzing trabecular bone microstructure. This imaging technique is ideally suited for this purpose in that bone marrow is composed primarily of water and lipids, thus providing an abundant source of proton MR signal. Conversely, bone does not contain hydrogen in both abundance and chemical form necessary to produce a sufficient signal. The bone-marrow interface thus ensures a high intrinsic contrast in the resulting image. Several investigators have used NMR microscopy to quantify trabecular microarchitecture both in vivo (Sebag and Moore 1990; Wong et al. 1991; Foo et al. 1992; Jara et al. 1993; Chung et al. 1994; Grampp et al. 1996; Guglielmi et al. 1996; Gordon et al. 1997; Majumdar et al. 1997; Ouyang et al. 1997; Song et al. 1997; Wehrli et al. 1998) and in vitro (Chung et al. 1995; Chung et al. 1996; Majumdar et al. 1996; Hwang et al. 1997; Wessels et al. 1997; Link et al. 1998c; Takahashi et al. 1999). Isotropic resolutions for these in vitro studies have been reported in the range of 50 to 150 jxm. NMR microscopy of human subjects in vivo have yielded images with voxels ranging from 78-200 ^m in plane and with slice thicknesses of 500700 |nm using clinical MR units at a field strength of 1.5 T (Jara et al. 1993; Majumdar et al. 1995). Improved resolutions for in vivo NMR imaging would be possible using newer 3 Tesla clinical machines. NMR microscopy presents three distinct advantages over QCT for studying the microarchitecture of trabecular bone for improved radiation dosimetry modeling. First, NMR does not utilize ionizing radiation and thus applications to in vivo imaging are not dose limited. Second, NMR images may be acquired in any arbitrary plane without PAGE 44 38 sample or subject repositioning. QCT would require sample positioning to acquire in a specific orientation. Finally, NMR microscopy can be used to assess the fat and lipid mass fractions of the marrow spaces (Dixon 1984; Ballon et al. 1991; Glover and Schneider 1991; Ballon et al. 1996; Ballon et al. 1998). This latter technique would allow one to not only assess the trabecular and marrow chord length distributions through the sample, but one could additionally determine the fraction of marrow space occupied by active marrow (i.e., the regional marrow cellularity). Marrow cellularity has been shown to be an important parameter in skeletal site-specific radiation dose estimates (ICRP 1995; Stabin 1996). Materials and Methods Specimen Preparation The University of Florida Tissue Bank, Inc supplied a single block of four human thoracic vertebral bodies. Vertebral bodies are a good site to begin studies of trabecular bone microstructure for dosimetry modeling in that the vertebra contain a large percentage of active marrow in adults (ICRP 1995). The subject, from whom the specimen was obtained, was a 52-y-old male trauma victim with no known metabolic disorders that would present an abnormal skeletal structure. The specimen was harvested post-autopsy within 12 hours of death and was stored at -20Â°C until later use. Following NMR imaging of the intact specimen on a Varian 200-MHz spectrometer, cylindrical cores were drilled from the vertebral bodies using a coring bit of 12-mm iimer diameter. Subsequently, the bone marrow was removed by immersing the cored samples in 5% sodium hypochlorite aqueous solution for several hours and rinsing PAGE 45 39 repeatedly with hot water. One of these samples was then suspended in 1 mM Gd-DTPA aqueous solution within a 13-mm ID glass vial for subsequent NMR imaging at 600 MHz. Imaging Hardware Proton NMR images were acquired on two commercially available spectrometers housed in the University of Florida's Center for Structural Biology (CSB), a component of the UF Brain Institute. The intact vertebral block was first imaged using a Varian 20cm-wide bore spectrometer operating at a 200 MHz proton resonance frequency (4.7 T magnetic field strength). A gradient amplitude of 5.8 Gauss cm"' was applied in all three axes. A 12 -cm-diameter quadrature birdcage radiofrequency coil was used to obtain sufficient sensitivity and RF field homogeneity. One cylindrical vertebral core was subsequently imaged on two different occasions using a Varian 13-mm-bore Unity Spectrometer operating at 600 MHz proton resonance frequency (14.1 T magnetic field strength). A gradient amplitude of 80 Gauss cm"' was applied in all three axes. A 15-mm-diameter standard high-resolution radiofrequency (RF) coil was used to obtain sufficient sensitivity and RF field homogeneity. The acquisition of the initial images of the entire vertebral block is described in Jokisch (Jokisch 1997). These two dimensional images will be utilized later for determining the macroscopic size of the thoracic vertebra. There were two imaging sessions performed on the 600-MHz spectrometer using the cored sample. A conventional 3D spin-echo sequence was used to obtain a ftilly three-dimensional image of the sample. The repetition and echo times were 300 ms and PAGE 46 40 24 ms, respectively. The field-of-view was 15 x 15 x 10 mm^ and a voxel spatial resolution of 59 x 59 x 78 ^m^ was achieved. The second image had a field of view of 11.25 X 15 X 15 mm^ and a spatial resolution of 59 x 59 x 59 ^nl^ It is these images from which both marrow and trabeculae chord length distributions will be obtained. In addition, these images will be used as the input to a radiation transport code that is discussed in Chapter 4. Image Processing An image is represented digitally as a series of discrete elements. These picture elements, or pixels, are small divisions of the picture. Pixels relate brightness to a given location in the overall image. Pixels are stored in a file in order fi-om left to right and top to bottom as gray levels. Gray levels are simply an integer that corresponds to the brightness of the pixel. The images used in this work used eight-bit data, or 256 gray levels. A gray value of 256 corresponds to white, and a value of 0 corresponds to black. In three dimensional image structures, the volume elements, or voxels, are stored in a three dimensional array. Three image-processing steps are required prior to making estimates of marrow cavity and trabecular chord distributions. These steps include (1) image thresholding, (2) image segmentation, and (3) image filtering. The first image-processing step is to acquire a gray-level intensity histogram of the voxels. A gray-level histogram is a frequency distribution of all pixel intensities within an image (Castleman 1996). Since the sample represents only two media (Gddoped water within the marrow spaces and the bone trabeculae), the histogram would ideally contain only two peaks: one peak at a lower intensity representing bone voxels PAGE 47 41 and another at high intensity representing water (or marrow space) voxels. Image segmentation is the recognition and delineation of objects within an image. In this work, it is desirable to separate the marrow cavities from the bone trabeculae by assigning a gray-level threshold that effectively segments the image into only bone and marrow voxels (a binary image). To avoid edge artifacts, construction of the histogram is typically confined to an interior region of interest within each image slice (Chung et al. 1995). In this study, image thresholding is performed automatically by a user-written code that incorporates the results of the application of the tissue classification model of Chung et al. (1995). In this model, a NMR image of trabecular bone yields a gray-level histogram containing two peaks: one which obeys a Rayleigh distribution (pr) and is associated with signal-free bone voxels, and one which obeys a Gaussian distribution (pg) and is associated with higher-intensity marrow-space voxels. The overall frequency of signal intensity x is thus given as p{x)=B^pXx)+MfPg{x) where ob is the standard deviation of the Rayleigh distribution (which has a mean of zero) describing the signal intensities from the bone voxels; and and au are the mean and standard deviation, respectively, of the Gaussian distribution describing the signal intensities from the marrow space pixels. Bf and Mf are the fractions of voxels in the image that are ideally assigned to bone and marrow, respectively, existing under zero partial volume intensity mixing. Since the constraint f-x'] r 1 ] exp + Mj. exp 12(7^ J Eq. 20 2a M PAGE 48 42 Bf+Mf=\ Eq. 21 must be satisfied, the overall frequency of signal intensity p(x) has four unknown parameters: ob, om, I^m, and Bf (or Mf). Using a composite histogram for the images, nonlinear least-squares techniques are used to determine best-fit estimates for these four parameters. A threshold intensity, x = T, can be defined such that all voxels with gray levels below T are considered bone voxels, and all voxels with gray levels above T are considered marrow voxels. The probability of (erroneously) classifying a marrow voxel as bone is given as E,one{T) = \lp,{M^ Eq.22 while the probability of (erroneously) classifying a bone voxel as marrow is given as E^rr..(T)=\Â°^pX^)dx. Eq.23 The overall probability of error in image segmentation is thus E(T) = B,E^{T)+ M,E^{T) . Eq. 24 Since a threshold value that minimizes the error in image segmentation is desired, the latter equation is differentiated with respect to T using Liebnitz's rule and set to zero (Gonzalez and Wintz 1987). The optimal threshold, Topt, for each histogram is then obtained by iterative solution of the resultant expression: {\-B,)al ^opt = Â— Â„ /;r+ -2 ' opt 2gI lot Eq. 25 After determining the optimal threshold intensity value, Topt, for both images, binary images are subsequently produced through image segmentation. PAGE 49 43 The final image-processing step involves elimination of single voxels of anomalously high or low intensity arising from signal noise through the application of a median filter to the binary image following image segmentation. Others performing analysis on NMR images of human trabecular bone have applied median filters (Chung et al. 1995; Link et al. 1997; Majumdar et al. 1997; Jiang et al. 1998). In this work, a minimal neighborhood area of 3 x 3 x 3 voxels was chosen for image filtering. Chord Distribution Acquisition The methods used to acquire the chord distributions in the images have already been described in general. A C program (Appendix A) was written to make digital measurements of chord lengths across marrow cavities and trabeculae within the binary, filtered images in a manner analogous to that performed by Spiers and colleagues using their optical bone scarmer. Mean-fi-ee-path randomness ((^-randomness), in which rays are initiated external to the trabecular region-of-interest, was utilized in the work of Spiers (Beddoe et al. 1976) and is the method used here. Distributions are obtained by firing uniform, isotropic rays across a region of interest. Each time the ray crosses a boundary, a length measurement of the previous region is taken and recorded. The uniform lines are angled isotropically in three dimensions using the relationship theta = Â— Â— gq 26 ANGSTEP phi arcsin Eq. 27 y ANGSTEP J _ where t and p run fi-om 0 to ANGSTEP1, and the parameter ANGSTEP is determined by the user. For this study ANGSTEP was set to 32. PAGE 50 44 The separation between the uniform lines is determined mathematically, since this distance must be equal for all angles. This represents a correction from previous work (Jokisch 1997; Jokisch et al. 1998b), where the perpendicular distance between scan lines was not constant. As shown in Fig. 17, the distance between starting points for successive rays is dependent on theta and is relatively easy to find. In three dimensions, there is also a dependence on phi. Setting the perpendicular distance between each successive ray to be equal to the resolution of the image has led to the derivation of these relationships. stepi = step J = stepf= yjsin^ (j) + sin^ 0 sin^
PAGE 61 55 Concentric Interstitial Lamellae Lamellae Compact Bone Blood Vessels Figure 13. A diagram of cortical and trabecular bone illustrating the microstructure (Tortora 1992). PAGE 62 56 Figure 14. A diagram of trabecular bone illustrating the types of bone cells and their location (Tortora 1992). PAGE 63 Figure 15. Skematic of differing paths of two electrons emitted within anisotropic regions of trabecular bone. PAGE 64 58 jr i KÂ«dlaUy *rftTÂ«r*Â«d BpÂ«cia*ii ativjro jc-x* 1Mzntal)lÂ« Axis Qf rotÂ«tioa 1 1 ^ 1 Â— i Figure 16. Depiction of the Leeds bone scanner (Darley 1972). PAGE 65 59 r stepJ L I Â— stepi Figure 17. Depicting the separation between starting points of successive rays. The steps must be found such that the perpendicular distance between the rays is constant for all angles. PAGE 66 60 Figure 18. 3D image representation of a section of the cored vertebral sample acquired at a proton resonance frequency of 600 MHz (14.1 T magnetic field strength). PAGE 67 61 Figure 19. Single transverse slice extracted from the 3D image shown in Figure PAGE 68 Figure 20. Single transverse slice extracted from the second 3D image. PAGE 69 63 0.014 0.012 CTlROIHist ROI Fit '-(NIM^lf> PAGE 70 64 0.008 Gray Level Figure 22. Gray level histogram and curve fit for second image. PAGE 71 65 Figure 23. Segmented and median filtered binary image of the trabecular bone region shown in Figure 19. PAGE 72 66 0.005 Chord Length ((im) Figure 24. Normalized, omnidirectional chord length distributions through trabeculae of the cervical vertebra as measured with physical sectioning and automated light microscopy (Whitwell 1973) and the corresponding distribution for trabeculae in the thoracic vertebra as measured with NMR microscopy and image processing (present study). PAGE 73 67 0.0012 500 1000 1500 2000 2500 3000 Chord Length (^m) 3500 4000 4500 5000 Figure 25. Normalized, omnidirectional chord length distributions through marrow cavities of the cervical vertebra and lumbar vertebra as measured with physical sectioning and automated light microscopy (Whitwell 1973) and the corresponding distribution for marrow cavities in the thoracic vertebra as measured with NMR microscopy and image processing (present study). PAGE 74 ^1 68 1400 1000 2000 3000 4000 5000 Length of Previous Bone Chord i\im) Figure 26. Mean marrow chord lengths with respect to the length of the previous bone chord. PAGE 75 69 0.005 Chord Length (p,in) Figure 27. Three-dimensional plot showing marrow chord distributions dependent upon the length of the previously sampled bone chord length. This distribution is normalized only to the marrow chord length bin widths. PAGE 76 Figure 28. Normalization of Fig. 27 displaying relative frequencies of bone and marrow chord length combinations. This plot could also be interpreted as displaying the bone chord distributions depending on the length of the previous sampled marrow chord length or vice versa. PAGE 77 71 CHAPTER 4 A NEW METHOD FOR BETA-DOSIMETRY OF THE TRABECULAR SKELETON USING MONTE CARLO TRANSPORT IN VOXELIZED NMR IMAGES Introduction Chord Length Distribution Based Dosimetry Models The work performed by Spiers group at the University of Leeds set up a fiindamental method for performing dosimetry in this region of the skeleton. To calculate dose in trabecular bone, one must know the geometry that the particle travels through while depositing energy. Chord distributions of both bone trabeculae and marrow cavities obviously provide this required data. There are essentially two options for utilizing Monte Carlo techniques in calculating absorbed fractions using chord length distributions. The first is to transport the particles in such a way that the traversed distance across a given medium equals the sampled chord length. Note that this method does not create a mathematical geometric model of marrow cavities and bone trabeculae, and thus does not create a geometry that looks like trabecular structure. The second option is to use the chord distribution data to create such a geometrical model. The Leeds group did not intend their chord distributions to be used for this purpose, and it has not been shown to be accurate. The Leeds data has since served as the basis for almost all subsequent trabecular bone dosimetry models published to date (Whitwell and Spiers 1976; Spiers et al. 1978a; Spiers et al. 1978b; Chen and Poston 1982; Eckerman 1985; Stabin 1996; Bouchet et al. 1999a; Bouchet et al. 1999b). It is important to consider what this geometrical data is. PAGE 78 72 and how it should be used in dosimetry calculations. The chord distributions are a collection of linear path lengths through the bone and marrow regions. Essentially, this means that the spatial transport of the beta particle is fixed for a given sampled chord. Of course, one of the main assumptions of this method is that beta particles travel in approximately straight lines through both marrow cavities and bone trabeculae. It would be theoretically improper to use the chord distributions to setup some geometrical simulation of a marrow cavity, where the electron could travel a straight-line distance different than that sampled from the chord distribution. Naturally, the Spiers research group was the first to use their chord distribution data in beta-particle dosimetry (Whitwell 1973; Whitwell and Spiers 1976; Spiers et al. 1978a; Spiers et al. 1978b). These methods utilized Monte Carlo techniques to randomly sample from their measured chord distributions in order to determine where beta particles would deposit their energy. The Whitwell study coupled the experimentally measured chord length distributions with range-energy relationships to calculate dose conversion factors for seven radionuclides of interest in health physics ("*C, '*F, ^^Na, ^^P, ^^Ca, ^Sr, ^Y). In this study, only volumeand surface-seeking radionuclides were considered, and only the marrow and endosteum were chosen as target regions. For nuclear medicine purposes, these skeletal-averaged conversion factors were converted to monoenergetic specific absorbed fractions using the average beta-particle energy of each radionuclide (Snyder et al. 1974). These specific absorbed firactions were used to calculate S values as published in MIRD Pamphlet No. 1 1 (Snyder et al. 1975). S values for marrow as a source region were tabulated despite the fact that Whitwell did not consider the marrow as a source in her studies. PAGE 79 73 For radiation protection purposes, the ICRP published Report 30 (ICRP 1978) based on the same Whitwell dose conversion factors. For a source of beta particles in the bone volume, a single absorbed fraction value is used. For beta particles originating on the bone surface, two absorbed fractions are recommended: one for average beta energy less than 0.2 MeV, and a different value for average energies greater than 0.2 MeV. These absorbed fractions were then implemented in the MIRDOSE2 program (Stabin 1996), which is utilized in nuclear medicine dosimetry. In 1986, Eckerman reexamined these absorbed fractions (Eckerman 1985). He used the same Leeds chord distributions and a one-dimensional approach similar to that of Whitwell to derive absorbed fractions for seven trabecular bone sites. In 1996, S values derived from these calculations were implemented in the MIRD0SE3 program to be used in nuclear medicine dosimetry (Stabin 1994; Stabin 1996). Recently, a group from the University of Cincinnati used Monte Carlo techniques to calculate beta particle dose to skeletal metastases from a bone-seeking radiopharmaceutical (Samaratunga et al. 1995). They, however, did not use the Leeds data, choosing instead to acquire their own geometrical data for a given patient. They measured bone and soft tissue path lengths in bone of patients who had skeletal metastases. They classified them based upon what type of lesion was seen in the patient. This work did not pay attention to skeletal site, and made two-dimensional to threedimensional conversions based upon assumptions similar to Spiers. The Samaratunga study then performed dose calculations by setting up three-dimensional ellipsoidal structures of bone surrounded by an infinite marrow-tissue medium. The next bone ellipsoid would be created when the particle reached a distance from the first ellipsoid PAGE 80 74 equal to the sampled path length. This model allows the particle to traverse a bone pathlength different from the sampled chord length. There were a few attempts to use the Leeds geometry data in order to setup a model allowing betas to be transported in three-dimensions (Chen and Poston 1982; Parry 1995). However, these models had several theoretical problems. Specifically, these models do not properly use the chord distributions since they allow beta particles to travel distances not equal to the chord length used to set up the geometry. In addition, the Parry model was not consistent in the treatment of bone and marrow traversals. It also transported the particle through a region of marrow-bone-bone-marrow-bone-bonemarrow-etc. as opposed to marrow-bone-marrow-bone-etc. Out of these models was bom a three-dimensional transport model developed by Bouchet et al. (1999b). This model improves on the one-dimensional models in that it allows for the treatment of backscattered electrons, delta rays, and bremsstrahlung photons not previously considered. It also includes corrections of the theoretical errors in the Chen and Parry models. The electron pathlengths in the Bouchet et al. model are allowed to deviate from the straight lines that the chord lengths were based on. This model transports the electron through the alternating marrow and bone regions by sampling an appropriate chord length and setting it equal to the linear distance between the entry and exit points of the electron in a hemispherical shell. This transport concept is shown in Fig. 29. Possible Limitations of Chord Length Distribution Based Dosimetry Models While the Bouchet et al. model is believed to be an improvement over the onedimensional models that do not allow the pathlength deviation, it does rely on the PAGE 81 pathlength not deviating far from the straight-line displacement. It should be obvious that while these models for transport seem theoretically correct, they all rely on a few basic assumptions. The degree to which these assumptions affect the accuracy of dosimetry results has so far been immeasurable. The present work attempts to quantify the accuracy of these assumptions by providing a voxel transport model to compare with each of these chord length-based models. As mentioned above, the 3D model of Bouchet et al. contains several theoretical improvements over the ID model in that it allows for the treatment of backscattered electrons, delta rays, and bremsstrahlung photons. While this treatment should allow for more realistic transport and energy deposition, it also presents the following theoretical limitation. If a particle encounters a large angular scatter along its path (up to 90Â° is allowed), the sampled chord length will no longer be accurate. In other words if the particle exhibits a large angular deviation, it is likely that the path length in a real geometry would change. This is the fundamental assumption of any chord length-based dosimetry model, which will be tested here: that straight-line path lengths can approximate the electron transport through trabecular bone. In addition, a chord length distribution-based model assumes that distributions are independent of one other. A chord length model randomly samples from both the marrow and bone distributions. It may be that there is an association between the occurrence of chords of given lengths. In the real structure f)erhaps large marrow chords almost always follow large bone chords, or vice versa, which are in turn followed by large bone chords again. This seems likely upon visual examination of an image of the trabecular region, where different regions appear to have different characteristics. The PAGE 82 76 current distribution-based models can not account for this association. As suggested in the previous chapter, there is a way of samphng chord lengths based on the previously encountered chord. This method should alleviate any bias due statistical dependence of the chord-based dosimetry models. Separate but similar to the length association, is a possible angular association. A distribution-based model assumes an isotropic microstructure. It has been shown that many skeletal sites exhibit anisotropy, especially in stress bearing bones such as vertebra (Atkinson 1967; Atkinson and Woodhead 1973; Mosekilde 1989; Hahn et al. 1992). These studies suggest that the ossification and resorption processes respond to compression and stress. In the case of vertebra, the horizontal struts are not as important structurally as the vertical segments. They found that the horizontal segments thin out considerably faster with age. There has also been at least one study that did not see the horizontal resorption preference (Snyder et al. 1993). Furthermore, the chord length-based models have had to use approximations to account for the macroscopic dimensions of the bone site that contains the trabecular region, if they account for it at all. These models treat the skeletal site as an infinite "sea" of trabecular bone, or put another way, they assume that all initial electron energy is deposited within the trabecular region of the skeletal site. The 3D model of Bouchet et al. does allow bremsstrahlung photons that travel a distance greater than 5 cm from the initial source point to escape the trabecular region. Also, the work of Whitwell did make allowances for "the finite sizes of the bones, which result in some energy escape from the structure" when coming up with skeletal averages of her dose factors (Whitwell 1973; Whitwell and Spiers 1976). For large skeletal sites like the vertebra, the assumption of PAGE 83 77 total electron energy deposition is probably accurate, especially at moderate to low energies. However, this may not be true for high energies or in active marrow containing sites such as the cranium, clavicle, scapula, ribs, and sacrum, which are macroscopically thin in one or more dimensions. Electron Gamma Shower 4 The models used in this work require the accurate simulation of photon and electron transport in different media. The transport code used in this research was the Electron Gamma Shower Version 4 (EGS4) (Ford and Nelson 1978; Nelson et al. 1985; Bielajew and Rogers 1987). This code is commonly used for the purposes of internal dosimetry and has been benchmarked extensively. The EGS4 code requires user definition of the three-dimensional transport geometry, media, and radiation source characteristics. The user interface is a series of subroutines that are called by the EGS4 program. These subroutines will be discussed in detail in later sections when describing specific models. Materials and Methods Voxel Transport in EGS4 First it was necessary to establish a method for transporting electrons and photons in a voxel geometry using the ESG4 code. This has already been done for the purpose of suborgan internal dosimetry (Bolch et al. 1996; Bolch et al. 1997; Bouchet 1998). The image-based trabecular models to follow will use this voxel array transport as a necessary portion of their code. PAGE 84 78 An original voxel transport code was written (Appendix B) and absorbed fraction results were compared to those of Bouchet (1998), who benchmarked his results with point kernel estimates. Details of Voxel Array Transport Code Subroutine HOWFAR. The HOWFAR subroutine is used to calculate the distance to the nearest boundary based on the direction the particle is going to travel. In this case, the geometry is simply a cube. The EGS4 program enters HOWFAR with a distance USTEP that it wants to transport the particle. If that distance is less than the distance to the nearest boundary along the direction of travel, then HOWFAR returns without changing USTEP. If USTEP is greater than this distance, USTEP is changed to the distance to the boundary and the current region of the particle is changed appropriately. When performing transport in a voxel array geometry, there are two related coordinate systems to keep track of The first is the obvious floating-point location of the particle. The second is the integer location referring to the voxel the particle is currently in. The relationship between these coordinates is rather simple in this model, but will be manipulated later to allow for particle reintroduction in the trabecular transport. There are a number of variables used in this geometry. XVOX, YVOX, and ZVOX are the integer locations of the particle in the voxel array. They refer to the voxel the particle is currently within. H, YDIM, and L are the sizes of a voxel in the x, y, and z dimensions respectively. The first step in HOWFAR is to determine which voxel the particle is in. This is done with the following equation: XVOX = MAT ^Xl} u. + MIDVOX Eq. 31 PAGE 85 79 The NINT function rounds the expression to the nearest integer, thus giving an integer location of the particle that corresponds to the voxel location. Adding the MID VOX value establishes which voxel X1=0.0 is in. The floating-point origin has been defined as being in the center of the MID VOX voxel. The next step is a check to ensure that the floating-point location and voxel location correspond correctly. The relationship given below calculates the j3erpendicular distance from the particle to all 6 boundary planes of the voxel. This is done with the following equation: Once the distances have been calculated, they are all checked to ensure the perpendicular distance is not negative. A negative perpendicular distance would indicate that the particle was incorrectly place within the voxel array. The next portion of HOWFAR is a quick check to make sure the particle is still within the voxel region of interest. If the particle leaves the region of interest, it is marked to be discarded and the HOWFAR subroutine returns. If the particle is within the region of interest, the HOWFAR subroutine next calculates the distance to the boundaries along the direction of travel. This is done similar to the equation above, except now the distance is along the direction of travel, so the expression is divided by the directional cosine of the angles. P3 = {XVOX MDVOX) *L + --Xl Eq. 32 Eq. 33 PAGE 86 8Q Note that this value can be negative, indicating that the particle is heading in the opposite direction of the plane. If this is the case, the P3 is set to a large value of 5000 cm. The minimum of the 6 distances is found and assigned to the variable DIST. Finally, HOWFAR compares the DIST value to that of USTEP. If USTEP is greater than DIST, HOWFAR returns with no changes. Otherwise, USTEP is reassigned to equal DIST, and the region number is tagged to be changed by EGS4. Note that in this particle, the regitm number is inconsequential to the medium since all voxels are comprised of soft tissue. Thus, the region number is changed to either 1 or 2 depending on what the previous voxel region number was. Subroutine AUSGAB. The AUSGAB subroutine is very simple in this code. Note that the discarded energy is stored in a variable ENDISC. Otherwise the energy deposited is stored in the appropriate location of the array ESCORE, depending on the voxel where the energy deposition took place. Subroutine DIST_TO_REGION. This subroutine is used by PRESTA in transporting electrons. The purpose of the subroutine is to return the minimum distance to a boundary regardless of a direction of travel. Thus, the subroutine is very similar to HOWFAR. The only significant difference is that the perpendicular distance calculation described previously is used for all six planes. The minimum is taken and assigned to TPERP. Subroutine SOURCE. This subroutine tells EGS4 the parameters of the source particles. In this case, the source is always taken as the center voxel of the array. The floating-point location is randomly distributed throughout the center voxel using. XIN = {RNG3 0.5)* L Eq. 34 PAGE 87 81 The initial direction of the particle is also randomly distributed isotropically using: (l> = 2*K* RNGl Eq35 d = arccos(l 2 * RNGl) Eq. 36 Note that the RNG variables are random numbers between 0 and 1. The U, V, and W directional cosines mentioned earlier are then calculated using the values of PHI and THETA: UIN = sm{d)*cos((j)) VIN = sinie)*sm{(l>) Eq. 37 WIN = cosi6) Using Image as Input to Voxel Transport Building on the previous voxel array transport methodology, a code was written (Appendix C) which the segmented NMR image of trabecular bone was used as the basis for the transport geometry in EGS4. The two acquisitions of the 3-D image of thoracic vertebrae obtained on the 600-MHz spectrometer were used as the transport geometry. For each voxel in the segmented image, one of two transport media was assigned: marrow or osseous tissue. The atomic composition of osseous tissue, for simulating the voxels within trabeculae, was taken from that given in ICRU Publication 46 for cortical bone (ICRU 1992). It is assumed that the atomic composition of trabeculae is similar to cortical. The atomic composition of the marrow voxels was taken as a weighted average of the compositions of red marrow and yellow marrow, both of which are given in ICRU Publication 46. The percentage of red marrow by mass (the cellularity factor) in the thoracic vertebra was taken as 70% as given in Table 2 of Cristy (Cristy 1981). Note that in this approach, the active marrow is assumed to be uniformly distributed within the marrow cavities (identical composition to all marrow voxels). PAGE 88 82 In this transport model, a region of interest (the same ROI that was used in acquiring chord distributions) was coupled to the EGS4 voxel array transport code. Transport of electrons and photons was performed within this region. When a particle left the region, it will be discarded. This model will provide information as to how important the reintroduction of particles becomes as electron energy changes. Details of Booe Array Transport Code Subroutine IMAGEREAD. This is the subroutine that is responsible for reading the image file and storing it as an array of bone or marrow media. Since the size of these images is rather large, a method for compressing the media array was used. This method takes advantage of the fact that there are only two media (bone and marrow) and the fact that there are 8 binary units (bits) in a byte. When the subroutine reads in a voxel, it takes a gray level (0 to 255) value from the image. This gray level is then compared to the predetermined threshold value to determine whether the voxel is bone (0) or marrow (1). It then calls a function CHANGEMED with arguments of voxel coordinates and media type. Function CHANGEMED. The CHANGEMED function finds the appropriate storage location for a voxel in the ARRAY variable and assigns it the appropriate medium value of zero or one. This is done using the bitwise operators LSHIFT, NOT, OR, and AND. This is the same method that was utilized in the chord distribution program discussed previously. Each location in the ARRAY variable thus contains information regarding the medium type of 8 different voxels. PAGE 89 I 83 Function WHICHMED. This function is called throughout the code to interpret the compressed ARRAY and return the medium type of a given voxel location. Again, bitwise operators are utilized to accomplish this task. Subroutine FILTER. This is the subroutine that performs the median filter operation on the image. The filter operates the same as it does in the chord distribution program. It should be noted that in the MAIN subroutine the volume fraction of marrow is measured before and after the FILTER subroutine is called. Subroutine HOWFAR. The subroutine HOWFAR is the same here as it was in the voxel array program with one exception. If the particle is moving into a new voxel, it determines the medium type of the new voxel and changes IRNEW to be the appropriate value (l=bone, 2=marrow). This could be a point of some confusion. The WHICHMED function returns a value of 0 for bone and 1 for marrow. However, the region number is 1 for bone and 2 for marrow. The subroutine DIST_TO_REGION is the same here as it was in the voxel array code. Subroutine SOURCE. This subroutine was written to handle a variety of source options. The user determines the source type in the MAIN routine by setting SOURCEMED to an appropriate integer value. The bone and marrow volume sources are handled similarly. A random floatingpoint within the region of interest is chosen. The subroutine then checks the medium of that location based upon its voxel location. If the medium is of the correct type, the point is accepted, otherwise it is discarded and a new point is selected. The marrow volume source does have an extra requirement. The endosteal region, which is discussed below, is considered part of the marrow voxels. It is necessary PAGE 90 to exclude points in the endosteum from being starting points for marrow volume sources by checking the media of the six neighbor voxels. If one or more sides are bones, then the marrow voxel is a surface marrow voxel and it is necessary to check the floatingpoint location of the particle relative to the boundary. The perpendicular distance from the particle's potential starting point to the boundary is calculated. If this distance is less than 10 urn, the point is rejected (since the particle is in the endosteal region) and a new point is randomly chosen. The procedure for choosing the endosteal starting points utilizes similar methods to what has just been discussed. Instead of choosing a random floating-point location, a random voxel is chosen. If it is a marrow voxel, the subroutine checks to see if it is a surface voxel using the same method described previously. It is important that the number of bone neighbors is calculated, since the subroutine will select one starting point for every bone neighbor. The floating-point starting location is randomly selected to be within 10 ^m of the voxel edge. This is done for multiple-sided marrow surface voxels by storing the floating-point locations in the arrays ENDOX, ENDOY, and ENDOZ. If there are multiple starting points (sides), the first starting point and source particle is fully transported. When EGS4 next calls the SOURCE subroutine, the next point and particle is selected from the arrays without randomly choosing a new marrow surface voxel. Subroutine AUSGAB. The energy deposition is scored fundamentally the same with the exception of the marrow and endosteal regions. However, instead of scoring the energy deposited in each individual voxel, the scoring is done by region type. All bone voxels are scored together, for example. The special case of scoring the endosteal (and marrow) dose is considered next. PAGE 91 85 Method for Scoring Dose in the Endosteal Region If in the AUSGAB subroutine the energy deposition took place in a marrow voxel, a subroutine called SCORE ENDOST is called. Similar to the SOURCE subroutine, the neighbors are checked to see if this is a marrow surface voxel. If not, all the energy deposition is scored in the marrow. If it is a marrow surface voxel, there are two different methods for scoring the endosteal deposition. Method 1. This method simply scores the deposition weighted by the respective volume fraction of marrow and endosteum in that voxel regardless of the location of the event. The number of sides, and thus the number of endosteal surfaces, is calculated. This number is then used to determine the volume fraction of endosteum in the voxel. Note that possible overlapping of two neighboring endosteal surfaces is ignored, resulting in a very slight overestimation of endosteal volume fraction, and thus overestimation of the endosteal absorbed fraction. Method 2. This method utilizes the floating-point location of the energy deposition event with respect to the endosteal surface. After finding the location of the neighboring bone voxels, the perpendicular distance to those voxels is calculated. If this distance is less than 10 [im, the event is treated as occurring in the endosteum and all the energy deposition is scored as such. Otherwise, the energy deposition is scored in the marrow. The results of these two methods will be compared, and one will be chosen as the method for scoring endosteal dose. The Infinite Trabecular Transport Model This model again builds on the previous bone array transport model (Appendix D). The code was modified so that if a particle leaves the region of interest it will be PAGE 92 86 reintroduced back into the region. This model effectively creates an infinite region of trabecular bone. In this manner, the transport code will generate absorbed fraction data that should be equivalent to all previously developed models that use chord distributions as input. None of these models allow the electron to leave the trabecular region. Whitwell did, however, apply a geometry factor called an equilibrium factor in attempt to account for the macroscopic dimensions of a bone site. The algorithm for reintroducing the particle is to place it randomly back within the image, with the condition that it be place in the same medium (bone or marrow) with the same direction as when it reached the boundary. The particle is introduced with the same direction to preserve any anisotropy preference that may exist in the sample. The potential effect of any anisotropy of the sample's microstructure will only be seen in this study, and will not affect the results of the other models. Details of Infinite Transport Code Subroutine REINTRODUCE. When the particle leaves the region of interest in HOWFAR, the subroutine REINTRODUCE is called. The first step this subroutine performs is to store the medium and integer voxel location of the voxel the particle was in when it exited the region of interest boundary. Next, a new voxel location of the same medium and within the region of interest is randomly chosen. Six new parameters are introduced. ISHIFT, JSHIFT, and KSHIFT are defined as the integer value of the shift between the old voxel location and the new randomly chosen voxel location. The total shift of the particle throughout its history is recorded by adding these parameters to TOTALISfflFT(NP), TOTAUSHIFT(NP), and TOTALKSfflFT(NP). The NP variable PAGE 93 87 is necessary so that EGS4 can transport secondary particles using the "shift value" where they were created. These shift parameters resuh in the only significant change to the other subroutines. For example, the distance calculations, and voxel coordinate determination equations must now include the shift values: P3 = XVOX TOTALISHIFT{NP) *Z + --Ji'l,and Eq. 38 2 XVOX = MINT ^^^^ + !Â£JM. + TOTALISHIFT{NP) . Eq. 39 These relationships will be modified once more for the macro-thoracic model. The Macro-Thoracic Transport Model This model again modifies the previous infinite transport model. For the first time in trabecular bone dosimetry, the particles (both electrons and photons) are allowed to leave the trabecular region, enter a cortical shell, and leave the bone all together (Appendix E). This task was accomplished by transporting the particles similar to the infinite model. However, this time a macroscopic boundary was compared to the particle's floating-point location. The boundaries of this macroscopic region were determined using the size of the thoracic vertebra from images acquired on a 200 MHz spectrometer (Jokisch 1997; Jokisch et al. 1998b). These images are from the same sample the core was drilled from which was imaged at higher resolution on the 600 MHz unit. Images of a thoracic vertebral block were acquired on the 200-MHz spectrometer at the CSB. From these images. Figs. 30a to c display single slices of the vertebral block as viewed in the transverse, coronal, and sagittal planes, respectively. PAGE 94 88 As shown in Fig. 30a, the vertebral foramen is clearly visible on the lower left side of the vertebra. The foramen is also visible running along the right side of the vertebra in sagittal view within Fig. 30c. The foramen itself is dark, but is visible due to the strong signal of the adjacent gauze used to wrap the specimen. Similarly, cortical edges of the vertebra in each figure are also visible due to signal from the fluid-soaked gauze and external soft tissue layer. Clearly, the higher intensity marrow regions and lower intensity trabeculae regions are visible in all image planes. It was determined that a semi-cylinder geometry would best fit the macro boundary of the thoracic vertebral body. The block of thoracic vertebra imaged on the 200 MHz spectrometer did not have vertebral processes, and thus the macro-geometry chosen only fits the vertebral body. Fig. 31 depicts the geometry chosen. Note that the geometry is not a perfect semi-cylinder. Rather, the plane across the z-axis has been offset to a certain distance. Measurements of cortical thickness were taken from the images in Figs. 30a to c. A cortical shell was placed on all sides of the trabecular region, and was given a thickness of 1.037 mm. There was not a significant variation in the thickness of the cortical region with location, so a single value of cortical thickness was used to create a shell around the trabecular region. Once the particle reaches the edge of the trabecular region, it will no longer be transported in voxels, instead being transported in a region of cortical bone. If it reenters the trabecular region it will be reintroduced into the voxel transport. If the particle exits on the exterior periosteal side of the cortical shell, it will be discarded. PAGE 95 89 Details of Thoracic Transport Code Subroutine SOURCE. The same sources are considered here as before, but due to the inclusion of the cortical shell boundary, there is a slight modification to the coordinate system. Previously, a random floating point was chosen with the region of interest. Now this floating-point location is chosen to be within the entire trabecular volume defined by the cortical boundary: XIN = {RNG6 0.5)* 2 * RAD YIN = (RNG7 0.5)* C Eq. 40 ZIN = RNG^RAD ZPLANE)+ ZPLANE where RAD is the radius of the cylinder and C is the height of the cylinder. ZPLANE is the offset distance from the plane and the center point of the cylinder. A while loop excludes points that are outside of the cylinder. It is necessary to relate this coordinate system to the region of interest, which is smaller than the total trabecular volume. This is done using the XSHIFT, YSHIFT, and ZSHIFT values: XSHIFT = RNG3 *[L + L* {IMAX IMN)] -LI 2 I / \ EQ41 yDiKy^ _ imin)l xin Subroutine HOWFAR. Adding a cortical shell and boundary requires adding two regions: a cortical region and the discard region. These changes are seen in the HOWFAR subroutine. In addition, the subroutine includes a new floating-point and voxel location determination using the new shift values: L F3 = f IDIM ^ ^ XVOX ^^^^ TOTALISHIFT{NF) L-^-X\XSHIFT Eq. 42 xvox = nint( ^' * ^"'^^^ + Â™Â£ + TOTALISHIFT(NP) . Eq. 43 PAGE 96 90 New checks have also been put in place to check the distance to the cortical shell. If the particle is in the trabecular region (region 1 or 2), the distance to the cortical shell is checked as well as the distances to the voxel boundaries. There are 4 surfaces to check on the cortical shell: the circular surface of the cylinder, the plane cutting the top of the cylinder (YTOP), the plane cutting the bottom of the cylinder (YBOT), and the plane cutting the cylinder into some fraction of a whole cylinder (PLANE Z). HOWFAR takes the smallest of the distances to the voxel boundaries and the distances to the cortical shell and compares then to USTEP. If the cortical shell is the nearer boundary and is smaller than USTEP, the region is changed to 3 for the cortical shell. The next time the code enters HOWFAR (in region 3), the voxel boundaries are no longer considered. Instead, the interior and exterior boundaries of the shell are checked. If the particle leaves via the exterior boundary, it is discarded. If the particle leaves the cortical shell via the interior boundary, it is considered to reenter the trabecular region and the subroutine REINTRODUCE is called. The subroutine DIST_TO_REGION uses the same algorithm as HOWFAR, only calculating the nearest distance to the boundaries regardless of the direction of travel. Subroutine REINTRODUCE. This subroutine is now called under two different circumstances. The first when a particle leaves the region of interest. This is treated the same way as it was in the infinite model. The second circumstance is when the particle is reentering the trabecular region after having been in the cortical shell. In this case a random voxel is chosen within the region of interest. Since it is impossible to determine whether the particle should be reentering a bone or marrow voxel, no region preference is considered in this case. PAGE 97 9\ However, the location and direction of the particle relative to the cortical shell is preserved. The total shift values are now determined based on the value of the floatingpoint location of where the particle will be (XNXT, YNXT, ZNXT) after moving a distance USTEP. Method of SValue Calculations For electron transport in trabecular bone, three sources and targets are considered: the trabecular bone volume (TBV), the trabecular marrow space (TMS), and the trabecular bone endosteum (TBE). The Medical Internal Radiation Dose (MIRD) Committee established a method for calculating internal dose (Loevinger et al. 1991). This method calculates the absorbed dose to a target region from a source to be the product of the cumulated activity in the source region and a single value (S-value) which factors in the energy deposition for that particular source, target, and radionuclide combination. Dir, PAGE 98 92 spectrum for each radionuclide into approximately 100 monenergetic electron energy bins, each with its own particle radiation yield. As mentioned, the absorbed fractions are being calculated using the results fi-om the EGS4 codes. The energy emitted per transition is well known, leaving the target mass as the only unknown. At present all skeletal dosimetry models have derived skeletal tissue masses from sources completely separate from those used to calculate absorbed fractions. Marrow mass estimates come from a study performed by Mechanik in 1926 in Russia (Mechanik 1926). Woodard (1960) summarized the Mechanik paper: In his work Mechanik cleaned the skeletons of 13 cadavers, weighed the fresh bones separately, removed the marrow by a process of maceration which is not described in detail, weighed the moist macerated bones, and recorded the difference between the two weights as the weight of marrow. In other studies he showed that maceration resulted in only minor loss of weight from cortical bone, and that the loss of weight from whole bones was due almost entirely to removal of the marrow . . . Six of the bodies were of men and seven of women. Their ages ranged from 16 to 86 years. The causes of death are given as 'senile marasmus', four cases (two of them aged only 58 and 60 years); pneumonia, three cases; tuberculosis, three cases; heart disease, two cases; malaria, one case. The bodies appear to have been somewhat but not excessively, emaciated, the weights of the women ranging from 43.5 to 55.2 kg, and those of the men from 59.6 to 65.0 kg. It is most unfortunate that the bodies of previously healthy victims of accidents or other causes of sudden death were not chosen for this study. In the ones actually studied, only those who died of pneumonia presumably were ill so short a time that their skeletons would be likely to be unaffected. Most of the others appear to have succumbed to prolonged wasting illness which might have led to extensive remodeling of the trabecular structures and even of the cortical bone. It is difficult to predict what changes this would cause in the size and distribution of the marrow spaces, but it seems clear that data obtained from such bodies should be applied with caution to normal individuals. Despite these cautions, this data has been extrapolated for use as reference man marrow masses. PAGE 99 93 To calculate masses of active, inactive, and total marrow, cellularity factors must be knovm. A cellularity factor is the fraction of active marrow mass in the total marrow mass for a given skeletal site. These factors were calculated by Cristy (Cristy 1981) and are tabulated in ICRP Publication 70 (ICRP 1995). The dry weights of the skeleton are also tabulated in ICRP 70 and were originally measured by Trotter and Hixon in 1974 based on 30 white males (Trotter and Hixon 1974). Endosteal mass measurements have been obtained from the surface-to-volume ratios and an assumed endosteal thickness of 10 ^m (Bouchet 1998; Bouchet et al. 1999a). A very unique aspect of skeletal dosimetry via NMR microscopy is that target region masses and absorbed fractions can be measured from the same sample. All mass measurements can be based on the same region of interest of the NMR image within which radiation transport was performed. First the total volume of the trabecular region is calculated based on the macro-thoracic boundaries. Next, the fraction of bone and marrow voxels in the region of interest is used to estimate the total volume of bone and marrow within the thoracic vertebral body. Multiplying this bone volume by the density of adult cortical bone (1.92 g cm"^), yields the total trabecular bone volume (TBV) mass. To determine the mass of the trabecular marrow space (TMS), trabecular active marrow (TAM), trabecular inactive marrow (TIM), and trabecular bone endosteum (TBE), other measurements from the NMR images are necessary. First, the volume of endosteum must be subtracted from the calculated bone marrow volume fraction. Going through the region of interest image and counting the number of bone/marrow surfaces gives an estimate of the surface area. This estimate is most probably high due to the jaggedness in the bone-marrow interface introduced by the voxelization process. Since PAGE 100 94 the endosteal region is assumed to be 10 \xm thick, the volume of trabecular bone endosteum is calculated by multiplying the surface area by 10 tj,m and the ratio of macrothoracic volume to region-of-interest volume. Multiplying this value by the density of endosteum (1.03 g cm"^) gives the total trabecular bone endosteum mass. The marrow masses are calculated by first subtracting out the volimie of trabecular bone endosteum. The density of all the marrow space is taken to be 1.03 g/cm' yielding the trabecular marrow space (TMS) mass. Finally, cellularity factors from ICRP 70 are used to find the mass of the trabecular active marrow (TAM) and the trabecular inactive marrow (TIM). Table 3 summarizes the derivation of these masses. Results and Discussion Voxel Array Transport Figs. 32 to 35 display the results used to benchmark the voxel array radiation transport code to the code of Bouchet (1998). Fig. 32 shows the absorbed fraction in the source voxel of soft-tissue as a function of photon energy for a voxel size of 0.3 cm. As expected, the curve drops off sharply as the photon energy increases. The results compare quite nicely with those of Bouchet (1998). The same relationships are shown in Fig. 33 for electron sources. The two curves in this work are for different values of ESTEPE, which places a limit on the electron step size. The value set by the user is the maximum allowable fractional energy loss of the electron per step. Here, ESTEPE values of 0.02 and 0.05 were used. Slight differences are seen at intermediate energies. The Bouchet curve was calculated with an ESTEPE of 0.05. PAGE 101 95 Fig. 34 displays the absorbed fraction as function of voxel distance from the source voxel. In this case, 1.5 MeV photons were originated in a source voxel (again of size 0.3 cm). There are two curves in this study to Bouchet's one, since the Bouchet method took advantage of symmetry to the left and right of the source voxel. This work preserved the entire array due to the fact that the code was later to be utilized to input a non-symmetrical image. Fig. 35 displays the same relationship for a source of electrons of 4.0 MeV. The log scale exaggerates the differences far from the source voxel. To get better agreement, more than 100,000 particle histories (the number run here) would need to be run. These results provide confidence in the fundamental voxel transport algorithm that will be used to perform transport in the two-region images of trabecular bone. "BoneArray" Transport Fig. 36 displays the results from the bone array transport code for all three sources. All the results shown were performed using 10 runs of 1000 particles. The energy cutoff was set to 1 keV and an ESTEPE value of 0.02 was used. The "bonearray" transport code does not allow for reintroduction of particles. Once a particle reaches the exterior of the region of interest it is discarded. Consequently, the discarded energy increases with increasing electron source energy. This is evident for all three source regions. Also, all three target tissues have absorbed fractions that will approach zero with increasing source energy. Infinite Array Transport Fig. 37 displays the results from the infinite frabecular bone array transport code for all three electron source regions. Now, when a particle reaches the edge of the region of interest it is not lost, but rather reintroduced back into the voxel array. Thus, the PAGE 102 96 source energy cannot be discarded. As a result, with increasing energy the absorbed fractions for all three target tissues should approach some target-specific asymptotic value. These asymptotic values are the same for each specific target tissue regardless of where the source is located. The theoretical asymptotic value may be calculated using the following relationships based on the mass fractions of the three target regions: ^F(TARGET) = ^"^^^^"'^^ , Eq. 46 Equation 46 can alternatively be described using the volume fi-actions weighted by the density ratios for bone and soft tissue, given by: AF {TARGET) = ^^^^ , Eq. 47 ''This ^ '^TBE ^ '^TBV Ptms where Ptbv/Ptms= T86 using densities of 1.03 g/cm^ for marrow and 1.92 g/cm^ for bone. For the first image, the theoretical value of the asymptote is 0.745 for a target of the trabecular marrow space (TMS), 0.227 for a target of the trabecular bone volume (TBV), and 0.028 for a target of the trabecular bone endosteum (TBE). These values agree with the results seen in Fig. 37, providing some validity to the results assuming the volume fractions to be accurate. Macro Thoracic Transport Finally, Fig. 38 displays the absorbed fractions resulting from the same source/target combinations in the model using boundaries to approximate the size of a thoracic vertebral body. Fig. 39 also includes results from both sets of images for the PAGE 103 97 source in the marrow space. Note that each curve tends toward an asymptotic value, but reaches a source energy, where a significant portion of the particle's energy is able to escape the trabecular region and deposit energy either within the cortical shell, or outside the bone site all together. By looking at the discarded and cortical absorbed fractions, it is determined that this point is reached at around 2.0 MeV for a source in the marrow space (Fig. 38a) or a source in the bone volume (Fig. 38c). For a source in the endosteum (Fig. 38b), significant energy is deposited in the cortical bone volume (CBV) at lower energies of around 200-500 keV. The differences in Fig. 39 between the results from the two different images become significant at high source energies. This is due to the -10% difference in volume fractions between the two images. Despite this, the same shapes and reasonable agreement is seen between the results from the two images. Finally, Fig. 40 displays the absorbed fraction resuhs from the thoracic model with a source of monoenergetic electrons in the cortical shell. As expected, the cortical self-absorbed fraction starts out high and falls away as higher energy electrons escape the region. Different, however, is the buildup of the absorbed fractions for both the trabecular bone volume (TBV) and trabecular marrow space (TMS). The absorbed fractions for these regions do not climb to the same asymptotic values as seen previously. This discrepancy is due to the fact that more than half of the source beta particles will have a random starting direction facing towards the external side of the vertebral cortical shell. When these particles escaj^e the cortical shell, they are discarded. The discarded absorbed fraction thus increases with increasing energy. PAGE 104 98 Method of Scoring Endosteal Dose As mentioned earlier, two different methods were developed for scoring energy deposition in the endosteal region. The results from the two methods are shown in Fig. 41 for the infinite medium model and a source in the marrow space. Also shown in Fig. 41 are the results obtained by the Bouchet et al. model using the chord distributions acquired in the previous chapter as input. Note that method #1, which is based on voxel averaging of the dose regardless of location, is inaccurate at low energies. This is due to contributions from marrow sources originating in the portion of the marrow surface voxel that is not endosteum. Method #1 would contribute dose from these particles to the endosteum, when in fact the majority of these particles would never reach the endosteal region. Both methods converge at high energies, when the large ranges of the particles would remove the described effect. Method #2 is therefore chosen as the appropriate method for scoring endosteal dose. The curve has the same general shape as the results given by the Bouchet et al. model, but does not reach the same height at high source energies. Due to the small size of the endosteal regions, it is not surprising to see the largest differences between the two methods for this region as a target. Comparisons to Chord Length Distribution-Based Models The chord length distributions derived in Chapter 3 were used as input in the Bouchet et al. transport model. These results are compared to the three voxel transport models just described. Fig. 42 presents the comparisons of the three models for the source and target being the trabecular marrow space (TMS source irradiating a TMS target). In the energy range from 10 to 100 keV, all the models produce similar results. PAGE 105 99 For energies greater than 100 keV, the marrow self-absorbed fraction begins to fall away from the other models for the "bonearray" model. Thus it can be deduced that the reintroduction of particles becomes significantly important at energies greater than 100 keV. The volume of the image region of interest is large enough to accurately describe absorbed fractions below 100 keV. The infinite and absorbed fraction models produce identical results until -2.0 MeV. At this point, energy loss to the cortical shell and boundary become significant in the thoracic model. Fig. 43 presents the same comparison for the source in the marrow irradiating an endosteum target (TBE<-TMS). Similar results are seen as those described for the target in the marrow space. Again, the models do not appear to be sensitive to region-of-interest escape below 100 keV. Fig. 44 displays the same comparison with the target tissue now being the bone volume (TBV<-TMS). Fig. 45 displays the comparison for absorbed fractions for the marrow as the both source and target (TMS'f-TMS). The Bouchet model was run with the chord lengths derived from the same images that the thoracic model used as input. The differences between the Bouchet et al. model and the thoracic model at high energies is most likely due to different volume fractions of bone, marrow, and endosteum within the two different images. Bouchet calculated the theoretical value for the asymptotic absorbed fractions at high electron energies based on the mean chord lengths from the distributions used as input. However, this calculation still uses the assumption of straight-line radiation path lengths. It is therefore not appropriate to say that the absorbed flection results obtained by voxel transport should approach these calculated limits, but rather they should PAGE 106 100 approach the limits given by equation 46. The Bouchet-derived theoretical asymptotic values do agree with his results, but differ from the theoretical asymptotes given by equation 46, which tend to point towards the voxelized transport models as being accurate. For the second image, the theoretical asymptotic values are calculated to be 0.843 (TMS), 0. 137 (TBV), and 0.021 (THE). Again, these results agree with the results produced by the voxel transport models. Fig. 46 displays the comparison for absorbed fractions for the marrow as the source, and endosteum as the target (TBE'<-TMS). The significant differences seen for the endosteal dose may have something to due with the effect of voxel ization. If endosteal dose is dependent on the surface area (as would seem intuitive), voxelization could distort the results for endosteal sources and targets. The measured surface-tovolume ratio in the NMR images have been compared to that derived from the chord distributions using the Cauchy relationship. Table 4 displays the surface to volume ratios calculated for our images compared with other studies. For the bone, a surface-tovolimie ratio of 22.8 mm^/mm^ was measured in the first voxelized image. Using the Cauchy relationship (Eq. 19) and the mean bone chord length derived from the first image, a surface-to-volume ratio of 14.2 mm^/mm^ was calculated. Fig. 47 displays the absorbed fi^actions for the thoracic model and the Bouchet et al. model for the source in the marrow and a target of trabecular bone volume (TBV<-TMS). The best agreement between the voxel transport models and the Bouchet et al. model is seen for this case. The absorbed fraction data for all source and target region combinations are summarized in Tables 5-7. These tables show absorbed fractions of energy for both sets of images using the thoracic transport model. PAGE 107 101 Finally, S-values have been calculated using the beta-particle energy spectrum data of Eckerman (1993; 1994), the absorbed fractions from the thoracic model, and the target masses shown in Table 3. Table 8 summarizes the tissue masses, and compares them to those derived in the Bouchet et al. (1999a) study. There are two possible reasons for the large discrepancy between the tissue masses derived here and derived by Bouchet. First, the sample in this study had the vertebral processes removed. Some trabecular structure does exist in these regions, and would be absent from our mass estimates. Secondly, our mass estimates come from a single thoracic vertebral body and have been multiplied by 12 to obtain the masses for all the thoracic vertebrae. Unfortunately, the exact location of the sample in the thoracic region of the spine is not known. There is a significant gradient in the sizes of the thoracic vertebra from Tl to T12 (Netter 1989). If the sample were nearer the top of the vertebral column, the mass estimates would be low and would only be emphasized by extrapolating it over the entire thoracic column. The absorbed fraction data and the thoracic masses can then be coupled to calculate absorbed dose to the thoracic vertebra(e) for an example administration of ^Y. Yttrium-90 is a high energy beta-emitters with average energy of 0.934 MeV. Assuming an administration of 8.9 x 10^ MBq of ^Y, an estimate of the fractional uptake to the trabecular bone surface or endosteum (TBE) can be made. This calculation relies on assuming 50% of the injected activity localizes in the skeleton, of which 20% goes to the vertebral column. Furthermore, 40% of that activity will localize in the thoracic vertebrae, and 80% of the thoracic vertebral bone surface is assumed to be trabecular. Using these estimates, a cumulated activity of 9.46 x lO' MBq s is calculated for the entire thoracic vertebral column. The cumulated activity in a single thoracic vertebra PAGE 108 102 would be one twelfth of that, or 7.88 x 10^ MBq. This is then coupled with the S-values for for a source in the trabecular bone endosteum and a target in the active marrow (TAM<-TBE). The S-value for a single thoracic vertebra derived using the absorbed fi-actions and masses from the macro-thoracic voxel transport model is 1.16 x 10" mGy MBq'^ s"'. The tabulated S-values from Bouchet et al. (1999a) and MIRD0SE3 (Stabin 1994; 1996) are 2.66 x 10"^ and 3.71 x 10"^, respectively. These three models resuh in absorbed dose estimates to the thoracic vertebra(e) of 91.4 Gy (present study), 25.2 Gy (Bouchet et al), and 35.1 Gy (MIRD0SE3). The large differences in these results are primarily attributed to the differences in marrow masses. This suggests that future improvements in estimating skeletal masses may be more important than improvements in absorbed fraction calculations. Conclusions The development of an accurate method for coupling NMR images to radiation transport in a voxel geometry has been successful. This method may be of use in studies focusing on dosimetry of tissues other than the trabecular skeleton. It is not hard to imagine such a method being used for multiple, patient specific dosimetry studies. The results from the voxel transport suggest several things. First, the volume of the region of interest used here (10. 1 cm^) is large enough to handle accurate transport up to electron energies of 100 keV, after which a mechanism for particle reintroduction is necessary. Also, the macrostrutural boundaries of the thoracic vertebra only became significant at high energies of 2.0 to 4.0 MeV. This suggests that infinite medium PAGE 109 103 models, such as the chord distribution based models are accurate for large skeletal sites such as the vertebrae. It is suspected that for smaller skeletal sites such as the ribs or cranium, this effect will be observed at much lower energies, and the chord distribution based models which do not account for particle escape will no longer be accurate. The differences in absorbed fractions observed between the Bouchet model and the voxel transport might not be as important as the understanding of the target tissue masses used to derive S-values. This work is believed to be unique and innovative to trabecular bone dosimetry in that an S-value has been derived using absorbed fraction and mass data from the same sample. In general, all previous work has coupled absorbed fraction data based on the microstructure of an Englishman (measured 20 years ago) with the marrow mass data based on measurements of abnormal Russians (measured over 70 years ago). The Russian cadavers were from individuals who were very ill and whose bodies may have deteriorated extensively prior to death. Furthermore, it is worth noting that the Bouchet et al. derived S-values use absorbed fraction data based on only the vertebral body, since the chord distributions obtained at the University of Leeds also ignored the vertebral processes. The mass estimates, on the other hand, do include the processes. S-values have been calculated and compared to published values. The difference between the S-values arises primarily from the large differences in skeletal tissue masses. This suggests that future improvements in trabecular bone dosimetry are more likely to arise from work focusing on improving estimates of the skeletal tissue masses. NMR microscopy of trabecular bone has been shown to be a valuable tool for both the acquisition of chord distributions for use in dosimetry models, and the direct ) PAGE 110 104 coupling to radiation transport codes. The techniques developed in this work for coupling NMR images of trabecular bone to a radiation transport model can be applied to a variety of skeletal sites in hopes of benchmarking a technique for the accurate assessment of dose in this complex region. Furthermore, these techniques allow, for the first time, the direct calculation of S-values based wholly on measurements from the same sample. PAGE 111 105 Table 3. Summary of the target tissue masses for a single thoracic vertebral body for both NMR images of the sample. Tissue Volume fraction inROI Iml lm2 Volume in thoracic vertebra (cm^) Iml Im2 Density (g/cm') Mass (g) Iml Im2 Trabecular bone volume (TBV) 0.136 0.079 1.37 0.79 1.92 2.64 1.52 Trabecular bone endosteum (TBE) 0.0311 0.022 0.313 0.22 1.03 0.322 0.225 Trabecular marrow space (TMS) 0.832 0.899 8.37 9.04 1.03 8.62 9.31 Trabecular active marrow (TAM) NA NA NA NA 1.03 6.03 6.52 Trabecular inactive marrow (TIM) NA NA NA NA 1.03 2.58 2.79 PAGE 112 106 Table 4. Comparison of calculated surface-to-volume ratios for various vertebral samples. study siie Age SA^ rmmVmiii^) Present Image 1 Thoracic Vertebra 52 22.8 Present Image 2 Thoracic Vertebra 52 27.6 Present Image 1 (Cauchy) Thoracic Vertebra 52 14.2 Beddoeetal. 1976 Lumbar Vertebra 44 19.7 Arnold and Wei 1972 Lumbar Vertebra 39-50 23.0 Lloyd etal. 1968 Cervical Vertebra Adult 11.5 Lloyd and Hodges 1971 Thoracic Vertebra Adult 12.0 PAGE 113 107 Table 5. Absorbed fractions of energy for monenergetic electrons emitted within the trabecular marrow space (TMS). Target = TMS Target = TBE Target = TBV Energy Thoracic Body Energy Thoracic Body Energy Thoracic Body (MeV) Image 1 Image 2 (MeV) Image 1 Image 2 (MeV) Image 1 Image 2 0.010 9.98E-01 9.99E-01 0.010 1.73E-03 1.03E-03 0.010 O.OOE+00 O.OOE+00 0.015 9.97E-01 9.98E-01 0.015 Z. jjE-Uj 0.015 c AOF OS n ooF+fin u.uzU 9.96E-01 9.96E-01 3.74E-03 3.70E-03 0 020 8.85E-05 1.12E-04 0.030 9.90E-01 9.94E-01 0.030 8.53E-03 5.24E-03 0.030 1.52E-03 8 19E-04 0.050 9.74E-01 9.84E-01 0.050 1.33E-02 8.56E-03 0.050 1.26E-02 7.36E-03 0.100 9.38E-01 9.60E-01 0.100 1.57E-02 1.05E-02 0.100 4.59E-02 2.89E-02 0.200 8.59E-01 9.18E-01 0.200 2.03E-02 1.34E-02 0.200 1.20E-01 6.77E-02 0.500 7.99E-01 8.74E-01 0.500 2.39E-02 1.72E-02 0.500 1.75E-01 1.07E-01 1.000 7.79E-01 8.61E-01 1.000 2.49E-02 1.78E-02 1.000 1.91E-01 1.17E-01 1.500 7.73E-01 8.55E-01 1.500, 2.52E-02 1.80E-02 1.500 1.96E-01 1.20E-01 2.000 7.62E-01 8.38E-01 2.000 2.49E-02 1.81E-02 2.000 1.94E-01 1.19E-01 4.000 5.70E-01 6.07E-01 4.000 1.88E-02 1.34E-02 4.000 1.47E-01 8.92E-02 PAGE 114 108 Table 6. Absorbed fractions of energy for monoenergetic electrons emitted within the trabecular bone endosteum (TBE). Target = TMS Target = TBE Target = TBV Dnergy Thoracic Body Cinergy Thoracic Body Thoracic Body (^ivie V } Image 1 Image 2 image i lulage A (MeV) XUlagC 1 4.17E-02 4.41E-02 n ni n U.U 1 u y. 1 lE-Ul y.Uor:.-Ul 0 010 A TIC m U.Ul J 9 77F-02 U,U 1 J 8 29F-01 0 015 8.68E-02 9.34E-02 0.020 1.39E-01 1.45E-01 0.020 7.12E-01 7.07E-01 0.020 1.49E-01 1.48E-01 0.030 2.46E-01 2.48E-01 0.030 4.80E-01 4.84E-01 0.030 2.73E-01 2.68E-01 0.050 3.51E-01 3.53E-01 0.050 2.68E-01 2.64E-01 0.050 3.80E-01 3.82E-01 0.100 4.53E-01 4.80E-01 0.100 1.18E-01 1.18E-01 0.100 4.24E-01 3.96E-01 0.200 5.80E-01 6.42E-01 0.200 5.95E-02 5.69E-02 0.200 3.47E-01 2.86E-01 0.500 6.80E-01 7.45E-01 0.500 3.41E-02 2.93E-02 0.500 2.33E-01 1.76E-01 1.000 6.54E-01 7.14E-01 1.000 2.70E-02 2.14E-02 1.000 1.98E-01 1.36E-01 1.500 6.12E-01 6.74E-01 1.500 2.37E-02 1.86E-02 1.500 1.78E-01 1.19E-01 2.000 5.70E-01 6.23E-01 2.000 2.15E-02 1.66E-02 2.000 1.63E-01 1.08E-01 4.000 4.03E-O1 4.34E-01 4.000 1.51E-02 l.lOE-02 4.000 1.15E-01 7.27E-02 PAGE 115 109 Table 7. Absorbed fractions of energy for monenergetic electrons emitted within the trabecular bone volume (TBV). Target = TMS Target = TBE Target = TBV Energy Thoracic Body cucrgy Thoracic Body Thoracic Body Image 1 Image 2 PAGE 116 110 Table 8. Summary of the skeletal tissue masses (in the thoracic vertebra) used in calculation of S-values in this work and in the work of Bouchet et al. Tissue Image 1 Image 2 Bouchet et al. (g) (g) (g) Trabecular marrow space (TMS) 103.4 111.7 266.2 Trabecular active marrow (TAM) 72.4 78.2 188.6 Trabecular inactive marrow (TIM) 31.0 33.5 77.7 Trabecular bone volume (TBV) 31.6 18.2 157.1 Trabecular bone endosteum (TBE) 3.9 2.7 15.2 PAGE 117 Ill Backscattered electron I Delta Ray Figure 29. Model of Bouchet et al. electron transport in trabecular bone. Textured areas are the bone trabeculae regions, and white areas are the marrow space regions. The endosteal hemispheres are not shown in this diagram due to their relatively small size. In this diagram, a backscattered electron and a delta-ray are represented. (Bouchet et al. 1999b) PAGE 118 112 Figure 30. 2D NMR images of the intact block of thoracic vertebra imaged at a proton resonance frequency of 200 MHz. (a) Transverse viewing plane, (b) Coronal viewing plane, (c) Sagittal viewing plane. PAGE 119 113 Height^l.693 cm Figure 31. Macro-boundaries for thoracic vertebra. The sizes were derived from the 2D images in Figs. 30a to c. PAGE 120 114 0.0001 J ! ^ ' 0.01 0.1 1 10 Energy (MeV) Figure 32. Comparison of self-absorbed fractions versus photon energy for a tissue voxel 0.3 cm on edge. PAGE 121 115 0.01 J 1 1 1 0.01 0.1 1 10 Energy (M eV) Figure 33. Comparison of self-absorbed fractions versus electron energy for a tissue voxel 0.3 cm on edge. PAGE 122 116 0.001 0.0001 s o I < 0.00001 0.000001 -hJokisch-Right -S-Jokisch-Left X Bouchet 3 4 5 6 7 voxel distance from source (voxels) 10 Figure 34. Absorbed fractions as a function of voxel center-to-center distance from source voxel of 4.0 MeV photons. The calculations are for cubic voxels of 0.3 cm. PAGE 123 117 1 Voxel Distance from Source Figure 35. Absorbed fractions as a function of voxel (size=0.3 cm) distance from a source voxel of 1.5 MeV electrons. PAGE 124 118 < 1.00 0.90 0.80 0.70 0.60 0.50 0.40 0.30 0.20 0.10 0.00 t=*Â— TDD \ % 10 100 1000 10000 Eneiigy (keV) (c) Figure 36. Absorbed fraction as a function of monoenergetic electron energy originating in the (a) TMS, (b) TBE, and (c) TBV as given by the bone array model. PAGE 125 119 < 0.90 0.80 0.70 0.60 0.50 0.40 0.30 0.20 0.10 Â— ) r w iif ^^TT /IS J ( )()( ^r'"'^ ^ r TBE t^'m 1 1 to < 10 1.00 0.90 0.80 0.70 0.60 0.50 0.40 0.30 0.20 0.10 0.00 10 100 1000 10000 Energy (keV) TBE Â— Â« 1 100 1000 10000 Energy (keV) (c) 1.00 > 0.90 0.80 0.70 0.60 AF 0.50 0.40 0.30 0.20 0.10 0.00 1 10 100 1000 10000 Energy (keV) Figure 37. Absorbed fraction as a function of monoenergetic electron energy originating in the (a) TMS, (b) TBE, and (c) TBV as given by the infinite model. PAGE 126 120 (a) to < 0.80 0,60 0.40 T ^ir iif m ^ 4 TB^ CBV 10 100 1000 Energy (keV) TBE 10000 (b) 10 100 1000 Energy (keV) 10000 (c) 100 1000 Energy (keV) 10000 Figure 38. Absorbed fraction as a function of monoenergetic electron energy originating in the (a) TMS, (b) TBE, and (c) TBV as given by the thoracic model. PAGE 127 121 Figure 39. Absorbed fraction as a function of monoenergetic electron energy originating in the TMS as given by the thoracic model in both images. PAGE 128 Figure 40. Absorbed fraction as a function of mono-energetic electron energy originating in the cortical bone volume (CBV) as given by the thoracic model. PAGE 129 123 to Bouchet TBEfl 10 TBEI2 100 1000 Energy (keV) 10000 Figure 41. Comparison of methods of obtaining endosteal (TBE) dose for the infinite model with the source of electrons in the marrow space (TMS). PAGE 130 124 < 1.00 0.90 0.80 0.70 0.60 0.50 0.40 0.30 0.20 0.10 0.00 )K Thoracic Iml Infinite Iml Bonearraylm 1 10 100 1000 Energy (keV) 10000 Figure 42. Comparison of models for source and target in the marrow space (TMS). PAGE 131 125 0.030 1 10000 Energy (keV) Figure 43. Comparison of models for source in the marrow space (TMS) and target in the trabecular endosteum(TBE). i PAGE 132 126 Figure 44. Comparison of models for source in the marrow space (TMS) and target in the trabecular bone volume (TBV). PAGE 133 127 Figure 45. Absorbed fraction results for the thoracic model and Bouchet et al. model (using Chapter 3 chord distributions) for monenergetic electrons originating in the marrow space irradiating the marrow space (TMS<-TMS). PAGE 134 128 Figure 46. Absorbed fraction results for the thoracic model and Bouchet et al. model (using Chapter 3 chord distributions) for monenergetic electrons originating in the marrow space irradiating the endosteum (TBE<-TMS). PAGE 135 129 Figure 47. Absorbed fraction results for the thoracic model and Bouchet et al. model (using Chapter 3 chord distributions) for monenergetic electrons originating in the marrow space irradiating the trabecular bone volume (TBV'^TMS). PAGE 136 CHAPTER 5 SUMMARY AND CONCLUSIONS In the second chapter, the characteristics of chord distributions acquired over simple geometries were derived and discussed. Furthermore, the problems associated with obtaining these distributions from voxelized images were explored. A new method was introduced which avoids the voxel effects that occur due to the rough edges of a digital image. The results of this technique compare favorably with the mathematically expected resuhs. In chapter three, the methods developed in the previous section were used to obtain bone and marrow chord lengths from high-resolution (59 x 59 x 78 ^m"* and 59 x 59 X 59 nm^) images. The image processing steps were used to remove noise and segment the image before chords were acquired. Average bone chord lengths of 281 and 257 i^m and average marrow cavity chord lengths of 1,170 and 1,460 jxm were measured. The second image showed the effects of bone demineralization due to the sample being stored in water solution for over a year in between imaging sessions. The values from the first image fall well within the range of results seen in other studies of bone micromorphometry. In addition, it was shown that bone and marrow chord distributions have a relationship, and indeed are not statistically independent. A suggested method for overcoming the statistical dependence has been presented. Future work might include a comparison of this method with traditional chord length-based dosimetry methods. nn PAGE 137 131 Finally, three trabecular bone voxel transport models were developed. These models were compared against an existing chord length-based dosimetry model. Several results came from the comparisons of these models. First, particle reintroduction in the region of interest is important since the volume of the region of interest is not large enough to sufficiently contain electrons with initial energies of greater than 100 keV. The macrostructural boundaries of the thoracic vertebra resulted in significant differences from the infinite models only at very high energies of 2.0 to 4.0 MeV. This suggests that infinite medium models may be accurate for large skeletal sites such as the vertebra. Additional studies should be performed on smaller skeletal sites. The example dose calculation suggested that trabecular tissue masses are equally important as accurate absorbed fractions. These calculations suggest that there may be more uncertainty in the mass values than in the absorbed fraction results produced by the various dosimetry models. This work is unique and innovative to trabecular bone dosimetry in that an Svalue had not been derived using absorbed fraction and mass data taken from the same sample. Future work in trabecular bone dosimetry should focus on improving the accuracy with which skeletal tissue masses are derived. NMR microscopy presents a unique opportunity to obtain energy deposition and target tissue masses directly from the same sample. Future work can involve applying this methodology to more skeletal sites. This would allow for an expansion and verification of existing trabecular microstructure data. The data for a reference individual could be verified, and the effects of various age and PAGE 138 132 gender combinations. If deemed necessary, a "family" of reference models could be developed. At the same time, this methodology will provide improved estimates of skeletal tissue masses. Furthermore, cellularity factors may be obtainable directly from the same samples using fat and water suppression based imaging. Such methods would further improve the active marrow mass estimates. Finally, as imaging modalities continue to improve, in vivo imaging for the purpose of skeletal dosimetry may be feasible. Such techniques could lead to patient-specific bone dosimetry, vastly improving applications such as treatment planning. PAGE 139 APPENDIX A CHORD DISTRIBUTION ACQUISITION PROGRAM #include PAGE 140 134 I int c, thresh, Bn, Mn, tmp2 , d, 1 , m, n; int hood [SIZE] ; int tmparray[2] [HEIGHT] [DEPTH] ; float temp, tempB, tempM,p, t, istep, jstep, kstep, sinp, sint; unsigned char tmp; FILE *inp; FILE *Bptr; FILE *Mptr; width=WIDTH; height=HEIGHT; depth=DEPTH; testptr=f open { "error . txt" , "w") ; /*INITIALIZES THE IMAGE ARRAY TO ZERO VALUES*/ for(i=0; i PAGE 141 135 hood [m+3*n-l] =whichMed (i+m-2, j , k+n-1) ; ) else { hood[m+3*n-l]=whichMed(i+in-2, j+n-1, k) ; } } } changeMed (i, j , k, median (hood) ) ; } } if{SIZE==27) { for{i=XMIN; i PAGE 142 136 /* phi=360*p/ANGSTEP; */ if (phi<0) phi=2*180+phi; /* stepmic=stepf ind ( theta, phi ) ; */ stepmic=6; /*FINDS DISTANCE BETWEEN STARTING POINTS DEPENDING ON ANGLE* sint=sind (theta) *sind (theta) ; sinp=sind (phi ) *sind (phi ) ; if((theta==0 || theta==180) && (phi==0 || phi==180) ) { istep=l; } else { istep=fabs (sqrt (sinp+sint-sinp*sint) / (-sinpsint+sinp*sint ) ) ; } if ( (theta==90 || theta==270) && (phi==0 II phi==180) ) { jstep=l; } else ( jstep=fabs (1/ (sqrt (-sint+sint*sinp+l ) ) ) ; } if(phi==90 II phi==270) { kstep=l ; } else { kstep=f abs ( 1/cosd (phi ) ) ; } /*printf ("%f \t%f\t%f\t%f\t%f\n", theta, phi, istep, j step, kstep) ; */ /*SET ONE STARTING POINTS*/ if((phi>=0 && phi<90) || (phi>270 && phi<360) ) { /* PLANE ABEF*/ if((theta>=0 && theta<90) || (theta>270 && theta<360) ) { for ( jst=ymin; jst PAGE 143 137 } /* PLANE BCFG*/ if(theta>180 && theta<360) { f or ( ist=xinin; ist PAGE 144 138 for (i=0; KIOOOO; i + +) { Bn=Bn+Btotal [i] ; Mn=Mn+Mtotal [i] ; } fprintf (Bptr, "Number of Bone=%d\n", Bn) ; fprintf (Mptr, "Number of Marrow=%d\n" , Mn) ; if(Bn==0) Bn=l; if(Mn==0) Mn=l; for(i=0; KIOOOO; i++) { tempB= (float ) Btotal [i] / (f loat ) Bn; tempM=( float )Mtotal[i] / {float)Mn; fprintf (Bptr, "%d\t%f\n", i, tempB) ; fprintf (Mptr, "%d\t%f\n", i, tempM) ; } f close ( Bptr ) ; f close (Mptr) ; return 0; /*ROUNDING FUNCTION*/ int round (float x, int y) { if ( (x-y) >=0.5) return ceil (x) ; else if ( (x-y) >=0) return floor (x); else if ( (x-y) >=-0.5) return ceil ( x ) ; else return floor (x); /^FUNCTION TO DETERMINE WHICH MEDIUM A LOCATION IS IN*/ int whichMed(int x, int y, int z) { int med, arrayindex, bitindex; unsigned char mask, medium; arrayindex=z/8 ; bitindex=z%8 ; mask:=l ; mask=mask << bitindex; medium=image [x] [y] [arrayindex] & mask; if(medium>0) { medium=l ; } med=medium; return med; ) /*FUNCTION THAT WRITES OR CHANGES A MEDIUM*/ void changeMed (int x, int y, int z, int tomed) { int arrayindex, bitindex; unsigned char mask; arrayindex=z/8 ; bitindex=z%8 ; if(tomed==l && whichMed (x, y, z) ==0) { PAGE 145 139 mask=l; mask=mask << bitindex; image [x] [y] [arrayindex] =image [x] [y] [arrayindex] | mask; return; } else if(tomed==0 && whichMed (x, y, z) ==1) { mask=l ; mask=mask << bitindex; mask=~mask; image [x] [y] [arrayindex] =image [x] [y] [arrayindex] & mask; return; } else return; } /*MEDIAN FILTER FUNCTION*/ int median (int answer []) { bubbleSort (answer) ; return answer [SIZE/2] ; } /*BUBBLESORT FUNCTION FOR MEDIAN FILTER*/ void bubbleSort (int a[]) { int pass, k, hold; for(pass=l; pass<=SIZE-l; pass++) for(k=0; k<=SIZE-2; k++) if (a[k] > a[k+l] ) { hold=a [k] ; a[k]=a[k+l] ; a[k+l]=hold; ) } /*STARTING POINT FUNCTION*/ void startPnt (void) { int omed, newmed, newxint , newyint , newzint , f wdmed, temp, tempx, tempy, tempz ; float newx, newy, newz, stepx, stepy, stepz, dist, startx, starty, startz float fwdx, fwdy, fwdz, distx, disty, distz, sum, xi, yi, zi, left; int prevmed, tempmed; /*FILE *tptr;*/ tempx=nint (prx) ; tempy=nint (pry) ; tempz=nint (prz) ; omed=whichMed (tempx, tempy, tempz) ; prevmed=omed; xi=prx+ . 01*cosd (theta) *cosd (phi ) ; yi=pry+ . 01*sind (theta) *cosd (phi ) ; zi=prz+ . 01*sind (phi ) ; newmed=omed; /*DETERMINING WEIGHTED STEP SIZES*/ stepx=stepmic/pixelx; stepy=stepmic/pixely; s tepz=stepmic /pixel z ; PAGE 146 140 dist=1000;left=1000; startx=xi; starty=yi ; startz=zi; /*tptr=f open ("startpnt.txt", "w") ; fprintf (tptr, "Starting first while\n"); f close { tptr );* / while (newmed==omed && left<100000) { newx=xi+stepx*cosd (theta) *cosd (phi ) ; newy=yi+stepy*sind (theta) *cosd (phi ) ; newz=zi + stepz*sind (phi ) ; newxint=nint (newx) ; newyint=nint (newy) ; newzint=nint (newz) ; tempined=whichMed ( newxint , newyint , newzint ) ; if (tempmed ! =prevmed) { startx=prx; starty=pry; startz=prz; previned=teinpmed; } distx= (newx-startx) * (newx-startx) *pixelx*pixelx; disty= (newy-starty) * (newy-starty ) *pixely*pixely ; distz= (newz-startz) * (newz-startz ) *pixelz*pixelz; sum=distx+disty+distz; dist=sqrt (sum) ; if (dist>stepfind (theta, phi ) ) { newined=whichMed (newxint, newyint, newzint ) ; } else { newined=omed; } prx=newx; pry=newy; prz=newz; /* tptr=fopen("startpnt.txt", "w"); fprintf (tptr, "step=%f \n", step) ; fclose (tptr) ; */ stepx=stepx+stepmic/pixelx; stepy=stepy+stepmic/pixely; stepz=stepz + stepinic/pixelz ; if (checkBound (newx, newy, newz) ==1 ) { left=100001; } } /* startx=newx; starty=newy; startz=newz; */ /* tptr=fopen ( "startpnt . txt", "w"); fprintf (tptr, "Starting 2nd while loopXn"); fclose (tptr) stepx=0; stepy=0; stepz=0; f wdmed=newmed; while (left<100000) { s tepx=stepx+s tepmic /pixel x ; s tepy=stepy+st epmic /pixel y, Â• s t ep z=s t epz+s tepmic /pi xe 1 z ; fwdx=startx+stepx*cosd (theta) *cosd (phi) ; fwdy=starty+stepy*sind (theta) *cosd(phi) ; fwdz=startz+stepz*sind (phi) ; PAGE 147 141 newxint=nint (fwdx) ; newyint=nint (fwdy) ; newzint=nint ( fwdz) ; f wdmed=whichMed (newxint , newyint , newzint ) ; if {checkBound(fwdx, fwdy, fwdz) ==1) left=100001; if (fwdmed!=newmed) { /^CALCULATE DISTANCE OF CHORD LENGTH*/ distx= ( fwdx-startx) * ( f wdx-startx) *pixelx*pixelx; disty= ( fwdy-starty) * { fwdy-starty) *pixely*pixely; distz= ( fwdz-startz) * ( fwdz-start z ) *pixelz*pixelz; suin=distx+disty+distz; dist=sqrt (sum) ; /*ONLY WRITES CHORD IF LEFT<100000* / if {left<100000 && dist>stepfind (theta, phi) ) { if {dist>9999) dist=9999; temp= (int) dist; temp=nint (dist) ; /*DETERMINES TYPE OF CHORD LENGTH*/ if (newmed==0) { Barray [temp] =Barray [temp] +1; } else { /* if(temp<2) { fprintf (shorties, "%f \t%f \t%f \t%d\t%d\t%d\n", startx, starty, startz, tempx, tempy, tempz);}*/ Marray [temp] =Marray [temp] +1; } startx=fwdx; starty=f wdy; startz=fwdz; newmed=fwdmed; stepx=0; stepy=0; stepz=0; } } } return; } /*CHECKS TO SEE IF RAY IS WITHIN ROI BOUNDARIES*/ int checkBound ( float x, float y, float z) { if (x PAGE 148 142 for(i=0; i<5000; i++) { n=n+array [i] ; } if(n==0) n=l; for(i=0; i<5000; i++) { avg=avg+ (i*array[i] /n) ; } if(type==0) { fprintf (Bang_ptr, "%f \t%f \t% . 2f \t%d\n", theta, phi, avg, n) ; } else { fprintf (Mang_ptr, "%f \t%f \t% . 2f \t%d\n" , theta, phi , avg, n) ; } return; /FUNCTION TO DETERMINE STEP SIZE DEPENDING ON ANGLE*/ float stepfind ( float angtheta, float angphi) { float degtheta, degphi , step, the taM, phiM, step2D, step3D, Â• degtheta=angtheta; degphi=angphi ; thetaM=atand (PIXELY/PIXELX) ; if (degtheta==0 || degtheta==180 ) { step2D=PIXELX; } else if (degtheta==90 || degtheta==270 ) { step2D=PIXELY; } else if ( (degtheta>=0 && degtheta<=thetaM) | | (degtheta> (90+thetaM) && degtheta<= ( 180+thetaM) ) | | (degtheta> (270+thetaM) && degtheta<=360 ) ) { step2D=fabs (PIXELY/ (sind (angtheta) ) ) ; /*step2D=fabs (PIXELX/ ( cosd ( angtheta ) ) ) ;*/ } else { step2D=fabs (PIXELX/ (cosd (angtheta) ) ) ; /*step2D=fabs (PIXELY/ (sind (angtheta) ) ) ;*/ } phiM=atand(PIXELZ/step2D) ; if (degphi==0 | | degphi==180) { step3D=step2D; } else if (degphi==90 || degphi==270) { step3D=PIXELZ; } else if ( (degphi>=0 && degphi<=phiM) M (degphi> (90+phiM) && degphi<= ( 180+phiM) ) | | (degphi> (270+phiM) && degphi<=360 ) ) { step3D=fabs (PIXELZ/ ( sind ( angphi ) ) ) ; /*step3D=fabs (step2D/ (cosd (angphi) ) ) ; */ } else { step3D=fabs (step2D/ (cosd (angphi) ) ) ; /*step3D=fabs (PIXELZ/ (sind (angphi) ) ) ;*/ } /* step3D=0. 9; */ return step3D; PAGE 149 APPENDIX B VOXEL ARRAY EGS4 USER CODE %L %E UNDENT M 4; "INDENT EACH MORTRAN NESTING LEVEL BY 4" UNDENT F 2; "INDENT EACH FORTRAN NESTING LEVEL BY 2" "This line is 80 characters long, use it to set up the screen width" "2345678 91 123456789 | 123456789 | 12345678 9 | 1234 5678 9 | 123456789 | 1234 56789 | 1 23456789" " HERE YOU NEED TO DESCRIBE WHAT IS DOING YOUR PROGRAM. ... " NEED TO PUT WHAT INPUT FILE YOU USE, WHAT OUTPUT FILE YOU WRITE " " AND THE REGION INDEX THAT YOU ARE USING.... "STEP 1: USER-0VERRIDE-0F-EGS4-MACR0S REPLACE {$MXMED} WITH {1} "only 1 medium in the problem (default 10)" REPLACE {$MXREG} WITH {2} "only 2 geometric regions (default 2000)" REPLACE {$MXSTACK} WITH {50} "less than 16 particles on stack at once" "REPLACE FOR PRESTA" REPLACE {$STAT} WITH {1} REPLACE {$MXDATA} WITH {2} REPLACE {$CALL-HOWNEAR(TPERP) } WITH {CALL DIST_T0_REGI0N (TPERP) ; } "DEFINE A COMMON TO PASS INFORMATION TO THE GEOMETRY ROUTINE HOWFAR" REPLACE { ;COMIN/GEOM/; } WITH { ;C0MM0N/GE0M/X1, Yl, Zl , UNP, VNP, WNP, UU, W, WW, XNXT, YNXT , ZNXT , XX , Y Y , Z Z , XVOX , YVOX , Z VOX , NEWXVOX, NEWYVOX, NEWZVOX, MIDVOX; DOUBLE PRECISION XI , Yl , Zl , UNP, VNP, WNP, UU, VV, WW, XNXT, YNXT, ZNXT, XX, YY, ZZ; INTEGER XVOX, YVOX, ZVOX; } "DEFINE A COMMON TO PASS INFORMATION FOR YOUR VARIABLE TRACKING IN " "AUSGAB " REPLACE { ;COMIN/SCORE/; } WITH { ;COMMON/SCORE/ESCORE (40,'ilO, 40, 10) , ENDISC; DOUBLE PRECISION ESCORE, ENDISC; } REPLACE ( ;C0MIN/ENERG1/; } WITH { ;C0MM0N/ENERG1/IRUN, ELOOP, ESUM, YDIM, H, L; 143 PAGE 150 144 DOUBLE PRECISION ESUM, YDIM, H, L; BYTE ARRAY (40, 40, 40) ; INTEGER ELOOP, IRUN; } REPLACE { ;COMIN/STACK/; } WITH {;COMMON/STACK/$LGN(E,X, Y, Z, U, V, W, DNEAR, WT, IQ, IR, LATCH {$MXSTACK) ) , LATCH I, NP, $LGN(IPOS, JPOS,KPOS{$MXSTACK) ) , IPOSI, JPOSI,KPOSI; DOUBLE PRECISION E, X, Y, Z, U, V, W, DNEAR; REAL WT; INTEGER IPOS, JPOS,KPOS, IPOSI , JPOSI , KPOSI ; INTEGER NP, LATCHI, IQ, IR, LATCH; } REPLACE { ;COMIN/EPCONT/; } WITH { ; COMMON/EPCONT/EDEP, TSTEP, TUSTEP, USTEP, TVSTEP, VSTEP, RHOF, EOLD, ENEW, EKE, ELKE, BETA2, GLE, TSCAT, IDISC, IROLD, IRNEW, lAUSFL {$MXAUS) ; DOUBLE PRECISION EDEP, TSTEP, TUSTEP, USTEP, TVSTEP, VSTEP, RHOF, EOLD, ENEW, ELKE, BETA2, GLE, TSCAT; } REPLACE {$TRANSFERPROPERTIESTO#FROM#; } WITH {X{P1)=X{P2} ; Y{P1)=Y{P2}; Z{P1}=Z{P2} ; IR{P1}=IR{P2} ; WT{P1}=WT{P2} ; DNEAR { PI } =DNEAR{ P2 } ; LATCH { PI } =LATCH { P2 } ; IP0S{P1}=IP0S{P2} ; JP0S{P1}=JP0S{P2} ; KP0S{P1}=KP0S{P2} ; } "HERE YOU NEED TO DEFINE YOU RANDOM NUMBER GENERATOR: " " A commonly used random number generator is Ranmar: " " Ranmar is a long sequence RNG by Marsaglia and Zaman. " " It is a pseudo random number generator returning a single precision" " real number between 0 (inclusive) and 1 (exclusive) . " " The cycle length of this generator is 2**144 " " Initialization sunroutine rmarin is required " " This rng is described in: " " 'A review of pseudorandom number generators by F James' " " in publication dd/88/22 from the CERN data handling division " REPLACE { ;COMIN/RANDOM/; } WITH { ; common/randomm/urndm ( 97 ) , crndm, cdrndm, cmrndm, ixx, jxx; double precision urndm, crndm, cdrndm, cmrndm, r 4 opt ; integer ixx, jxx; } REPLACE {$RNG-INITIALIZATION; } WITH {;call rmarin;} REPLACE {$COMMON-RANDOM-DECLARATION-IN-BLOCK-DATA; } WITH { ;COMIN/RANDOM/; } PAGE 151 145 REPLACE {$RANDOMSET#; } WITH { r4opt = urndin{ixx) urndm ( jxx) ; IF(r4opt < 0) r4opt = r4opt + 1; urndm (ixx) = r4opt; ixx = ixx 1; IF (ixx = 0) ixx = 97; jxx = jxx 1; IF (jxx = 0) jxx = 97; crndm = crndm cdrndm; IF(crndin < 0) crndm = crndm + cmrndm; r4opt = r4opt crndm; IF(r4opt < 0) r4opt = r4opt + 1; {PI} = r4opt; } "YOU CAN DEFINE SOME MACROS FOR OUTPUT, OR FOR GEOMETRY TRACKING.... "will output to the file unit 22." REPLACE { ;OUTPUT22#; #; ) WITH { ; {SETR A =@LG} ;WRITE(22, {COPY A}) {PI}; {COPY A} FORMAT { P2 } ; } "HERE NEED TO DEFINE THE COMMON FOR THE MAIN PROGRAM " "USING THE COMIN MACRO DEFINE IN EGS4" " BOUNDS CONTAINS ECUT AND PCUT" " GEOM PASSES INFO TO OUR HOWFAR ROUTINE" " MEDIA CONTAINS THE ARRAY MEDIA" " MISC CONTAINS MED" " THRESH CONTAINS AE AND AP" ENERGl PASSES INFO TO THE AUGAB ROUTINE" ;COMIN/BOUNDS, GEOM, MEDIA, MISC, SCORE, THRESH, ENERGl, USER, USEFUL, RANDOM/; "NOTE ; BEFORE COMIN" ;COMIN/ELECIN/; INTEGER II, JJ; ff "STEP 2 PRE-HATCH-CALL-INITIALIZATION If $TYPE TEMP (24, 1) /$S ' TISSUE ', 18 * ' '/; "PLACE MEDIUM NAME IN AN ARRAY" " $S IS A MORTRAN MACRO TO EXPAND STRINGS" " $TYPE IS INTEGER(F4) OR CHARACTER*4 (F77)" " DEPENDING ON THE EGS4 VERSION BEING USED" "IN ORDER TO MATCH THE TYPE OF MEDIA" NMED= $MXMED; "Set number of mediums." NREG = $MXREG; "Set number of regions." DO J = 1,NMED [ DO 1 = 1 , 24 [MEDIA { I , J) =TEMP (I , J) ; ] ] "THIS IS TO AVOID A DATA STATEMENT FOR" " A VARIABLE IN COMMON" "DUNIT DEFAULT TO 1, I.E. WE WORK IN CM" PAGE 152 146 DO J=1,NREG [MED{J)=1; "TISSUE IN ALL REGIONS"] /ECUT (1) , ECUT (2) / = 0.512; "Terminate electron histories at 1 keV" /PCUT (1) , PCUT (2) / = 0.001; "Terminate photon histories at 1 keV" " ONLY NEEDED FOR REGIONS 1&2 SINCE NO TRANSPORT ELSEWHERE" " ECUT IS TOTAL ENERGY IN MEV " "STEP 3 HATCH-CALL ;OUTPUT;{' CALL HATCH TO GET CROSS-SECTION DATA' ) ; CALL HATCH;" PICK UP CROSS SECTION DATA FOR BONE AND TISSUE' DATA FILE MUST BE ASSIGNED TO UNIT 12" "set up of PRESTA stuff here so we can control step size" ECUTMN=0 . 512; "THE GLOBAL ECUT ( kinetic+rest mass)" IOUT=22; "Number for fortran file to output Presta parameters" EK0=10.00; "MAXIMUM ENERGY ELECTRON IN THE SIMULATION" ESTEPE=0. 02; DO J=1,$MXMED [ESTEPR(J)=ESTEPE; ] "DONOTFORGETTO SET UP ESTEPE BEFORE" $ PRESTAINPUTS; $PRESTA-INPUT-SUMMARY; " Output Presta info to output file. " ;OUTPUT AE(1)-0.511, AP ( 1 ) ; {'OKNOCK-ON ELECTRONS CAN BE CREATED AND ANY ELECTRON FOLLOWED DOWN TO' /T40,F8.3,' MeV KINETIC ENERGY'/ ' BREM PHOTONS CAN BE CREATED AND ANY PHOTON FOLLOWED DOWN TO ' , /T40, F8 .3, ' MeV ' ) ; "COMPTON EVENTS CAN CREATE ELECTRONS AND PHOTONS BELOW THESE CUTOFFS" "STEP 4 INITIALIZATION-FOR-HOWFAR ri , "HERE YOU CAN SET UP WHATEVER YOU NEED FOR YOUR HOWFAR SUBROUTINE, " H=0.3; L=0.3; YDIM=0.3; MIDVOX=20; II II "STEP 5 INITIALIZATION-FOR-AUSGAB II II "INITIALIZE THE VARIABLE YOU NEED FOR YOUR AUSGAB SUBROUTINE...." DO J=l, 4 0 [ DO 1=1, 40 [ DO 11=1, 40 [ DO JJ=1, 10 [ESCORE (I, J, II, JJ) =0. 0; ] ] ] ] "ZERO SCORING ARRAY BEFORE STARTING" "STEP 6 DETERMINATION-OF-INICIDENT-PARTICLE-PARAMETERS PAGE 153 147 "INITIALIZATION FOR RANDOM NUMBER GENERATOR" IXX = 0; JXX = 0; ; $RNG-INITIALIZATION; "DEFINE INITIAL VARIABLES " "CAN ALSO CALL A SUBROUTINE SOURCE IF YOUR SOURCE IS COMPLICATEED . NUMRUN=1; NCASES=100000; IQIN=-1; EIN=1.511; WTIN=1. 0; "Number of run that you are going to make" "NUMBER OF PARTICLE YOU WILL FOLLOW PER RUN" "WILL START WITH ELECTRONS" "WITH INITIAL KINETIC ENERGY IN MeV" "WEIGHT = 1 SINCE NO VARIANCE REDUCTION USED" OPEN(UNIT=l,FILE='l_0M3000mic02estep.txt' ) ; DO IRUN=I, NUMRUN [ "start loop on the number of run" OUTPUT IRUN; ( 'STARTING RUN: ',14); DO ICNTR=1, NCASES [ "start loop on the number of particle" "CALL YOUR SOURCE SUBROUTINE TO HAVE POSITION, DIRECTION" " AND INITIAL REGION INDEX OF YOUR STARTING PARTICLE" call SOURCE (XIN, YIN, ZIN, UIN, VIN, WIN, IRIN) ; II Â„ "STEP 7 SHOWER-CALL IF "CALL THE SHOWER SUBROUTINE TO TRANSPORT YOUR PARTICLE...." CALL SHOWER(IQIN,EIN,XIN, YIN, ZIN, UIN, VIN, WIN, IRIN,WTIN) ; ] "end loop on the number of histories" ] "end loop on the number of runs..." "STEP 8 OUTPUT-OF-RESULTS "HERE YOU NEED TO CALCULATE YOUR AVERAGES, STANDARD DEVIATIONS," "AND GOVS FOR YOUR RESULTS" "THEN, YOU CAN OUTPUT YOUR RESULTS...." "NORMALIZE TO % OF TOTAL INPUT ENERGY ANORM=l./( (EIN-0. 511) *FLOAT (NCASES) ) ; DO JJ=1, NUMRUN [ TOTAL=0 . 0 ; DO 1=1, 40 [ DO 11=1, 40 [ DO J=l, 4 0 [ TOTAL=TOTAL+ESCORE(I, II , J, JJ) ; ] ] ] DO 1=10, 30 [ DO 11=10, 30 [ DO J=10, 30 [ WRITE (I, 101) ESCOREd, II, J, JJ) *ANORM; ] ] ] ] WRITE{1,I0I) l.-TOTAL*ANORM; WRITE (1,101) ENDISC*ANORM; PAGE 154 , J v., t4g WRITEd, 101) ESCORE (20, 20, 20, 1) *ANORM; CLOSE ( 1 ) ; 101 FORMAT (IX, Fll. 8) ; STOP; END; II********************************************************************" II " SUBROUTINE AUSGAB(IARG); fl " " IN GENERAL, AUSGAB IS A ROUTINE WHICH IS CALLED UNDER A SERIES " OF WELL DEFINED CONDITIONS SPECIFIED BY THE VALUE OF lARG (SEE THE" " EGS4 MANUAL FOR THE LIST). THIS IS A PARTICULARILY SIMPLE AUSGAB." " WHENEVER THIS ROUTINE IS CALLED WITH IARG=3 , A PARTICLE HAS " BEEN DISCARDED BY THE USER IN HOWFAR " WE GET AUSGAB TO PRINT THE REQUIRED INFORMATION AT THAT POINT II " II ********************************************************************" ; COMIN/ STACK, SCORE, EPCONT, ENERGl , GEOM/ ; XVOX=IPOS (NP) ; YVOX=JPOS (NP) ; ZVOX=KPOS (NP) ; "WRITE INFORMATION FOR PARTICLE DISCARDED BY USER" IF (IARG=3) [ "WRITEd, 100) E (NP) ,X (NP) , Y (NP) , Z (NP) , U (NP) , V(NP) , W(NP) , IQ(NP) , IR(NP) ; " ICQ FORMAT(lX,F8.5,3F6.3,3F6.3,I3,I2) ; ENDISC=ENDISC+EDEP; RETURN; ] ELSE [ IRL=IR (NP) ; ESCORE (XVOX, YVOX, ZVOX, IRUN) =ESCORE (XVOX, YVOX, ZVOX, IRUN) +EDEP; ] "PRINT *, 'EDEP=',EDEP, XVOX, YVOX, ZVOX;" "PRINT *, ESCORE (XVOX, YVOX, ZVOX, IRUN) ; " RETURN; END; "END OF AUSGAB" %E II ********************************************************************* II II II SUBROUTINE HOWFAR; II n " THE FOLLOWING IS A GENERAL SPECIFICATION OF HOWFAR GIVEN A PARTICLE AT (X,Y,Z) IN REGION IR AND GOING IN DIRECTION (U,V,W), THIS ROUTINE ANSWERS THE QUESTION, CAN THE PARTICLE GO A DISTANCE USTEP WITHOUT CROSSING A BOUNDARY IF YES, IT MERELY RETURNS " IF NO, IT SETS USTEP=DISTANCE TO BOUNDARY IN THE CURRENT " DIRECTION AND SETS IRNEW TO THE REGION NUMBER ON THE " FAR SIDE OF THE BOUNDARY (THIS CAN BE MESSY IN GENERAL!) fl " THE USER CAN TERMINATE A HISTORY BY SETTING IDISOO. HERE WE ii*************************************************************^**>. + ^nm. ;COMIN/STACK, EPCONT, GEOM/ ; ;C0MIN/ENERG1/; COMMON STACK CONTAINS X, Y, Z, U, V, W, IR AND NP (STACK POINTER)" " COMMON EPCONT CONTAINS IRNEW, USTEP AND IDISC" PAGE 155 149 " COMMON GEOM CONTAINS XI, Yl, Zl, " DOUBLE PRECISION PI, P2, P3, P4, P5, P6; DOUBLE PRECISION DISTl; INTEGER REGNEW; XI = X(NP); Yl = Y(NP); Zl = Z(NP); XX = X1*X1; YY = Y1*Y1; ZZ = Z1*Z1; UNP = U(NP); VNP = V(NP); WNP = W(NP); UU = UNP*UNP; VV = VNP*VNP; WW = WNP*WNP; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; IPNTR = IR(NP) ; XVOX=NINT (Xl/L) +MIDVOX; YVOX=NINT (Yl/YDIM) +MIDVOX; ZVOX=NINT (Zl/H) +MIDVOX; IPOS (NP)=XVOX; JPOS (NP)=YVOX; KPOS(NP)=ZVOX; "PRINT *, XI, Yl, Zl, IPOS (NP) , JPOS (NP) , KPOS (NP) ; " "CHECK TO MAKE SURE X,Y,Z AND XVOX, YVOX, ZVOX CORRESPOND" "PLANE 1" Pl=( (YVOX-MIDVOX) *YDIM+YDIM/2 . -Yl) ; "PLANE 4" P4=-l. * ( (YVOX-MIDVOX) *YDIM-YDIM/2 . -Yl ) ; "PLANE 2" P2=( (ZVOX-MIDVOX) *H+H/2.-Zl) ; "PLANE 5" P5=-l.*( (ZVOX-MIDVOX) *H-H/2.-Zl) ; "PLANE 3" P3=( (XVOX-MIDVOX) *L+L/2.-Xl) ; "PLANE 6" P6=-l . * ( (XVOX-MIDVOX) *L-L/2 . -XI ) ; IF(P1<0 I P2<0 I P3<0 I P4<0 I P5<0 | P6<0) [PRINT *, 'ERROR IN HOWFAR' , XI, Yl, Zl, XVOX, YVOX, ZVOX, IPOS(NP), JPOS(NP), KPOS(NP);] IF(XVOX>38 I XV0X<2 | YVOX>38 | YV0X<2 | ZVOX>38 | ZV0X<2) [IDISC=1; RETURN;] "TERMINATE IT FOR BEING BEYOND THE BUFFER" ELSEIF(IPNTR=1 | IPNTR=2) [ "PLANE 1" Pl= ( (YVOX-MIDVOX+0 .5) *YDIM-Y1) /VNP; IF(P1<0) [Pl=5000.;] "PLANE 4" P4=( (YVOX-MIDVOX0.5) *YDIM-Y1) /VNP; IF(P4<0) [P4=5000.;] "PLANE 2" P2=( (ZVOX-MIDVOX+0.5) *H-Z1) /WNP; IF(P2<0) [P2=5000.;] "PLANE 5" P5=( (ZVOX-MIDVOX0.5) *H-Z1) /WNP; IF{P5<0) [P5=5000.;] PAGE 156 150 "PLANE 3" P3=( (XVOX-MIDVOX+0.5) *L-X1) /UN?; IF(P3<0) [P3=5000.;] "PLANE 6" P6=( (XVOX-MIDVOX-0.5) *L-X1) /UNP; IF(P6<0) [P6=5000.;] DIST=DMIN1 (PI, P2, P3, P4 , P5, P6) ; 102 FORMAT {IX, 312) ; IF(DIST>USTEP) [REGNEW=0; ] ELSE [ USTEP=DIST+l.d-8; IF(IPNTR=2) [IRNEW=1;] ELSE [IRNEW=2;] ] "PRINT *, PI, P4, P2, P5, P3, P6, REGNEW; " "IF(XVOX~=20 I YVOX~=20 | ZVOX~=20) " "[PRINT *, XI, Yl, Z1,XV0X, YVOX, ZVOX; ] " RETURN; END; "END OF SUBROUTINE HOWFAR" %E It ************************ + ***** + ****** + * + ** + ** + * + + **** + * + ** SUBROUTINE DIST_TO_REGION (TPERP) ; "THIS SUBROUTINE NEED TO RETURN TPERP AS THE SHORTEST DISTANCE TO ANY" "BOUNDARY" "******************* + ****************************** + *****************" ; COMIN/STACK, GEOM/ ; ;C0MIN/ENERG1/; DOUBLE PRECISION PI, P2, P3, P4, P5, P6; DOUBLE PRECISION DISTl; ; , ' INTEGER REGNEW; Â• 4 ; . XI = X(NP); Yl = Y(NP); Zl = Z(NP); ' Â• < XX = X1*X1; YY = Y1*Y1; ZZ = Z1*Z1; UNP = U(NP); VNP = V(NP); WNP = W(NP); UU = UNP*UNP; VV = VNP*VNP; WW = WNP*WNP; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; IPNTR = IR(NP) ; XVOX=NINT (Xl/L) +MIDVOX; YVOX=NINT (Yl/YDIM) +MIDVOX; ZVOX=NINT (Zl/H) +MIDVOX; IPOS (NP)=XVOX; JPOS (NP) =YVOX; KPOS (NP) =ZVOX; "CHECK TO MAKE SURE X, Y, Z AND XVOX, YVOX, ZVOX CORRESPOND" "PLANE 1" PAGE 157 151 Pl= ( (YVOX-MIDVOX) *YDIM+YDIM/2 . -Yl) ; "PLANE 4" P4=-l . * { (YVOX-MIDVOX) *YDIM-YDIM/2 . -Yl) ; "PLANE 2" P2={ (ZVOX-MIDVOX) *H+H/2.-Zl) ; "PLANE 5" P5=-l.* ( (ZVOX-MIDVOX) *H-H/2.-Zl) ; "PLANE 3" P3=( (XVOX-MIDVOX) *L+L/2.-Xl) ; "PLANE 6" P6=-l. * ( (XVOX-MIDVOX) *L-L/2.-Xl) ; IF(P1<0 I P2<0 I P3<0 I P4<0 I P5<0 | P6<0) [PRINT *, 'ERROR IN DIST', XI, Yl, Zl, XVOX, YVOX, ZVOX; ] DIST1=DMIN1 (PI, P2, P3, P4, P5, P6) ; TPERP=DIST1; RETURN; END; "END OF SUBROUTINE DIST_TO_REGION" %E "SUBROUTINE FOR SOURCE OF PARTICLE" Â»*********************************************************************" I SUBROUTINE SOURCE (XIN, YIN, ZIN, UIN, VIN, WIN, IRIN) ; ;COMIN/STACK, RANDOM, GEOM, UPHIOT, ENERGl/; REAL DMYl , DMY2 , DMY3 , DMY4 , PHI , THETA; IRIN=1; $RANDOMSET RNGl; $RANDOMSET RNG2; $RANDOMSET RNG3; $RANDOMSET RNG4; $RANDOMSET RNG5; PHI=TW0PI*RNG1; THETA=ACOS (1.-2. *RNG2 ) ; XIN=(RNG3-0.5)*L; YIN= (RNG4-0. 5) *YDIM; ZIN=(RNG5-0.5) *H; IPOSI=MIDVOX; JPOSI=MIDVOX; KPOSI=MIDVOX; IPOS (1) =MIDVOX; JPOS (1) =MIDVOX; KPOS (1) =MIDVOX; NEWXVOX=MIDVOX; NEWYVOX=MIDVOX; NEWZVOX=MIDVOX; UIN=SIN (THETA) *COS (PHI) ; VIN=SIN (THETA) *SIN (PHI) ; WIN=COS (THETA) ; PAGE 158 152 /RETURN; END; "END OF SUBROUTINE SOURCE" %E "SUBROUTINE FOR INITIALIZATION OF RANDOM NUMBER GENERATOR " r SUBROUTINE RMARIN; ;COMIN/RANDOM/; IF( (IXX.LE.O) .OR. (IXX.GT. 31328) ) IXX=1802; "SETS MARSAGLIA DEFAULT" " BUG. In the following line the assignment previous to 90/09/18 " " was to IXX. This DID NOT upset the randomness of the sequence, " " just the initial starting point. BLIF 90/09/18. IF( (JXX.LE.O) .OR. (JXX.GT. 30081) ) JXX=9373; "SETS MARSAGLIA DEFAULT" I = MOD(IXX/177, 177) + 2; J = MOD (IXX, 177) + 2; K = MOD(JXX/169, 178) + 1; L = MOD(JXX, 169) DO 11=1, 97 [ S=0.0;T=0.5; DO JJ=1, 24 [ M=MOD{MOD{I*J, 179) *K, 179) ; I=J; J=K;K=M;L=MOD(53*L+l, 169) ; IF(MOD(L*M, 64) .GE.32) S=S+T; T=0 . 5*T; ] URNDM{II)=S; ] CRNDM = 362436. /16777216. ; CDRNDM = 7654321 . /16777216. ; CMRNDM = 16777213. /16777216. ; IXX = 97; JXX = 33; END; ; "END OF SUBROUTINE RMARIN" PAGE 159 APPENDIX C BONEARRAY EGS4 USER CODE %L %E UNDENT M 4; "INDENT EACH MORTRAN NESTING LEVEL BY 4" UNDENT F 2; "INDENT EACH FORTRAN NESTING LEVEL BY 2" "This line is 80 characters long, use it to set up the screen width" "234 5678 9 I 1234 5678 9 | 1234 5678 9 | 1234 56789 | 1234 5678 9 I 1234 5 678 9 I 123456789 I 1 23456789" " HERE YOU NEED TO DESCRIBE WHAT IS DOING YOUR PROGRAM. ... " NEED TO PUT WHAT INPUT FILE YOU USE, WHAT OUTPUT FILE YOU WRITE " AND THE REGION INDEX THAT YOU ARE USING.... "STEP 1: USER-0VERRIDE-0F-EGS4-MACR0S REPLACE {$MXMED} WITH {2} "only 2 media in the problem (default 10)" REPLACE {$MXREG} WITH {3} "only 3 geometric regions (default 2000)" REPLACE {$MXSTACK} WITH {50} "less than 16 particles on stack at once" "REPLACE FOR PRESTA" REPLACE {$STAT} WITH {1} REPLACE ($MXDATA} WITH (2} REPLACE {$CALL-HOWNEAR(TPERP) } WITH {CALL DIST_TO_REGION (TPERP) ; } "DEFINE A COMMON TO PASS INFORMATION TO THE GEOMETRY ROUTINE HOWFAR" REPLACE { ;COMIN/GEOM/; } WITH { ; COMMON /GEOM/Xl, Yl, Zl , UNP, VNP, WNP, UU, W, WW, XNXT, YNXT, ZNXT,XX, YY, ZZ,XVOX, YVOX, ZVOX, VOLFRACT, NEWXVOX, NEWYVOX, NEWZVOX, MIDVOX, SOURCEMED; DOUBLE PRECISION XI , Yl , Zl , UNP, VNP, WNP, UU, VV, WW, XNXT, YNXT, ZNXT, XX, YY, ZZ , VOLFRACT ; INTEGER XVOX, YVOX, ZVOX, NEWXVOX, NEWYVOX, NEWZVOX, MIDVOX, SOURCEMED; } "DEFINE A COMMON TO PASS INFORMATION FOR YOUR VARIABLE TRACKING IN " "AUSGAB " REPLACE { ;COMIN/SRCPOS/; } WITH { ; COMMON/SRCPOS/STORE, ENDOX ( 6) , ENDOY ( 6) , ENDOZ (6) ; INTEGER STORE; DOUBLE PRECISION ENDOX, ENDOY, ENDOZ; } 153 PAGE 160 154 REPLACE { ;COMIN/SCORE/; } WITH { ; COMMON / SCORE /ESCORE (40, 40, 40, 10) , ENDISC (120) , ENBONE(120) , ENMARROW { 1 2 0 ) ,ENSTEP(12) , ENMARROWl (120) , ENMARR0W2 (120) , ENENDOSTl (120) , ENEND0ST2 (120) ; DOUBLE PRECISION ESCORE, ENDISC, ENBONE, ENMARROW, ENSTEP, ENMARROWl , ENMARR0W2 , ENENDOSTl, ENEND0ST2; } REPLACE { ;C0MIN/ENERG1/; } WITH { ; COMMON/ ENERG1/IRUN,EL00P, ESUM, YDIM, H, L, ARRAY, IMIN, IMAX, JMIN, JMAX, KMIN, KMAX, IDIM, JDIM, KDIM, SIZE, THRESH; DOUBLE PRECISION ESUM, YDIM, H, L; BYTE ARRAY (256, 128, 32) ; INTEGER ELOOP, IRUN, SIZE, IMIN, IMAX, JMIN, JMAX, KMIN, KMAX, IDIM, JDIM, KDIM; INTEGER THRESH; } REPLACE { ;COMIN/STACK/; } WITH {;COMMON/STACK/$LGN(E,X, Y, Z, U, V, W, DNEAR, WT, IQ, IR, LATCH ( $MXSTACK) ) , LATCHI , NP, $LGN (IPOS, JPOS, KPOS ($MXSTACK) ) , IPOSI, JPOSI, KPOSI; DOUBLE PRECISION E, X, Y, Z, U, V, W, DNEAR; REAL WT; INTEGER IPOS, JPOS, KPOS, IPOSI , JPOSI , KPOSI ; INTEGER NP, LATCHI, IQ, IR, LATCH; } REPLACE { ;COMIN/EPCONT/; } WITH { ; COMMON/EPCONT/EDEP, TSTEP, TUSTEP, USTEP, TVSTEP, VSTEP, RH0F,E0LD,ENEW,EKE,ELKE,BETA2,GLE,TSCAT, IDISC, IROLD, IRNEW, IAUSFL($MXAUS) ; DOUBLE PRECISION EDEP, TSTEP, TUSTEP, USTEP, TVSTEP, VSTEP, RHOF, EOLD, ENEW, ELKE, BETA2, GLE, TSCAT; } REPLACE {$TRANSFERPROPERTIESTO#FROM#; } WITH {X{P1}=X{P2}; Y{P1}=Y{P2} ; Z{P1}=Z{P2} ; IR{P1}=IR{P2} ; WT{P1}=WT(P2}; DNEAR{P1}=DNEAR{P2} ; LATCH { PI } =LATCH { P2 } ; IP0S{P1}=IP0S{P2} ; JPOS { PI }= JPOS {P2}; KP0S{P1}=KP0S{P2} ; } "HERE YOU NEED TO DEFINE YOU RANDOM NUMBER GENERATOR: " " A commonly used random number generator is Ranmar : " " Ranmar is a long sequence RNG by Marsaglia and Zaman. " " It is a pseudo random number generator returning a single precision" " real number between 0 (inclusive) and 1 (exclusive) . " " The cycle length of this generator is 2**144 " " Initialization sunroutine rmarin is required " " This rng is described in: " PAGE 161 155 " 'A review of pseudorandom number generators by F James' " " in publication dd/88/22 from the CERN data handling division " REPLACE { ;COMIN/RANDOM/; } WITH { ; common/randomra/urndm { 97 ) , crndm, cdrndm, cmrndm, ixx, jxx; double precision urndm, crndm, cdrndm, cmrndm, r4 opt; integer ixx, jxx; } REPLACE {$RNG-INITIALIZATION; } WITH {;call rmarin; } REPLACE {$COMMON-RANDOM-DECLARATION-IN-BLOCK-DATA; ) WITH { ;COMIN/RANDOM/; } r REPLACE {$RANDOMSET#; } WITH { r4opt = urndm(ixx) urndm(jxx); IF(r4opt < 0) r4opt = r4opt + 1; urndm (ixx) = r4opt; ixx = ixx 1; IF(ixx = 0) ixx = 97; jxx = jxx 1; IF (jxx = 0) jxx = 97; crndm = crndm cdrndm; IF (crndm < 0) crndm = crndm + cmrndm; r4opt = r4opt crndm; IF(r4opt < 0) r4opt = r4opt + 1; {PI} = r4opt; } "YOU CAN DEFINE SOME MACROS FOR OUTPUT, OR FOR GEOMETRY TRACKING.... "will output to the file unit 22." REPLACE { ;OUTPUT22#;#; } WITH { ; {SETR A =(aLG} ;WRITE(22, {COPY A}) {PI}; {COPY A} FORMAT {P2};} "HERE NEED TO DEFINE THE COMMON FOR THE MAIN PROGRAM " "USING THE COMIN MACRO DEFINE IN EGS4" " BOUNDS CONTAINS ECUT AND PCUT" " GEOM PASSES INFO TO OUR HOWFAR ROUTINE" " MEDIA CONTAINS THE ARRAY MEDIA" " MISC CONTAINS MED" " THRESH CONTAINS AE AND AP" " ENERGl PASSES INFO TO THE AUGAB ROUTINE" ;COMIN/BOUNDS, GEOM, MEDIA, MISC, SCORE, THRESH, ENERGl, USER, USEFUL, RANDOM/; "NOTE ; BEFORE COMIN" ;COMIN/ELECIN/; INTEGER II, JJ, WHICHMED, TMPINT; I? "STEP 2 PRE-HATCH-CALL-INITIALIZATION H $TYPE TEMP(24,2) /$S ' BONE ' , 20* ' ', $S 'MARROW' , 18* ' '/; PAGE 162 156 "PLACE MEDIUM NAME IN AN ARRAY" " $S IS A MORTRAN MACRO TO EXPAND STRINGS" " $TYPE IS INTEGER(F4) OR CHARACTER*4 (F77)" " DEPENDING ON THE EGS4 VERSION BEING USED" "IN ORDER TO MATCH THE TYPE OF MEDIA" NMED= $MXMED; "Set number of mediums." NREG = $MXREG; "Set number of regions." DO J = 1,NMED [ DO 1=1 , 24 [MEDIA { I , J) =TEMP ( I , J) ; ] ] "THIS IS TO AVOID A DATA STATEMENT FOR" " A VARIABLE IN COMMON" "DUNIT DEFAULT TO 1, I.E. WE WORK IN CM" DO J=l,l [MED{J)=1; "BONE IN REGION 1 AND "] DO J=2,3 [MED{J)=2; "MARROW IN REGION 2 AND 3"] /ECUT (1) , ECUT (2) / = 0.512; "Terminate electron histories at 1 keV" /PCUT (1) , PCUT (2) / = 0.001; "Terminate photon histories at 1 keV" ONLY NEEDED FOR REGIONS 1&2 SINCE NO TRANSPORT ELSEWHERE" ECUT IS TOTAL ENERGY IN MEV " "READ IN IMAGE" II II IDIM=256; JDIM=128;KDIM=256; IMIN=55; JMIN=10; KMIN=60; IMAX=195; JMAX=110; KMAX=200; "IMIN=100; JMIN=50; KMIN=100; "IMAX=110; JMAX=60; KMAX=110; THRESH=61; CALL IMAGEREAD; VOLFRACT=0.0; DO I=IMIN, IMAX [ DO J=JMIN,JMAX [ DO JJ=KMIN,KMAX [ IF(WHICHMED(I, J, JJ)=1) [ ' V0LFRACT=V0LFRACT+1 . ; ] ] ] ] VOLFRACT=VOLFRACT/ ( ( IMAX-IMIN + 1 . ) * ( UMAXJMIN+ 1 . ) * ( J PAGE 163 157 IF{WHICHMED(I, J, JJ)=1) [ VOLFRACT=VOLFRACT+ 1 ; ] ] ] ] VOLFRACT=VOLFRACT/ ( ( IMAX-IMIN+1 ) * ( JMAXJMIN+1 ) * (KMAX-KMIN+1 ) ) ; PRINT *, 'FRACTION OF MARROW IS ' , VOLFRACT; SOURCEMED=0; "SETS THE TYPE OF SOURCE DISTRIBUTION" "0Â— >BONE VOLUME" "1 Â— >MARROW VOLUME" "2-->END0STEUM (MARROW SURFACE)" "3 Â— >BONE SURFACE" TI "STEP 3 HATCH-CALL II /OUTPUT; (' CALL HATCH TO GET CROSS-SECTION DATA'); CALL HATCH;" PICK UP CROSS SECTION DATA FOR BONE AND TISSUE" DATA FILE MUST BE ASSIGNED TO UNIT 12" "set up of PRESTA stuff here so we can control step size" ECUTMN=0.512; "THE GLOBAL ECUT ( kinetic+rest mass)" IOUT=22; "Number for fortran file to output Presta parameters" EK0=10.00; "MAXIMUM ENERGY ELECTRON IN THE SIMULATION" ESTEPE=0. 02; DO J=1,$MXMED [ESTEPR{J)=ESTEPE; ] "DONOTFORGETTO SET UP ESTEPE BEFORE" $PRESTA-INPUTS; $PRESTA-INPUT-SUMMARY; " Output Presta info to output file. " ;OUTPUT AE(1)-0.511, AP ( 1 ) ; ( ' OKNOCK-ON ELECTRONS CAN BE CREATED AND ANY ELECTRON FOLLOWED DOWN TO /T40,F8.3,' MeV KINETIC ENERGY'/ ' BREM PHOTONS CAN BE CREATED AND ANY PHOTON FOLLOWED DOWN TO ' /T40, F8 . 3, ' MeV ' ) ; "COMPTON EVENTS CAN CREATE ELECTRONS AND PHOTONS BELOW THESE CUTOFFS" ff "STEP 4 INITIALIZATION-FOR-HOWFAR II "HERE YOU CAN SET UP WHATEVER YOU NEED FOR YOUR HOWFAR SUBROUTINE, " H=0.0059; YDIM=0.0078; L=0.0059; MIDVOX=128; II "STEP 5 INITIALIZATION-FOR-AUSGAB II "INITIALIZE THE VARIABLE YOU NEED FOR YOUR AUSGAB SUBROUTINE...." DO JJ=1, 120 [ DO J=l, 4 0 [ DO 1 = 1, 40 [ "DO 11=1, 4 0 [ESCORE (I, J, I I , JJ) =0 . 0 ; ] " ] ] "ZERO SCORING ARRAY BEFORE STARTING" PAGE 164 158 ENBONE(JJ)=0.0; ENMARROW(JJ)=0.0; ENDISC(JJ)=0.0; ENMARROWl (JJ) =0.0; ENMARROW2(JJ)=0.0; ENENDOST1{JJ)=0.0; ENEND0ST2 { JJ) =0.0; ] If "STEP 6 DETERMINATION-OF-INICIDENT-PARTICLE-PARAMETERS "INITIALIZATION FOR RANDOM NUMBER GENERATOR" IXX = 0; JXX = 0; ; $RNG-INITIALIZATION; "DEFINE INITIAL VARIABLES " "CAN ALSO CALL A SUBROUTINE SOURCE IF YOUR SOURCE IS COMPLICATEED . NUMRUN=120; NCASES=1000; IQIN=-1; "EIN=4 . 511; " WTIN=1.0; ENSTEP(1)=0.521 ENSTEP(2)=0.526 ENSTEP(3)=0.531 ENSTEP(4)=0.541 ENSTEP(5)=0.561 ENSTEP(6)=0. 611 ENSTEP(7)=0.711 ENSTEP(8)=1.011 ENSTEP(9)=1.511 ENSTEP(10)=2.011 ENSTEP (11) =2 . 511 ENSTEP (12) =4 . 511 "Number of run that you are going to make" "NUMBER OF PARTICLE YOU WILL FOLLOW PER RUN" "WILL START WITH ELECTRONS" "WITH INITIAL KINETIC ENERGY IN MeV" "WEIGHT = 1 SINCE NO VARIANCE REDUCTION USED" OPEN(UNIT=l,FILE='boneS=TBV.txt' ) ; DO IRUN=1,NUMRUN [ "start loop on the number of run" OUTPUT IRUN; ( 'STARTING RUN: ',14); TMPINT=NINT ( (IRUN-5. 1) /lO . ) +1; EIN=ENSTEP (TMPINT) ; DO ICNTR=1,NCASES [ "start loop on the number of particle "PRINT *, 'PARTICLE # ' , ICNTR; " "CALL YOUR SOURCE SUBROUTINE TO HAVE POSITION, DIRECTION" " AND INITIAL REGION INDEX OF YOUR STARTING PARTICLE" call SOURCE (XIN, YIN, ZIN, UIN, VIN, WIN, IRIN) ; "STEP 7 SHOWER-CALL "CALL THE SHOWER SUBROUTINE TO TRANSPORT YOUR PARTICLE...." CALL SHOWER (IQIN, EIN,XIN, YIN, ZIN, UIN, VIN, WIN, IRIN, WTIN) ; ] "end loop on the number of histories" PAGE 165 .159 ] "end loop on the number of runs..." "STEP 8 OUTPUT-OF-RESULTS "HERE YOU NEED TO CALCULATE YOUR AVERAGES, STANDARD DEVIATIONS," "AND GOVS FOR YOUR RESULTS" "THEN, YOU CAN OUTPUT YOUR RESULTS...." "NORMALIZE TO % OF TOTAL INPUT ENERGY" DO JJ=1,NUMRUN [ TMPINT=NINT { (JJ-5. 1) /lO. ) +1; EIN=ENSTEP (TMPINT) ; AN0RM=1./ ( {EIN-0.511) *FLOAT(NCASES) ) ; "TOTAL=0.0;" "DO 1=1, 4 0 [" "DO 11=1, 40 [" "DO J=l,4 0 [" "TOTAL=TOTAL+ESCORE (I, II, J, JJ) ; ] ] ] " "DO 1=10,30 [" "DO 11=10,30 [" "DO J=10, 30 [" "WRITE (1, 101) ESCORE (I, II, J, JJ) *ANORM; ] ] ] " "WRITE (1, 101) 1 . -TOTAL*ANORM; " WRITE (1,*) 'Energy=' , EIN; WRITE ( 1, * ) 'Disc, Bone, Marrow, Run= ' , JJ; WRITE (1,101) ENDISC ( JJ) *ANORM; WRITE (1,101) ENBONE ( JJ) *ANORM; WRITE (1,101) ENMARROW( JJ) *ANORM; WRITE (1, *) 'MARR0W1=' , ENMARROWl (JJ) *ANORM; WRITE (1, *) Â•MARR0W2=' , ENMARR0W2 ( JJ) *ANORM; WRITE (1, *) Â•END0ST1=' ,ENEND0ST1 (JJ) *ANORM; WRITE (1, *) 'END0ST2=' ,ENEND0ST2 (JJ) *ANORM; ] WRITE (1,*) 'Volume Fraction of Marrow'; WRITE (1,101) VOLFRACT; "WRITE (1, 101) ESCORE (20, 20, 20, 1) *ANORM; " CLOSE ( 1 ) ; 101 FORMAT (IX, Fll . 8) ; STOP; END; " *****+********+****************************+******************** " II SUBROUTINE AUSGAB ( lARG ) ; " II " IN GENERAL, AUSGAB IS A ROUTINE WHICH IS CALLED UNDER A SERIES " " OF WELL DEFINED CONDITIONS SPECIFIED BY THE VALUE OF lARG (SEE THE" " EGS4 MANUAL FOR THE LIST). THIS IS A PARTICULARILY SIMPLE AUSGAB." " WHENEVER THIS ROUTINE IS CALLED WITH IARG=3 , A PARTICLE HAS " BEEN DISCARDED BY THE USER IN HOWFAR " " WE GET AUSGAB TO PRINT THE REQUIRED INFORMATION AT THAT POINT PAGE 166 160 ; COMIN/STACK, SCORE, EPCONT, ENERGl , GEOM/ ; XVOX=IPOS (NP) ; YVOX=JPOS (NP) ; ZVOX=KPOS (NP) ; "WRITE INF0Rb4ATI0N FOR PARTICLE DISCARDED BY USER" IF (IARG=3) [ "WRITEd, 100) E (NP) ,X(NP) , Y(NP) , Z (NP) , U (NP) , V{NP) , W(NP) , IQ(NP) , IR(NP) ; " 100 FORMAT(lX,F8.5,3F6.3,3F6.3,I3,I2) ; ENDISC (IRUN) =ENDISC (IRUN) +EDEP; RETURN; ] ELSE [ IRL=IR(NP) ; "ESCORE (XVOX-108, YVOX-4 4, ZVOX-108 , IRUN) =ESCORE (XVOX-108 , YVOX-4 4 , " "ZVOX-108, IRUN) +EDEP; " IF(IRL=1) [ENBONE (IRUN) =ENBONE (IRUN) +EDEP; ] IF(IRL=2) [CALL SCORE_ENDOST; "ENMARROW (IRUN) =ENMARROW ( IRUN ) +EDEP; ] ] "PRINT *, 'EDEP=',EDEP,XVOX,YVOX,ZVOX;" "PRINT *, ES CORE ( XVOX , YVOX , Z VOX , I RUN ) ; " RETURN; END; "END OF AUSGAB" %E SUBROUTINE SCORE_ENDOST; ; COMIN/STACK, SCORE, EPCONT, ENERGl , GEOM/ ; INTEGER EDGEIPOS, EDGEINEG, EDGEJPOS , EDGEJNEG, EDGEKPOS, EDGEKNEG, SIDES; DOUBLE PRECISION PI , P2 , P3, P4 , P5 , P6, PDIST, ENDOFRACT; INTEGER WHICHMED; XVOX=I POS ( NP ) ; YVOX= JPOS ( NP ) ; ZVOX=KPOS ( NP ) ; "CHECK FOR BONE VOXEL NEIGHBORS" "DETERMINE WHERE BONE SURFACES ARE{IF THEY ARE)" EDGEIP0S=WHICHMED(XV0X+1, YVOX, ZVOX) EDGEINEG=WHICHMED(XV0X-1, YVOX, ZVOX) EDGEJPOS=WHICHMED(XVOX, YVOX+1, ZVOX) EDGEJNEG=WHICHMED (XVOX, YVOX-1, ZVOX) E DGEKPOS =WH I CHME D ( XVOX , YVOX , ZVOX + 1 ) EDGEKNEG=WHICHMED ( XVOX , YVOX , ZVOX1 ) SIDES=6-EDGEIP0S-EDGEINEG-EDGEJP0S-EDGEJNEG-EDGEKP0S-EDGEKNEG; IF(SIDES=0) [ ENMARROW ( IRUN) =ENMARROW ( IRUN) +EDEP; RETURN; ] ELSE [ "METHOD 1 JUST AVERAGES THE EDEP ACROSS THE MARROW/ENDO VOLUME FRACTION" ENDOFRACT=0.0; IF(EDGEIPOS=0) [ENDOFRACT=0.001/L; ] IF (EDGEINEG=0) [ENDOFRACT=ENDOFRACT+0 . 001/L; ] IF(EDGEJPOS=0) [ENDOFRACT=ENDOFRACT+0. 001/YDIM; ] IF(EDGEJNEG=0) [ ENDOFRACT=ENDOFRACT+0 . 00 1 / YDIM; ] IF(EDGEKPOS=0) [ENDOFRACT=ENDOFRACT+0 . 001/H; ] PAGE 167 161 IF (EDGEKNEG=0) [ ENDOFRACT=ENDOFRACT+0 . 001/H; ] ENMARROWl ( IRUN) =ENb4ARR0Wl ( IRUN) + ( 1 . -ENDOFRACT) *EDEP; ENENDOSTl (IRUN) =ENEND0ST1 (IRUN) + (ENDOFRACT) *EDEP; "METHOD 2 FINDS THE DISTANCE FROM THE BOUNDARY" /PI, P2, P3, P4, P5, P6/=l. ; IF(EDGEIPOS=0) [ Pl=( (XVOX-IDIM/2) *L+L/2.-Xl-XSHIFT) ; ] IF(EDGEINEG=0) [ P2=-l.* ( (XVOX-IDIM/2) *L-L/2.-Xl-XSHIFT) ; ] IF(EDGEJPOS=0) [ P3= ( (YVOX-JDIM/2) *YDIM+YDIM/2 . -Yl-YSHIFT) ; ] IF(EDGEJNEG=0} [ P4=-l.* ( (YVOX-JDIM/2) *YDIM-YDIM/2. -Yl-YSHIFT) ; ] IF(EDGEKPOS=0) [ P5=( (ZVOX-KDIM/2) *H+H/2 . -Zl-ZSHIFT) ; ] IF(EDGEKNEG=0) [ P6=-l.* ( (ZVOX-KDIM/2) *H-H/2 . -Zl-ZSHIFT) ; ] PDIST=DMIN1 (PI, P2, P3, P4, P5, P6) ; IF(PDIST<0.001) ["IN THE ENDOSTEUM!!" ENEND0ST2 (IRUN) =ENEND0ST2 (IRUN) +EDEP; ] ELSE ["IN THE MARROW" ENMARR0W2 ( IRUN) =ENMARR0W2 (IRUN)+EDEP; ] ] RETURN; END; %E n n SUBROUTINE HOWFAR; II It " THE FOLLOWING IS A GENERAL SPECIFICATION OF HOWFAR " GIVEN A PARTICLE AT (X,Y,Z) IN REGION IR AND GOING IN DIRECTION (U,V,W), THIS ROUTINE ANSWERS THE QUESTION, CAN THE PARTICLE GO " A DISTANCE USTEP WITHOUT CROSSING A BOUNDARY IF YES, IT MERELY RETURNS " IF NO, IT SETS USTEP=DISTANCE TO BOUNDARY IN THE CURRENT " DIRECTION AND SETS IRNEW TO THE REGION NUMBER ON THE " FAR SIDE OF THE BOUNDARY (THIS CAN BE MESSY IN GENERAL!) IT " THE USER CAN TERMINATE A HISTORY BY SETTING IDISOO. HERE WE II + + + + ; COM I N / S TACK , E PCONT , GEOM / ; ;C0MIN/ENERG1/; COMMON STACK CONTAINS X, Y, Z, U, V, W, IR AND NP (STACK POINTER)" " COMMON EPCONT CONTAINS IRNEW, USTEP AND IDISC" " COMMON GEOM CONTAINS XI, Yl, Zl, " PAGE 168 162 DOUBLE PRECISION PI , P2 , P3, P4 , P5 , P6 ; DOUBLE PRECISION DISTl; INTEGER REGNEW,WHICHMED; XI = X(NP); Yl = Y(NP); Zl = Z(NP); XX = X1*X1; YY = Y1*Y1; ZZ = Z1*Z1; UNP = U(NP); VNP = V(NP); WNP = W(NP); UU = UNP*UNP; VV = VNP*VNP; WW = WNP*WNP; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; IPNTR = IR{NP) ; XVOX=NINT (Xl/L) +IDIM/2; YVOX=NINT (Yl/YDIM) +JDIM/2; ZVOX=NINT (Zl/H) +KDIM/2; IPOS (NP) =XVOX; JPOS (NP) =YVOX; KPOS (NP) =ZVOX; "CHECK TO MAKE SURE VOXEL IS CONSISTENT WITH REGION!" IF( (WHICHMED(XV0X,YV0X,ZV0X)+1)~=IPNTR) [ PRINT *, 'ERROR', WHICHMED (XVOX, YVOX, ZVOX) +1, IPNTR; ] "PRINT *, XI, Yl, Zl, IPOS (NP) , JPOS (NP) , KPOS (NP) ; " "PRINT *, IPNTR, E (NP) ; " "CHECK TO MAKE SURE X,Y,Z AND XVOX, YVOX, ZVOX CORRESPOND" "PLANE 1" Pl=( (YVOX-JDIM/2) *YDIM+YDIM/2.-Yl) ; "PLANE 4" P4=-l.* ( (YVOX-JDIM/2) *YDIM-YDIM/2.-Yl) ; "PLANE 2" P2=( (ZVOX-KDIM/2) *H+H/2.-Zl) ; "PLANE 5" P5=-l.* ( (ZVOX-KDIM/2) *H-H/2.-Zl) ; "PLANE 3" P3=( (XVOX-IDIM/2) *L+L/2.-Xl) ; "PLANE 6" P6=-l. * ( (XVOX-IDIM/2) *L-L/2 .-XI) ; IF(P1<0 I P2<0 I P3<0 I P4<0 I P5<0 | P6<0) [PRINT *, 'ERROR IN HOWFAR' , XI, Yl, Zl, XVOX, YVOX, ZVOX, IPOS(NP), JPOS(NP), KPOS(NP);] IF(XVOX>IMAX I XVOX PAGE 169 163 IF(P5<0) [P5=5000.;] "PLANE 3" P3=( (XVOX-IDIM/2+0.5) *L-X1) /UNP; IF(P3<0) [P3=5000.;] "PLANE 6" P6=( (XVOX-IDIM/2-0.5) *L-X1) /UNP; IF(P6<0) [P6=5000.;] DIST=DMIN1 (PI, P2, P3, P4, P5, P6) ; 102 FORMAT (IX, 312) ; IF (DIST>USTEP) [ REGNEW=0 ; RETURN ; ] ELSE [ USTEP=DIST+l.d-8; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; NEWXVOX=NINT (XNXT/L) +IDIM/2; NEWYVOX=NINT (YNXT/YDIM) +JDIM/2; NEWZVOX=NINT (ZNXT/H) +KDIM/2; IF{IPNTR=2) [ IF (WHICHMED (NEWXVOX, NEWYVOX, NEWZVOX) =0) [ IRNEW=1; ] ELSE [IRNEW=2;]] ELSE [ IF (WHICHMED (NEWXVOX, NEWYVOX, NEWZVOX) =0 ) [ IRNEW=1; ] ELSE [IRNEW=2;]] ] "PRINT *, PI, P4, P2, P5, P3, P6, REGNEW; " "IF(XVOX~=20 I YVOX~=20 | ZVOX~=20) " "[PRINT *, XI, Yl, Z1,XV0X, YVOX, ZVOX; ] " RETURN; ] RETURN; END; "END OF SUBROUTINE HOWFAR" %E SUBROUTINE DIST_TO_REGION (TPERP) ; "THIS SUBROUTINE NEED TO RETURN TPERP AS THE SHORTEST DISTANCE TO ANY" "BOUNDARY" ; COMIN/STACK, GEOM/ ; ;C0MIN/ENERG1/; DOUBLE PRECISION PI , P2 , P3 , P4 , P5 , P6 ; DOUBLE PRECISION DISTl; INTEGER REGNEW; XI = X(NP); Yl = Y(NP); Zl = Z(NP); XX = X1*X1; YY = Y1*Y1; ZZ = Z1*Z1; UNP = U(NP); VNP = V(NP); WNP = W(NP); UU = UNP*UNP; VV = VNP*VNP; WW = WNP*WNP; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; PAGE 170 164 IPNTR = IR(NP) ; XVOX=NINT (Xl/L) +IDIM/2; YVOX=NINT (Yl/YDIM) +JDIM/2; ZVOX=NINT (Zl/H) +KDIM/2; IPOS (NP) =XVOX; JPOS (NP) =YVOX; KPOS (NP)=ZVOX; "PRINT *, XVOX,YVOX,ZVOX,WHICHMED(XVOX,YVOX,ZVOX) , IPNTR;" "PRINT *, X1,Y1,Z1;" "CHECK TO MAKE SURE X,Y,Z AND XVOX , YVOX , ZVOX CORRESPOND" "PLANE 1" Pl={ {YVOX-JDIM/2) *YDIM+YDIM/2.-Yl) ; "PLANE 4" P4=-l. * ( (YVOX-JDIM/2) *YDIM-YDIM/2.-Yl) ; "PLANE 2" P2=( (ZVOX-KDIM/2) *H+H/2.-Zl) ; "PLANE 5" P5=-l. * ( (ZVOX-KDIM/2) *H-H/2 .-Zl) ; "PLANE 3" P3=( (XVOX-IDIM/2) *L+L/2.-Xl) ; "PLANE 6" P6=-l. * ( (XVOX-IDIM/2) *L-L/2. -XI) ; IF(P1<0 I P2<0 I P3<0 I P4<0 I P5<0 | P6<0) [PRINT *, 'ERROR IN DIST', XI, Yl, Zl, XVOX, YVOX, ZVOX;] DIST1=DMIN1 (PI, P2, P3, P4, P5, P6) ; TPERP=DIST1; RETURN; END; "END OF SUBROUTINE DIST_TO_REGION" %E "SUBROUTINE FOR SOURCE OF PARTICLE" "**-)lr******* + **** + * + ****** + + * + ** + + + + ** + + + * / SUBROUTINE SOURCE (XIN, YIN, ZIN, UIN, VIN, WIN, IRIN) ; ; COMIN/STACK, RANDOM, GEOM, UPHIOT, ENERGl , SRCPOS/ ; REAL DMYl, DMY2, DMY3, DMY4, PHI, THETA, TMP5, PDIST, PI, P2, P3, P4, P5, P6; INTEGER WHICHMED, EDGEIPOS, EDGEINEG, EDGE JPOS , EDGE JNEG, EDGEKPOS, EDGEKNEG; INTEGER SIDES; $RANDOMSET RNGl; $RANDOMSET RNG2 ; PHI=TW0PI*RNG1; THETA=AC0S (1.-2. *RNG2 ) ; IF (SOURCEMED=0) [ S0URCEMEDIUM=1 ; ] IF(S0URCEMED=1) [ SOURCEMEDIUM=0 ; ] IF {SOURCEMED=0 | S0URCEMED=1) [ " MARROW OR BONEVOLUME SOURCE Â— " WHILE (SOURCEMED~=SOURCEMEDIUM) [ PAGE 171 165 $RANDOMSET RNG3; $RANDOMSET RNG4; $RANDOMSET RNG5; XIN=RNG3* (L+L* (IMAX-IMIN) ) -L/2( IDIM/2-IMIN) *L; YIN=RNG4* (YDIM+YDIM* (JMAX-JMIN) ) -YDIM/2( JDIM/2JMIN) *YDIM; ZIN=RNG5* (H+H* (KMAX-KMIN) ) -H/2( KDIM/2-KMIN) *H; XVOX=NINT (XIN/L) +IDIM/2; YVOX=NINT (YIN/YDIM) +JDIM/2; ZVOX=NINT (ZIN/H) +KDIM/2; "PRINT *,XIN, YIN, ZIN,XVOX, YVOX, ZVOX, WHICHMED (XVOX, YVOX, ZVOX) ; " IF(WHICHMED(XVOX, YVOX, ZVOX)=0) [ SOURCEMEDIUM=WHICHMED (XVOX, YVOX, ZVOX) ; ] ELSEIF(S0URCEMED=1) ["MARROW SOURCE=>EXCLUDE ENDOSTEUM" "CHECK FOR BONE VOXEL NEIGHBORS" "DETERMINE WHERE BONE SURFACES ARE (IF THEY ARE)" EDGEIP0S=WHICHMED(XV0X+1, YVOX, ZVOX) ; EDGEINEG=WHICHMED(XV0X-1, YVOX, ZVOX) ; EDGEJPOS=WHICHMED(XVOX, YVOX+1, ZVOX) ; EDGEJNEG=WHICHMED{XVOX, YVOX-1, ZVOX) ; EDGEKPOS=WHICHMED (XVOX, YVOX, ZVOX+1) ; EDGEKNEG=WHICHMED(XVOX, YVOX, ZVOX-1) ; SIDES=6-EDGEIP0S-EDGEINEG-EDGEJP0S-EDGEJNEG-EDGEKP0S-EDGEKNEG; IF(SIDES=0) [SOURCEMEDIUM=WHICHMED{XVOX, YVOX, ZVOX) ; ] ELSE [ /PI, P2, P3, P4, P5, P6/ = l . ; IF(EDGEIPOS=0) [ Pl=( (XVOX-IDIM/2) *L+L/2.-XIN-XSHIFT) ; ] IF(EDGEINEG=0) [ P2=-l.* ( (XVOX-IDIM/2) *L-L/2.-XIN-XSHIFT) ; ] IF(EDGEJPOS=0) [ P3=( (YVOX-JDIM/2) *YDIM+YDIM/2.-YIN-YSHIFT) ; ] IF(EDGEJNEG=0) [ P4=-l. * ( (YVOX-JDIM/2) *YDIM-YDIM/2.-YIN-YSHIFT) ; ] IF(EDGEKPOS=0) [ P5=( (ZVOX-KDIM/2) *H+H/2.-ZIN-ZSHIFT) ; ] IF(EDGEKNEG=0) [ P6=-l.* ( (ZVOX-KDIM/2) *H-H/2.-ZIN-ZSHIFT) ; ] PDIST=DMIN1 (PI, P2, P3, P4, P5, P6) ; IF(PDIST<0.001) ["IN THE ENDOSTEUM!! =>SET MEDIUM TO BONE" SOURCEMEDIUM=0; "=>PICK NEW POINT" ] ELSE ["IN THE MARROW" S0URCEMEDIUM=1; ] ] ] ELSE[S0URCEMEDIUM=1; ] PAGE 172 166 ] ] IF{S0URCEMED=2) [ " ENDOSTEUM (MARROW SURFACE) SOURCE " IF(STORE>0) [ XIN=ENDOX (STORE) ; YIN=ENDOY (STORE) ; ZIN=ENDOZ (STORE) ; ST0RE=ST0RE-1; XVOX=NINT (XIN/L) +IDIM/2; YVOX=NINT (YIN/YDIM) +JDIM/2; ZVOX=NINT (ZIN/H) +KDIM/2; ] ELSE [ EDGEIP0S=1 ; EDGEINEG=1 ; EDGE JP0S=1 ; EDGE JNEG=1 ; EDGEKP0S=1 ; EDGEKNEG=1 ; STORE=0; WHILE (EDGEIP0S=1 & EDGEINEG=1 & EDGEJP0S=1 & EDGEJNEG=1 & EDGEKP0S=1 & EDGEKNEG=1) [ S0URCEMEDIUM=1; WHILE (SOURCEMED~=SOURCEMEDIUM) [ $RANDOMSET RNG3; $RANDOMSET RNG4 ; $RANDOMSET RNG5; XVOX=NINT {RNG3* (IMAX-IMIN) +IMIN) ; YVOX=NINT (RNG4* (JMAX-JMIN) +JMIN) ; ZVOX=NINT (RNG5* (KMAX-KMIN) +KMIN) ; SOURCEMEDIUM=WHICHMED (XVOX, YVOX, ZVOX) +1; ] "DETERMINE WHERE BONE SURFACES ARE (IF THEY ARE)" EDGEIP0S=WHICHMED(XV0X+1, YVOX, ZVOX) ; EDGEINEG=WHICHMED(XV0X-1, YVOX, ZVOX) ; EDGEJPOS=WHICHMED(XVOX, YVOX+1, ZVOX) ; EDGEJNEG=WHICHMED(XVOX, YVOX-1, ZVOX) ; EDGEKPOS=WHICHMED (XVOX, YVOX, ZVOX+1) ; EDGEKNEG=WHICHMED (XVOX, YVOX, ZVOX-1) ; ] IF(EDGEIPOS=0) [ ST0RE=ST0RE+1; $RAND0MSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOX (STORE) =RNG6* ( 0 . 001 ) +L/2 . -0. 001+ (XVOX-IDIM/2 . ) *L; ENDOY (STORE) =RNG7* (YDIM) -YDIM/2 . + ( YVOXJDIM/2 . ) *YDIM; ENDOZ (STORE) =RNG8* (H) -H/2 . + ( ZVOX-KDIM/2 . ) *H; ] IF(EDGEINEG=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOX (STORE) =RNG6* (0 . 001) -L/2 .+ (XVOX-IDIM/2 . ) *L; ENDOY (STORE) =RNG7* (YDIM) -YDIM/2 .+ (YVOXJDIM/2 . ) *YDIM; ENDOZ (STORE) =RNG8* (H) -H/2 .+ (ZVOX-KDIM/2 . ) *H; ] IF(EDGEJPOS=0) [ ST0RE=ST0RE+1; PAGE 173 167 $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOY (STORE) =RNG6* ( 0 . 001 ) +YDIM/2 . -0 . 00 1+ ( YVOXJDIM/2 . ) *YDIM; ENDOX (STORE) =RNG7* (L) -L/2 . + (XVOX-IDIM/2 . ) *L; ENDOZ (STORE) =RNG8* ( H ) -H/2 . + ( ZVOX-KDIM/2 . ) *H; ] IF (EDGEJNEG=0) [ ST0RE=ST0RE+1; $RAND0MSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOY (STORE) =RNG6* ( 0 . 001 ) -YDIM/2 .+( YVOXJDIM/2 . ) *YDIM; ENDOX (STORE )=RNG7* (L) -L/2 .+ (XVOX-IDIM/2 . ) *L; ENDOZ (STORE) =RNG8* (H) -H/2 .+ (ZVOX-KDIM/2 . ) *H; ] IF(EDGEKPOS=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOZ (STORE) =RNG6* (0 . 001) +H/2 . -0 . 00 1+ ( ZVOX-KDIM/2 . ) *H; ENDOY (STORE) =RNG7* (YDIM) -YDIM/2 .+( YVOXJDIM/2 . ) *YDIM; ENDOX (STORE) =RNG8* (L) -L/2 .+ (XVOX-IDIM/2 . ) *L; ] IF (EDGEKNEG=0) [ ST0RE=ST0RE+1; $RAND0MSET RNG6; $RAND0MSET RNG7; $RANDOMSET RNG8; ENDOZ (STORE) =RNG6* ( 0 . 00 1 ) -H/2 .+{ ZVOX-KDIM/2 . ) *H; ENDOY (STORE) =RNG7* (YDIM) -YDIM/2 .+ (YVOXJDIM/2 . ) *YDIM; ENDOX (STORE) =RNG8* (L) -L/2 . + (XVOX-IDIM/2. ) *L; ] XIN=ENDOX (STORE) ; YIN=ENDOY (STORE) ; ZIN=ENDOZ (STORE) ; ST0RE=ST0RE-1; ] ] IF {S0URCEMED=3) [" BONE SURFACE SOURCE " ] ; IPOSI=XVOX; JPOSI=YVOX; KPOSI=ZVOX; IPOS (1) =XVOX; JPOS (1)=YV0X; KPOS (1)=ZV0X; NEWXV0X=XV0X ; NEWYV0X=YV0X; NEWZV0X=ZV0X; I F ( WH I CHMED ( I POS I , JPOS I , KPOS I ) =0 ) [ IRIN=1; ] IF(WHICHMED(IPOSI, JPOSI, KPOSI) =1) [ PAGE 174 168 IRIN=2; ] UIN=SIN (THETA) *COS (PHI) ; VIN=SIN (THETA) *SIN (PHI) ; WIN=COS (THETA) ; "PRINT *, 'SOURCE' ,XIN, YIN, ZIN; "PRINT *, WHICHMEDdPOSI, JPOSI,KPOSI) , XVOX, YVOX, ZVOX, IRIN; ;RETURN; END; "END OF SUBROUTINE SOURCE" %E "SUBROUTINE FOR INITIALIZATION OF RANDOM NUMBER GENERATOR " n**-Ar + **** + * + * + + *** + *** + + TlfTlfTt*Tlr**** + ** / SUBROUTINE RMARIN; t ;COMIN/RANDOM/; IF( (IXX.LE. 0) .OR. (IXX.GT. 31328) ) IXX=1802; "SETS MARSAGLIA DEFAULT" " BUG. In the following line the assignment previous to 90/09/18 " " was to IXX. This DID NOT upset the randomness of the sequence, " " just the initial starting point. BLIF 90/09/18. IF( (JXX.LE. 0) .OR. (JXX.GT. 30081) ) JXX=9373; "SETS MARSAGLIA DEFAULT" I = MOD(IXX/177, 177) + 2 J = MOD (IXX, 177) + 2 K = MOD(JXX/169, 178) + 1 L = MOD(JXX, 169) DO 11=1, 97 [ S=0.0;T=0.5; DO JJ=1, 24 [ M=MOD(MOD(I*J, 179) *K, 179) ; I=J; J=K;K=M;L=MOD(53*L+l, 169) ; IF(MOD(L*M, 64) .GE.32) S=S+T; T=0. 5*T; ] URNDM ( I I ) =S ; ] CRNDM = 362436. /16777216. , Â• CDRNDM = 7654321 . /16777216. ; CMRNDM = 16777213. /16777216. ; IXX = 97; JXX = 33; END; ; "END OF SUBROUTINE RMARIN" "SUBROUTINE FOR READING IN BINARY IMAGE" PAGE 175 169 f SUBROUTINE IMAGEREAD; ;C0MIN/ENERG1/; INTEGER tmpl; CHARACTER*! tmp; INTEGER C,XXX, YYY, ZZZ, DUMBY; INTEGER WHICHMED; INTEGER CHANGEMED; EXTERNAL WHICHMED; EXTERNAL CHANGEMED; OPENdOO, FILE=' ../../.. /600MHz_Images/human_spine_3D. raw' , ACCESS= Â• DIRECT ' , ERR=95 , FORM= ' FORMATTED ' , RECL=1 ) ; GOTO 101; 95 PRINT *, 'error opening'; 101 PRINT *, 'after open'; DO XXX=1, I DIM [ DO YYY=1,JDIM [ DO ZZZ=l,KDIM/8 [ ARRAY (XXX, YYY, ZZZ)=0; ] ] ] DO XXX=IMIN-1, IMAX+2 [ DO YYY=JMIN-1, JMAX+1 [ DO ZZZ=KMIN-1,KMAX+1 [ "PRINT *, XXX,IMIN,YYY, JMIN,ZZZ,KMIN;" C=ZZZ+ (YYY-1) *IDIM+ (XXX-1) *IDIM*JDIM; READdOO, ' (Al) ' , REC=C) tmp; tmpl=tmp; IF(tmpl.LE.-l) [ PRINT *, tmpl; ] "PRINT *, 'GOING TO THRESH';" IF(tmpl PAGE 176 170 "THIS SUBROUTINE PERFORMS A 3X3 MEDIAN FILTER IN 2 DIMENSIONS" "AND CHANGES IT TO THE MEDIUM IT SHOULD BE (0=BONE, 1=MARR0W) " II + ** + ********* + ** + ********************************************" f SUBROUTINE FILTER; IMPLICIT NONE; ;C0MIN/ENERG1, GEOM/; INTEGER lA, JA, KA, D, E, F, WHICHMED, MEDIAN, DUMMY, PASS, HOLD, IT, MEDIAN; INTEGER HOOD (27) , TMPI , TMPJ, TMPK, CHANGEMED, TMPARRAY ( 2 , 128,256) ; EXTERNAL WHICHMED; PRINT *, 'START FILTER' , SIZE; "PRINT *, IMIN, JMIN, KMIN; HOOD (0) =0; IF(SIZE=9) [ "***THIS IS THE 2D FILTER*********************" DO IA=IMIN, IMAX [ DO JA=JMIN, JMAX [ DO KA=KMIN,KMAX [ DO D=l,3 [ DO E=0,2 [ HOOD ( D+3*E) =WHICHMED ( lA, JA+D-2 , KA+E-1) ; ] ] DO PASS=1,SIZE [ DO IT=0,SIZE-1 [ IF{HOOD{IT) > H00D(IT+1)) [ , . HOLD=HOOD{IT) ; H00D(IT)=H00D{IT+1) ; H00D(IT+1) =HOLD; > ' A'-J [ MEDIAN=HOOD (NINT (SIZE/2 . ) ) ; DUMMY=CHANGEMED ( lA, JA, KA, MEDIAN ) ; ] ] ] ] ; IF{SIZE=27) [ "***THIS IS THE 3D FILTER*******************" FOR IA=IMIN TO IMAX+2 [ FOR JA=JMIN TO JMAX [ FOR KA=KMIN TO KMAX [ "PRINT *, lA, IMIN, JA, JMIN, KA, KMIN; DO D=l, 3 [ DO E=0, 2 [ DO F=0,2 [ TMPI=IA+D-2; TMPJ=JA+E-1; TMPK=KA+F-1; HOOD (D+3*E+9*F) =WHICHMED (TMPI , TMPJ, TMPK) ; "PRINT *, 'DEF',D,E,F;" ] ] ] "DO D=l,27 [PRINT *,HOOD(D);]" DO PASS=1,SIZE [ DO IT=0,SIZE-1 [ PAGE 177 171 IF{HOOD(IT) > H00D{IT+1)) [ HOLD=HOOD{IT) ; H00D(IT)=H00D(IT+1) ; H00D(IT+1)=H0LD; ] ] ] "PRINT *, ' FILTER' ; " "DO D=l,27 [PRINT * , HOOD ( D) ; ] " "PRINT *, VOLFRACT, NINT { ( 1 . -VOLFRACT) * (SIZE+1 . ) ) ; " "MEDIAN=HOOD(NINT { (1 .-VOLFRACT) * (SIZE+1 .)));" MEDIAN=H00D(14) ; "PRINT *, MEDIAN, HOOD (13) , HOOD (14) ; IF(IA>IMIN+1) [ DUMMY=CHANGEMED(IA-2, JA,KA,TMPARRAY(MOD( (IA-2) , 2 . ) , JA, KA) ) ; ] TMPARRAY(MOD(IA, 2. ) , JA, KA) =MEDIAN; ] ] ] ] ; /RETURN; END; %E; "FUNCTION WHICHMED" "THIS FUNCTION RETURNS THE CURRENT MEDIUM OF THE X,Y,Z LOCATION" "NOTE THAT THE MEDIUM IS STORED AS 1 OR 0 ALLOWING FOR BITWISE" "STORAGE" INTEGER FUNCTION WHICHMED (XXXX, YYYY, ZZZZ) ; INTEGER MEDIUM, ARRAYINDEX, BITINDEX, XXXX, YYYY, ZZZZ; BYTE MASK; ;C0MIN/ENERG1/; ARRAYINDEX=ZZZZ/8 . ; BITINDEX=MOD(ZZZZ, 8 . ) ; "PRINT *, 'IN WHICHMED';" MASK=1; MASK=LSHIFT (MASK, BITINDEX) ; "PRINT *, MASK, BITINDEX; " "PRINT *, ARRAYINDEX, ARRAY (XXXX, YYYY, ARRAYINDEX) ; " MEDIUM=AND (ARRAY (XXXX, YYYY, ARRAYINDEX) ,MASK) ; IF(MEDIUM>0.or.MEDIUM=-128) [ "-128 is when bitindex=7" MEDIUM=1; ] ELSE [MEDIUM=0;] "PRINT *, MEDIUM;" WHICHMED=MEDIUM; "PRINT *, 'LEAVING WHICHMED';" RETURN; END; iÂ» + * + + + + + + + + + * + + + + + + + * + * + + * + + + II "FUNCTION CHANGEMED" "THIS FUNCTION READS THE CURRENT MEDIUM OF THE X,Y,Z LOCATION" "AND CHANGES IT TO THE MEDIUM IT SHOULD BE (0=BONE, 1=MARR0W) " I ******* + * + ********************* + * + **** + ************ + ********* II INTEGER FUNCTION CHANGEMED (XXXX, YYYY, ZZZZ, MED) ; PAGE 178 172 INTEGER MEDIUM, ARRAYINDEX, BITINDEX, XXXX, YYYY, ZZZZ, MED, WHICHMED; BYTE MASK; ;C0MIN/ENERG1/; EXTERNAL WHICHMED; "PRINT *, 'IN CHANGEMED';" ARRAYINDEX=ZZZZ/8 . ; BITINDEX=M0D(ZZZZ,8. ) ; "PRINT *, 'IN CHANGEMED' , XXXX, YYYY, ZZZZ, TOMED; " IF(MED.eq.l .and. WHICHMED (XXXX, YYYY, ZZZZ ). eq . 0 ) [ MASK=1; MASK=LSHIFT (MASK, BITINDEX) ; ARRAY (XXXX, YYYY, ARRAYINDEX) =0R (ARRAY (XXXX, YYYY, ARRAYINDEX) , MASK) ; ] ELSEIF(MED.eq.O .and. WHICHMED (XXXX, YYYY, ZZZZ) . eq. 1) [ MASK=1; MASK=LSHIFT (MASK, BITINDEX) ; MASK=NOT (MASK) ; ARRAY (XXXX, YYYY, ARRAYINDEX) =AND (ARRAY (XXXX, YYYY, ARRAYINDEX) , MASK) ; ] CHANGEMED=1; RETURN; END; PAGE 179 APPENDIX D INFINITE TRABECULAR BONE EGS4 USER CODE %L %E UNDENT M 4; "INDENT EACH MORTRAN NESTING LEVEL BY 4" ! INDENT F 2; "INDENT EACH FORTRAN NESTING LEVEL BY 2" "This line is 80 characters long, use it to set up the screen width" "234 5678 91 1234 5678 91 12345678 911234 5678 91 123456789 | 123456789 | 123456789 | 1 23456789" " HERE YOU NEED TO DESCRIBE WHAT IS DOING YOUR PROGRAM. ... " " NEED TO PUT WHAT INPUT FILE YOU USE, WHAT OUTPUT FILE YOU WRITE " " AND THE REGION INDEX THAT YOU ARE USING.... "STEP 1: USER-0VERRIDE-0F-EGS4-MACR0S REPLACE {$MXMED} WITH {2} "only 2 media in the problem (default 10)" REPLACE {$MXREG} WITH {3} "only 3 geometric regions (default 2000)" REPLACE {$MXSTACK} WITH {50} "less than 16 particles on stack at once" "REPLACE FOR PRESTA" REPLACE {$STAT} WITH {1} REPLACE {$MXDATA} WITH {2} REPLACE { $CALL-HOWNEAR (TPERP) } WITH {CALL DIST_TO_REGION ( TPERP ) ; } "DEFINE A COMMON TO PASS INFORMATION TO THE GEOMETRY ROUTINE HOWFAR" REPLACE { ;COMIN/GEOM/; } WITH { ; COMMON/GEOM/Xl, Yl, Zl, UNP, VNP, WNP, UU, VV, WW, XNXT, YNXT, ZNXT,XX, YY, ZZ, VOLFRACT, XSHIFT, YSHIFT, ZSHIFT, XVOX, YVOX, ZVOX, SOURCEMED, NEWXVOX, NEWYVOX, NEWZVOX, MIDVOX; D'OUBLE PRECISION XI , Yl , Zl , UNP, VNP, WNP, UU, VV, WW, XNXT, YNXT, ZNXT, XX, YY, ZZ, VOLFRACT, XSHIFT, YSHIFT, ZSHIFT; INTEGER XVOX, YVOX, ZVOX, SOURCEMED, NEWXVOX, NEWYVOX, NEWZVOX, MIDVOX ; } "DEFINE A COMMON TO PASS INFORMATION FOR YOUR VARIABLE TRACKING IN " "AUSGAB" REPLACE { ;COMIN/SRCPOS/; } WITH { ; COMMON/SRCPOS/STORE, ENDOX { 6) , ENDOY ( 6) , ENDOZ (6) ; INTEGER STORE; DOUBLE PRECISION ENDOX, ENDOY, ENDOZ ; } 173 PAGE 180 174 REPLACE { ;COMIN/SCORE/; } WITH { ;COMMON/SCORE/ESCORE (40, 40, 40, 10) , ENDISC (120) , ENBONE(120) , ENMARROW ( 1 2 0 ) ,ENSTEP(12) , ENMARROWl (120) , ENMARR0W2 (120) , ENENDOSTl (120) , ENEND0ST2 (120) ; DOUBLE PRECISION ESCORE, ENDISC, ENBONE, ENMARROW, ENSTEP, ENMARROWl , ENMARR0W2 , ENENDOSTl, ENEND0ST2; } REPLACE { ;C0MIN/ENERG1/; } WITH { ;C0MM0N/ENERG1/IRUN,EL00P, ESUM, YDIM, H, L, ARRAY, IMIN, IMAX, JMIN, JMAX, KMIN, KMAX, IDIM, JDIM, KDIM, SIZE, THRESH; DOUBLE PRECISION ESUM, YDIM, H, L; BYTE ARRAY(256, 128, 32) ; INTEGER ELOOP, IRUN, SIZE, IMIN, IMAX, JMIN, JMAX, KMIN, KMAX, IDIM, JDIM, KDIM; INTEGER THRESH; } REPLACE { ;COMIN/STACK/; } WITH { ;COMMON/STACK/$LGN(E,X, Y, Z,U, V, W, DNEAR, WT, IQ, IR, LATCH ($MXSTACK) ) ,LATCHI,NP, $LGN (IPOS, JPOS, KPOS ($MXSTACK) ) , $LGN (TOTALISHIFT, TOTALJSHIFT, TOTALKSHIFT ($MXSTACK) ) , IPOSI, JPOSI, KPOSI; DOUBLE PRECISION E, X, Y, Z, U, V, W, DNEAR; REAL WT; INTEGER IPOS, JPOS, KPOS, TOTALISHIFT, TOTALJSHIFT, TOTALKSHIFT, IPOSI, JPOSI, KPOSI; INTEGER NP, LATCHI, IQ, IR, LATCH; } REPLACE { ;COMIN/EPCONT/; } WITH { ; COMMON/EPCONT/EDEP, TSTEP, TUSTEP, USTEP, TVSTEP, VSTEP, RHOF, FOLD, ENEW, EKE, ELKE,BETA2,GLE,TSCAT, IDISC, IROLD, IRNEW, lAUSFL ($MXAUS) ; DOUBLE PRECISION EDEP, TSTEP, TUSTEP, USTEP, TVSTEP, VSTEP, RHOF, EOLD, ENEW, ELKE, BETA2, GLE, TSCAT; } REPLACE {$TRANSFERPROPERTIESTO#FROM#; } WITH {X{P1}=X{P2} ; Y{P1}=Y{P2} ; Z{P1}=Z{P2} ; IR{P1)=IR{P2} ; WT(P1}=WT{P2} ; DNEAR { PI } =DNEAR { P2 } ; LATCH { PI } =LATCH { P2 } ; IP0S{P1}=IP0S{P2}; JPOS { PI }= JPOS { P2 } ; KP0S{P1}=KP0S{P2} ; TOTALISHIFT { PI }=TOTALISHIFT{ P2} ; TOTALJSHIFT { PI }=TOTALJSHIFT{ P2 } ; TOTALKSHIFT { PI } =TOTALKSHIFT { P2 } ; } "HERE YOU NEED TO DEFINE YOU RANDOM NUMBER GENERATOR: " A commonly used random number generator is Ranmar: n If PAGE 181 " Ranmar is a long sequence RNG by Marsaglia and Zaman. " " It is a pseudo random number generator returning a single precision" " real number between 0 (inclusive) and 1 (exclusive) . " " The cycle length of this generator is 2**144 " " Initialization sunroutine rmarin is required " " This rng is described in: " " 'A review of pseudorandom number generators by F James' " " in publication dd/88/22 from the CERN data handling division " REPLACE { ;COMIN/RANDOM/; } WITH { ; common /randomm/urndm ( 97 ) , crndm, cdrndm, cmrndm, ixx, jxx; double precision urndm, crndm, cdrndm, cmrndm, r4opt ; integer ixx, jxx; } REPLACE {$RNG-INITIALIZATION; } WITH {;call rmarin;} t REPLACE { $COMMON-RANDOM-DECLARATION-IN-BLOCK-DATA; } WITH { ;COMIN/RANDOM/; } REPLACE {$RANDOMSET#; } WITH { r4opt = urndm{ixx) urndm(jxx); IF(r4opt < 0) r4opt = r4opt + 1; urndm (ixx) = r4opt; ixx = ixx 1; IF (ixx = 0) ixx =97; jxx = jxx 1; IF (jxx = 0) jxx = 97; ' crndm = crndm cdrndm; IF (crndm < 0) crndm = crndm + cmrndm; r4opt = r4opt crndm; IF(r4opt < 0) r4opt = r4opt + 1; {PI} = r4opt; } "YOU CAN DEFINE SOME MACROS FOR OUTPUT, OR FOR GEOMETRY TRACKING...." "will output to the file unit 22." REPLACE {;OUTPUT22#;#; } WITH { ; {SETR A =@LG} ;WRITE(22, {COPY A}) {PI}; {COPY A} FORMAT { P2 } ; } "HERE NEED TO DEFINE THE COMMON FOR THE MAIN PROGRAM " "USING THE COMIN MACRO DEFINE IN EGS4" " BOUNDS CONTAINS ECUT AND PCUT" " GEOM PASSES INFO TO OUR HOWFAR ROUTINE" " MEDIA CONTAINS THE ARRAY MEDIA" " MISC CONTAINS MED" " THRESH CONTAINS AE AND AP" " ENERGl PASSES INFO TO THE AUGAB ROUTINE" ;COMIN/BOUNDS, GEOM, MEDIA, MISC, SCORE, THRESH, ENERGl, USER, USEFUL, RANDOM/; "NOTE ; BEFORE COMIN" ;COMIN/ELECIN/; INTEGER II, JJ, WHICHMED, TMPINT; PAGE 182 176 DOUBLE PRECISION VOLFRACT; "STEP 2 PRE-HATCH-CALL-INITIALIZATION $TYPE TEMP(24,2) /$S ' BONE ' , 20* ' ', $S 'MARROW , 18* ' ' / ; "PLACE MEDIUM NAME IN AN ARRAY" " $S IS A MORTRAN MACRO TO EXPAND STRINGS" " $TYPE IS INTEGER(F4) OR CHARACTER*4 (F77)" " DEPENDING ON THE EGS4 VERSION BEING USED" "IN ORDER TO MATCH THE TYPE OF MEDIA" NMED= $MXMED; "Set number of mediums." NREG = $MXREG; "Set number of regions." DO J = 1,NMED [ DO 1=1 , 2 4 [MEDIA ( I , J) =TEMP { I , J) ; ] ] "THIS IS TO AVOID A DATA STATEMENT FOR" " A VARIABLE IN COMMON" "DUNIT DEFAULT TO 1, I.E. WE WORK IN CM" DO J=l,l [MED(J)=1; "BONE IN REGION 1 AND "] DO J=2,3 [MED (J) =2; "MARROW IN REGION 2 AND 3"] /ECUT (1) , ECUT (2) / = 0.512; "Terminate electron histories at 1 keV" /PCUT (1) , PCUT (2) / = 0.001; "Terminate photon histories at 1 keV" ONLY NEEDED FOR REGIONS 1&2 SINCE NO TRANSPORT ELSEWHERE" " ECUT IS TOTAL ENERGY IN MEV " "READ IN IMAGE" n IDIM=256; JDIM=128; KDIM=256; IMIN=55; JMIN=10; KMIN=60; IMAX=195; JMAX=110; KMAX=200; THRESH=61; CALL IMAGEREAD; VOLFRACT=0.0; DO I=IMIN,IMAX [ DO J=JMIN,JMAX [ DO JJ=KMIN,KMAX [ IF(WHICHMED(I, J, JJ)=1) V0LFRACT=V0LFRACT+1 ; ] ] VOLFRACT=VOLFRACT/ ( ( IMAX-IMIN+1 ) * { UMAXJMIN+1 ) * ( fCMAX-KMIN+ 1 ) ) ; PRINT *, 'FRACTION OF MARROW IS ', VOLFRACT; SIZE=27; "SET TO 9 FOR 2D, 27 FOR 3D" CALL FILTER; "RUNS 2D OR 3D MEDIAN FILTER" PAGE 183 177 VOLFRACT=0.0; DO I=IMIN,IMAX [ DO J=JMIN,JMAX [ DO JJ=KMIN,KMAX [ IF(WHICHMED(I, J, JJ)=1) [ VOLFRACT=VOLFRACT+ 1 ; ] ] ] ] VOLFRACT=VOLFRACT/ ( ( IMAX-IMIN+1 ) * ( JMAXJMIN+1 ) * ( KMAX-KMIN+1 ) ) ; PRINT *, 'FRACTION OF MARROW IS ' , VOLFRACT; SOURCEMED=0; "SETS THE TYPE OF SOURCE DISTRIBUTION" "0-->BONE VOLUME (TBV)" "1 Â— >MARROW VOLUME (TMS)" "2 Â— >ENDOSTEUM (MARROW SURFACE) (TBS)" "3-->B0NE SURFACE" f I "STEP 3 HATCH-CALL II _ /OUTPUT; (' CALL HATCH TO GET CROSS-SECTION DATA' ) ; CALL HATCH;" PICK UP CROSS SECTION DATA FOR BONE AND TISSUE" DATA FILE MUST BE ASSIGNED TO UNIT 12" "set up of PRESTA stuff here so we can control step size" ECUTMN=0.512; "THE GLOBAL ECUT ( kinetic+rest mass)" IOUT=22; "Number for fortran file to output Presta parameters" EK0=10.00; "MAXIMUM ENERGY ELECTRON IN THE SIMULATION" ESTEPE=0 . 02; DO J=1,$MXMED [ESTEPR{ J) =ESTEPE; ] "DONOTFORGETTO SET UP ESTEPE BEFORE" $PRESTA-INPUTS; $PRESTA-INPUT-SUMMARY; " Output Presta info to output file. " ;OUTPUT AE(1)-0.511, AP ( I ) ; ( ' OKNOCK-ON ELECTRONS CAN BE CREATED AND ANY ELECTRON FOLLOWED DOWN TO /T40,F8.3,' MeV KINETIC ENERGY'/ ' BREM PHOTONS CAN BE CREATED AND ANY PHOTON FOLLOWED DOWN TO ' /T40, F8 . 3, ' MeV ' } ; "COMPTON EVENTS CAN CREATE ELECTRONS AND PHOTONS BELOW THESE CUTOFFS" If "STEP 4 INITIALIZATION-FOR-HOWFAR 11 "HERE YOU CAN SET UP WHATEVER YOU NEED FOR YOUR HOWFAR SUBROUTINE, " "H=0. 001; "YDIM=0.001; "L=0.001; H=0.0059; YDIM=0.0078; L=0.0059; MIDVOX=I28; PAGE 184 178 "STEP 5 INITIALIZATION-FOR-AUSGAB II "INITIALIZE THE VARIABLE YOU NEED FOR YOUR AUSGAB SUBROUTINE...." DO JJ=1, 120 [ DO J=l, 40 [ DO 1=1, 40[ "DO 11=1, 4 0 [ESCORE (I, J, II, JJ) =0 . 0; ] "] ] "ZERO SCORING ARRAY BEFORE STARTING" ENBONE{JJ)=0.0; ENMARROW{JJ)=0. 0,Â• ENDISC(JJ)=0.0; EN^4ARROW1 ( JJ) =0 . 0; ENMARR0W2 (JJ)=0.0; ENENDOSTl ( JJ) =0.0; ENENDOST2(JJ)=0.0; ] II "STEP 6 DETERMINATION-OF-INICIDENT-PARTICLE-PARAMETERS If "INITIALIZATION FOR RANDOM NUMBER GENERATOR IXX = 0; JXX = 0; ; $RNG-INITIALIZATION; "DEFINE INITIAL VARIABLES " "CAN ALSO CALL A SUBROUTINE SOURCE IF YOUR SOURCE IS COMPLICATEED . NUMRUN=120; NCASES=1000; IQIN=-1; "EIN=0.521; " WTIN=1 . 0; ENSTEP(1)=0.521 ENSTEP{2)=0.526 ENSTEP(3)=0.531 ENSTEP(4)=0.541 ENSTEP(5)=0.561 ENSTEP(6)=0.611 ENSTEP{7)=0.711 ENSTEP{8)=1.011 ENSTEP(9)=1.511 ENSTEP(10)=2.011 ENSTEP(11)=2.511 ENSTEP(12)=4.511 "Number of run that you are going to make" "NUMBER OF PARTICLE YOU WILL FOLLOW PER RUN" "WILL START WITH ELECTRONS" "WITH INITIAL KINETIC ENERGY IN MeV" "WEIGHT = 1 SINCE NO VARIANCE REDUCTION USED" 0PEN(UNIT=1, FILE='inf_S=TBV.txt' ) ; DO IRUN=1, NUMRUN [ "start loop on the number of run" OUTPUT IRUN; (' STARTING RUN: ',14); TMPINT=NINT ( (IRUN-5. 1) /lO. ) +1; EIN=ENSTEP (TMPINT) ; DO ICNTR=1,NCASES [ "start loop on the number of particle" "PRINT *, 'PARTICLE # ' , ICNTR; " "CALL YOUR SOURCE SUBROUTINE TO HAVE POSITION, DIRECTION" " AND INITIAL REGION INDEX OF YOUR STARTING PARTICLE" call SOURCE (XIN, YIN, ZIN, UIN, VIN,WIN, IRIN) ; PAGE 185 179 "STEP 7 SHOWER-CALL If "CALL THE SHOWER SUBROUTINE TO TRANSPORT YOUR PARTICLE...." CALL SHOWER (IQIN,EIN,XIN, YIN, ZIN, UIN, VIN,WIN, IRIN,WTIN) ; ] "end loop on the number of histories" ] "end loop on the number of runs..." STEP 8 OUTPUT-OF-RESULTS "HERE YOU NEED TO CALCULATE YOUR AVERAGES, STANDARD DEVIATIONS," "AND GOVS FOR YOUR RESULTS" "THEN, YOU CAN OUTPUT YOUR RESULTS. ..." "NORMALIZE TO % OF TOTAL INPUT ENERGY" DO JJ=1,NUMRUN [ TMPINT=NINT( ( JJ-5 . 1) /lO . ) +1; EIN=ENSTEP (TMPINT) ; AN0RM=1 . / ( (EIN-0. 511) *FLOAT (NCASES) ) ; "TOTAL=0.0; " "DO 1=1,4 0 [" "DO 11=1, 40 [" "DO J=l, 40 [" "TOTAL=TOTAL+ESCORE (I, II, J, JJ) ; ] ] ] " "DO 1=10,30 [" "DO 11=10,30 [" "DO J=10,30 [" "WRITE (1, 101) ESCORE (I, II, J, JJ) *ANORM; ] ] ] "WRITE (1,101) 1. TOTAL* ANORM ; " WRITE (1,*) 'Energy=' ,EIN; WRITE (1, *) ' Disc, Bone, Marrow, Run= ' , JJ; WRITE (1,101) ENDISC ( JJ) *ANORM; WRITE (1,101) ENBONE (JJ) *ANORM; WRITE(1,101) ENMARROW(JJ) * ANORM; WRITE (1, *) 'MARR0W1=' , ENMARROWl (JJ) *ANORM; WRITE (1, *) 'MARR0W2=' , ENMARR0W2 ( JJ) * ANORM; WRITE ( 1 , * ) ' END0ST1= ' , ENENDOSTl ( JJ) *AN0RM; WRITE (1, *) 'END0ST2=' , ENEND0ST2 ( JJ) *ANORM; ] WRITE (1,*) 'Volume Fraction of Marrow'; WRITE (1,101) VOLFRACT; "WRITE (1, 101) ESCORE (20, 20, 20, 1) *ANORM; " CLOSE (1) ; 101 FORMAT (IX, Fl 1.8) ; STOP; END; SUBROUTINE AUSGAB ( lARG) ; n PAGE 186 180 " IN GENERAL, AUSGAB IS A ROUTINE WHICH IS CALLED UNDER A SERIES " OF WELL DEFINED CONDITIONS SPECIFIED BY THE VALUE OF lARG (SEE THE" " EGS4 MANUAL FOR THE LIST). THIS IS A PARTICULARILY SIMPLE AUSGAB." " WHENEVER THIS ROUTINE IS CALLED WITH IARG=3 , A PARTICLE HAS " BEEN DISCARDED BY THE USER IN HOWFAR " WE GET AUSGAB TO PRINT THE REQUIRED INFORMATION AT THAT POINT If Uicic-k*****************************************************************" ;COMIN/STACK, SCORE, EPCONT, ENERGl , GEOM/ ; XVOX=IPOS (NP) ; YVOX=JPOS (NP) ; ZVOX=KPOS (NP) ; "WRITE INFORMATION FOR PARTICLE DISCARDED BY USER" IF (IARG=3) [ "WRITE (1, 100) E (NP) ,X(NP) , Y(NP) , Z (NP) , U (NP) , V (NP) , W (NP) , IQ (NP) , IR(NP) ; " 100 FORMAT (IX, F8 . 5, 3F6. 3, 3F6. 3, 13, 12) ; ENDISC (IRUN)=ENDISC (IRUN) +EDEP; RETURN; ] ELSE [ IRL=IR(NP) ; " E S CORE ( X VOX108, Y VOX -44,ZVOX-108,IRUN)=ESCORE(XVOX-108, Y VOX -44," "ZVOX-108, IRUN) +EDEP; " IF(IRL=1) [ENBONE (IRUN) =ENBONE { IRUN ) +EDEP; ] IF(IRL=2) [CALL SCORE_ENDOST ; "ENMARROW ( IRUN) =ENMARROW (IRUN) +EDEP; ] ] "PRINT *, 'EDEP=' ,EDEP,XVOX, YVOX, ZVOX; " "PRINT *, ESCORE (XVOX, YVOX, ZVOX, IRUN) ; " RETURN; END; "END OF AUSGAB" %E SUBROUTINE SCORE_ENDOST; ; COMIN/STACK, SCORE, EPCONT, ENERGl , GEOM/ ; INTEGER EDGEIPOS, EDGEINEG, EDGEJPOS, EDGEJNEG, EDGEKPOS, EDGEKNEG, SIDES; DOUBLE PRECISION PI , P2 , P3, P4 , P5 , P6, PDIST, ENDOFRACT; INTEGER WHICHMED; XVOX=IPOS (NP) ; YVOX=JPOS (NP) ; ZVOX=KPOS (NP) ; "CHECK FOR BONE VOXEL NEIGHBORS" "DETERMINE WHERE BONE SURFACES ARE (IF THEY ARE)" EDGEIP0S=WHICHMED(XV0X+1, YVOX, ZVOX) ; EDGEINEG=WHICHMED(XV0X-1, YVOX, ZVOX) ; EDGEJPOS=WHICHMED(XVOX, YVOX+1, ZVOX) ; EDGEJNEG=WHICHMED (XVOX, YVOX-1, ZVOX) ; EDGEKPOS=WHICHMED (XVOX, YVOX, ZVOX+1 ) ; EDGEKNEG=WHICHMED (XVOX, YVOX, ZVOX-1) ; SIDES=6-EDGEIP0S-EDGEINEG-EDGEJP0S-EDGEJNEG-EDGEKP0S-EDGEKNEG; IF(SIDES=0) [ ENMARROW ( IRUN) =ENMARROW ( IRUN) +EDEP; RETURN; ] ELSE [ PAGE 187 181 'METHOD 1 JUST AVERAGES THE EDEP ACROSS THE MARROW/ENDO VOLUME FRACTION" ENDOFRACT=0 . 0; IF(EDGEIPOS=0) IF(EDGEINEG=0) IF(EDGEJPOS=0) IF(EDGEJNEG=0) IF(EDGEKPOS=0) [ENDOFRACT=0.001/L; ] [ENDOFRACT=ENDOFRACT+0. 001/L; ] [ENDOFRACT=ENDOFRACT+0 . 001/YDIM; [ENDOFRACT=ENDOFRACT+0 . 001/YDIM; [ENDOFRACT=ENDOFRACT+0 . 001/H; ] IF {EDGEKNEG=0) [ENDOFRACT=ENDOFRACT+0 . 001/H; ] ENMARROWl ( IRUN) =ENMARR0W1 ( IRUN) + ( 1 . -ENDOFRACT ) *EDEP; ENENDOSTl ( IRUN) =ENEND0ST1 (IRUN)+ (ENDOFRACT) *EDEP; "METHOD 2 FINDS THE DISTANCE FROM THE BOUNDARY" /PI, P2, P3, P4, P5, P6/=l . ; IF(EDGEIPOS=0) [ Pl= { {XVOX-IDIM/2-TOTALISHIFT (NP) ) *L+L/2 . -Xl-XSHIFT) ; ] IF(EDGEINEG=0) [ P2=-l . * ( (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L-L/2 . -Xl-XSHIFT) ; ] IF(EDGEJPOS=0) [ P3= ( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM+YDIM/2 . -Yl-YSHIFT) ; ] IF{EDGEJNEG=0) [ P4=-l.* ( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM-YDIM/2 . -Yl-YSHIFT) ; ] IF(EDGEKPOS=0) [ P5= { (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H+H/2 . -Zl-ZSHIFT) ; ] IF(EDGEKNEG=0) [ P6=-l.*( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H-H/2 . -Zl-ZSHIFT) ; ] PDIST=DMIN1 (PI, P2, P3, P4, P5, P6) ; IF(PDIST<0.001) ["IN THE ENDOSTEUM!!" ENEND0ST2 ( IRUN) =ENEND0ST2 (IRUN) +EDEP; ] ELSE ["IN THE MARROW" ENMARR0W2 ( IRUN) =ENMARR0W2 (IRUN) +EDEP; ] ] RETURN; END; %E "*********************************************************************" " n SUBROUTINE HOWFAR; " It " THE FOLLOWING IS A GENERAL SPECIFICATION OF HOWFAR " " GIVEN A PARTICLE AT (X,Y,Z) IN REGION IR AND GOING IN DIRECTION " (U,V,W), THIS ROUTINE ANSWERS THE QUESTION, CAN THE PARTICLE GO A DISTANCE USTEP WITHOUT CROSSING A BOUNDARY " " IF YES, IT MERELY RETURNS " " IF NO, IT SETS USTEP=DISTANCE TO BOUNDARY IN THE CURRENT " " DIRECTION AND SETS IRNEW TO THE REGION NUMBER ON THE " FAR SIDE OF THE BOUNDARY (THIS CAN BE MESSY IN GENERAL!) " PAGE 188 182 THE USER CAN TERMINATE A HISTORY BY SETTING IDISOO. HERE WE "***+************************************************************* ; COMIN/STACK, EPCONT , GEOM/ ; ;C0MIN/ENERG1/; " COMMON STACK CONTAINS X, Y, Z, U, V, W, IR AND NP (STACK POINTER)" " COMMON EPCONT CONTAINS IRNEW, USTEP AND IDISC" " COMMON GEOM CONTAINS XI, Yl, Zl, " DOUBLE PRECISION PI , P2 , P3 , P4 , P5 , P6 ; DOUBLE PRECISION DISTl; INTEGER REGNEW, WHICHMED; XI = X(NP); Yl = Y(NP); Zl = Z(NP); XX = X1*X1; YY = Y1*Y1; ZZ = Z1*Z1; UNP = U(NP); VNP = V{NP); WNP = W(NP); UU = UNP*UNP; VV = VNP*VNP; WW = WNP*WNP; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; IPNTR = IR(NP) ; XVOX=NINT ( (X1"+XSHIFT") /L) +IDIM/2+T0TALISHIFT (NP) ; YVOX=NINT ( {Y1"+YSHIFT") /YDIM) + JDIM/2+TOTALJSHIFT (NP) ZVOX=NINT ( {Z1"+ZSHIFT") /H ) +KDIM/2+T0TALKSHIFT (NP) ; IPOS (NP)=XVOX; JPOS (NP)=YVOX; KPOS (NP)=ZVOX; "CHECK TO MAKE SURE VOXEL IS CONSISTENT WITH REGION#" IF( (WHICHMED (XVOX, YVOX, ZVOX) +1) ~=IPNTR) [ PRINT *, 'ERROR', WHICHMED (XVOX, YVOX, ZVOX) +1, IPNTR; "PRINT *, XSHIFT, YSHIFT, ZSHIFT; PRINT *, X1,Y1,Z1; PRINT *, XVOX, YVOX, ZVOX;] "PRINT *, IPOS (NP) , JPOS (NP) , KPOS (NP) , IPNTR; "PRINT *, XI, Yl, Z1,E (NP) ; " "CHECK TO MAKE SURE X,Y,Z AND XVOX, YVOX, ZVOX CORRESPOND" "PLANE 1" Pl=( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM+YDIM/2 . -Y1"-YSHIFT" ) ; "PLANE 4" P4=-l . * ( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM-YDIM/2 . -Y1"-YSHIFT" ) ; "PLANE 2" P2= ( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H+H/2 . -Zl "-ZSHIFT" ) ; "PLANE 5" P5=-l.* ( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H-H/2 . -Zl "-ZSHIFT" ) ; "PLANE 3" P3={ (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L+L/2 . -XI "-XSHIFT" ) ; "PLANE 6" P6=-l. * ( (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L-L/2 . -XI "-XSHIFT" ) ; IF(P1<0 I P2<0 I P3<0 I P4<0 I P5<0 | P6<0) [PRINT *, 'ERROR IN HOWFAR', XI, Yl, Zl, XVOX, YVOX, ZVOX, IPOS(NP), JPOS(NP), KPOS{NP);] IF(XVOX>IMAX I XVOX PAGE 189 183 "PRINT *, XI, Yl, Zl, XVOX, YVOX, ZVOX; "PRINT *, WHICHMED (XVOX, YVOX, ZVOX) +1; ] IF(IPNTR=1 I IPNTR=2) [ "PLANE 1" Pl= ( ( YVOX-JDIM/2-TOTALJSHIFT (NP) +0 . 5) *YDIM-Y1"-YSHIFT" ) /VNP; IF(P1<0) [Pl=5000.;] "PLANE 4" P4= ( (YVOX-JDIM/2-TOTALJSHIFT (NP) -0 . 5) *YDIM-Y1"-YSHIFT" ) /VNP; IF(P4<0) [P4=5000.;] "PLANE 2" P2=( (ZVOX-KDIM/2-TOTALKSHIFT (NP) +0.5) *H-Z1"-ZSHIFT") /WNP; IF(P2<0) [P2=5000.;] "PLANE 5" P5= { (ZVOX-KDIM/2-TOTALKSHIFT (NP) -0.5) *H-Z1"-ZSHIFT") /WNP; IF(P5<0) [P5=5000.;] "PLANE 3" P3=( (XVOX-IDIM/2-TOTALISHIFT (NP) +0.5) *L-X1 "-XSHIFT" ) /UNP; IF(P3<0) [P3=5000.;] "PLANE 6" P6={ (XVOX-IDIM/2-TOTALISHIFT (NP) -0 . 5 ) *L-X1 "-XSHIFT" ) /UNP; IF(P6<0) [P6=5000.;] DIST=DMIN1 (PI, P2, P3, P4, P5, P6) ; 102 FORMAT (IX, 312) ; IF(DIST>USTEP) [REGNEW=0; RETURN; ] ELSE [ USTEP=DIST+1 .d-8; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; NEWXVOX=NINT ( (XNXT"+XSHIFT" ) /L) +IDIM/2+T0TALISHIFT (NP) ; NEWYV0X=NINT ( (YNXT"+YSHIFT" ) /YDIM) +JDIM/2+T0TALJSHIFT (NP) ; NEWZV0X=NINT ( ( ZNXT"+ZSHIFT" ) /H) +KDIM/2+T0TALKSHIFT (NP) ; IF(IPNTR=2) [ IF (WHICHMED (NEWXV0X,NEWYV0X, NEWZVOX) =0) [ IRNEW=1; ] ELSE [IRNEW=2;]] ELSE [ IF (WHICHMED (NEWXVOX, NEWYVOX, NEWZVOX) =0) [ IRNEW=1; ] ELSE [IRNEW=2;]] ] "PRINT *, PI, P4, P2, P5, P3, P6, REGNEW; " RETURN; ] RETURN; END; "END OF SUBROUTINE HOWFAR" %E SUBROUTINE DIST_TO_REGION (TPERP) ; "THIS SUBROUTINE NEED TO RETURN TPERP AS THE SHORTEST DISTANCE TO ANY" PAGE 190 "BOUNDARY" tl*********************************************************************" ;COMIN/STACK, GEOM/; ;C0MIN/ENERG1/; DOUBLE PRECISION PI , P2 , P3 , P4 , P5 , P6 ; DOUBLE PRECISION DISTl; INTEGER REGNEW,WHICHMED; XI = X(NP); Yl = Y(NP); Zl = Z(NP); XX = X1*X1; YY = Y1*Y1; ZZ = Z1*Z1; UNP = U(NP); VNP = V(NP); WNP = W(NP); UU = UNP*UNP; VV = VNP*VNP; WW = WNP*WNP; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; IPNTR = IR{NP) ; XVOX=NINT ( {X1"+XSHIFT") /L) +IDIM/2+T0TALISHIFT (NP) ; YVOX=NINT ( (Y1"+YSHIFT") /YDIM) +JDIM/2+T0TALJSHIFT (NP) ; ZVOX=NINT ( (Z1"+ZSHIFT") /H) +KDIM/2+T0TALKSHIFT (NP) ; IPOS (NP) =XVOX; JPOS (NP)=YVOX; KPOS (NP) =ZVOX; "PRINT *, XVOX, YVOX, ZVOX,WHICHMED (XVOX, YVOX, ZVOX) , IPNTR; " "PRINT *, X1,Y1,Z1;" "CHECK TO MAKE SURE VOXEL IS CONSISTENT WITH REGION*" IF( (WHICHMED{XVOX, YVOX, ZVOX) +1) ~=IPNTR) [ PRINT *, 'ERROR IN DISTl', WHICHMED (XVOX, YVOX, ZVOX) +1, IPNTR; "PRINT *, XSHIFT, YSHIFT, ZSHIFT; PRINT *, X1,Y1,Z1; PRINT *, XVOX, YVOX, ZVOX; ] "CHECK TO MAKE SURE X,Y,Z AND XVOX, YVOX, ZVOX CORRESPOND" "PLANE 1" Pl=( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM+YDIM/2 . -Y1"-YSHIFT" ) ; "PLANE 4" P4=-l.* ( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) * YDIM-YDIM/2 . -Yl "-YSHI FT" ) ; "PLANE 2" P2=( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H+H/2 . -Zl "-ZSHIFT" ) ; "PLANE 5" P5=-l.* ( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H-H/2 . -Z1"-ZSHIFT" ) ; "PLANE 3" P3=( (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L+L/2 . -XI "-XSHIFT" ) ; "PLANE 6" P6=-l . * ( (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L-L/2 . -XI "-XSHIFT" ) ; IF(P1<0 I P2<0 I P3<0 I P4<0 I P5<0 | P6<0) [PRINT *, 'ERROR IN DIST', XI, Yl, Zl, XVOX, YVOX, ZVOX;] DIST1=DMIN1 (PI, P2, P3, P4, P5, P6) ; TPERP=DIST1; RETURN; END; "END OF SUBROUTINE DIST_TO_REGION" %E PAGE 191 185 "SUBROUTINE FOR SOURCE OF PARTICLE" I SUBROUTINE SOURCE (XIN, YIN, ZIN, UIN, VIN, WIN, IRIN) ; ; COMIN/STACK, RANDOM, GEOM, UPHIOT, ENERGl, SRCPOS/; REAL DMYl, DMY2, DMY3, DMY4 , PHI , THETA, TMP5 , PDIST, PI, P2, P3, P4, P5, P6; INTEGER WHICHMED, EDGEIPOS, EDGEINEG, EDGE JPOS , EDGEJNEG, EDGEKPOS , EDGEKNEG; INTEGER SIDES; $RANDOMSET RNGl; $RANDOMSET RNG2; PHI=TW0PI*RNG1; THETA=ACOS(l.-2.*RNG2) ; DO 1=1, $MXSTACK [ TOTALISHIFT{I)=0; TOTALJSHIFT{I)=0; TOTALKSHIFT(I)=0; XSHIFT=0 . ; YSHIFT=0. ; ZSHIFT=0. ; ] ; IF{SOURCEMED=0) [S0URCEMEDIUM=1 ; ] IF(S0URCEMED=1) [ SOURCEMEDIUM=0 ; ] IF(SOURCEMED=0 | S0URCEMED=1) [ " MARROW OR BONEVOLUME SOURCE Â— " WHILE (SOURCEMED~=SOURCEMEDIUM) [ $RANDOMSET RNG3; $RANDOMSET RNG4; $RANDOMSET RNG5; XIN=RNG3* (L+L* (IMAX-IMIN) ) -L/2( IDIM/2-IMIN) *L; YIN=RNG4* {YDIM+YDIM* ( JMAX-JMIN) ) -YDIM/2( JDIM/2JMIN ) *YDIM; ZIN=RNG5* (H+H* (KMAX-KMIN) ) -H/2{KDIM/2-KMIN) *H; XVOX=NINT (XIN/L) +IDIM/2; YVOX=NINT (YIN/YDIM) +JDIM/2; ZVOX=NINT (ZIN/H) +KDIM/2; "PRINT *,XIN, YIN, ZIN,XVOX, YVOX, ZVOX, WHICHMED (XVOX, YVOX, ZVOX) ; " IF (WHICHMED (XVOX,YVOX,ZVOX)=0) [ SOURCEMEDIUM=WHICHMED (XVOX, YVOX, ZVOX) ; ] ELSEIF (S0URCEMED=1) ["MARROW SOURCE =>EXCLUDE ENDOSTEUM" "CHECK FOR BONE VOXEL NEIGHBORS" "DETERMINE WHERE BONE SURFACES ARE (IF THEY ARE)" EDGEIP0S=WHICHMED(XV0X+1, YVOX, ZVOX) ; EDGEINEG=WHICHMED (XVOX-1, YVOX, ZVOX) ; EDGEJPOS=WHICHMED(XVOX, YVOX+1, ZVOX) ; EDGEJNEG=WHICHMED(XVOX, YVOX-1, ZVOX) ; EDGEKPOS=WHICHMED (XVOX, YVOX, ZVOX+1) ; EDGEKNEG=WHICHMED (XVOX, YVOX, ZVOX-1) ; SIDES=6-EDGEIP0S-EDGEINEG-EDGEJP0S-EDGEJNEG-EDGEKP0S-EDGEKNEG; IF (SIDES=0) [SOURCEMEDIUM=WHICHMED (XVOX, YVOX, ZVOX) ; ] ELSE [ PAGE 192 186 /PI, P2, P3, P4, P5, P6/ = l. ; IF(EDGEIPOS=0) [ Pl={ (XVOX-IDIM/2) *L+L/2.-XIN-XSHIFT) ; ] IF(EDGEINEG=0) [ P2=-l.* ( (XVOX-IDIM/2) *L-L/2.-XIN-XSHIFT) ; ] IF(EDGEJPOS=0) [ P3= ( (YVOX-JDIM/2) *YDIM+YDIM/2 . -YIN-YSHIFT) ; ] IF{EDGEJNEG=0) [ P4=-l.* ( (YVOX-JDIM/2) *YDIM-YDIM/2. -YIN-YSHIFT) ; ] IF(EDGEKPOS=0) [ P5=( (ZVOX-KDIM/2) *H+H/2 . -ZIN-ZSHIFT) ; ] IF(EDGEKNEG=0) [ P6=-l . * ( (ZVOX-KDIM/2) *H-H/2 . -ZIN-ZSHIFT) ; ] PDIST=DMIN1 (PI, P2, P3, P4, P5, P6) ; IF(PDIST<0.001) ["IN THE ENDOSTEUM!! =>SET MEDIUM TO BONE" SOURCEMEDIUM=0; "=>PICK NEW POINT" ] ELSE ["IN THE MARROW" S0URCEMEDIUM=1; ] ] ] ELSE [ S0URCEMEDIUM=1 ; ] IF (S0URCEMED=2) [ " ENDOSTEUM (MARROW SURFACE) SOURCE " IF(STORE>0) [ XIN=ENDOX (STORE) ; YIN=ENDOY (STORE) ; ZIN=ENDOZ (STORE) ; ST0RE=ST0RE-1; XV0X=NINT (XIN/L) +IDIM/2; YV0X=NINT ( YIN/YDIM) + JDIM/2 ; ZVOX=NINT (ZIN/H) +KDIM/2; ] ELSE [ EDGEI P0S=1 ; EDGEINEG=1 ; EDGE JP0S=1 ; EDGE JNEG=1 ; EDGEKP0S=1 ; EDGEKNEG STORE=0; WHILE (EDGEIP0S=1 & EDGEINEG=1 & EDGEJP0S=1 & EDGEJNEG=1 & EDGEKP0S=1 & EDGEKNEG=1) [ S0URCEMEDIUM=1; WHILE (SOURCEMED~=SOURCEMEDIUM) [ $RANDOMSET RNG3; $RANDOMSET RNG4; $RANDOMSET RNG5; XVOX=NINT (RNG3* (IMAX-IMIN) +IMIN) ; YVOX=NINT (RNG4* { JM/UC-JMIN) +JMIN) ; ZVOX=NINT (RNG5* (KMAX-KMIN) +KMIN) ; SOURCEMEDIUM=WHICHMED (XVOX, YVOX, ZVOX) +1; PAGE 193 187 ] "DETERMINE WHERE BONE SURFACES ARE{IF THEY ARE) " EDGEIPOS=WHICHMED (XVOX+l , YVOX, ZVOX) ; EDGEINEG=WHICHMED(XV0X-1, YVOX, ZVOX) ; EDGE JPOS=WH I CHMED ( XVOX , YVOX+ 1 , ZVOX ) ; EDGEJNEG=WHICHMED(XVOX, YVOX-1, ZVOX) ; EDGEKPOS=WHICHMED (XVOX, YVOX, ZVOX+1) ; EDGEKNEG=WHICHMED (XVOX, YVOX, ZVOX-1 ) ; ] IF(EDGEIPOS=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7 ; $RANDOMSET RNG8; ENDOX (STORE) =RNG6* ( 0 . 001 ) +L/2 . -0 . 001+ (XVOX-IDIM/2 . ) *L; ENDOY ( STORE ) =RNG7* (YDIM) -YDIM/2 . + ( YVOXJDIM/2 . ) *YDIM; ENDOZ (STORE) =RNG8* (H) -H/2 . + ( ZVOX-KDIM/2 . ) *H; ] IF(EDGEINEG=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOX (STORE) =RNG6* ( 0 . 001 ) -L/2 . + (XVOX-IDIM/2. ) *L; ENDOY ( STORE ) =RNG7* (YDIM) -YDIM/2 .+( YVOXJDIM/2 . ) *YDIM; ENDOZ (STORE) =RNG8* (H) -H/2 .+( ZVOX-KDIM/2 . ) *H; ] IF(EDGEJPOS=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7 ; $RANDOMSET RNG8; ENDOY (STORE) =RNG6* ( 0 . 001 ) +YDIM/2 . -0 . 001+ (YVOXJDIM/2 . ) *YDIM ENDOX (STORE) =RNG7* (L) -L/2. + (XVOX-IDIM/2 . ) *L; ENDOZ (STORE) =RNG8* (H) -H/2 .+( ZVOX-KDIM/2 . ) *H; ] IF(EDGEJNEG=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $ RANDOMS ET RNG7 ; $RANDOMSET RNG8; ENDOY (STORE) =RNG6* (0 . 001) -YDIM/2 . + (YVOXJDIM/2 . ) *YDIM; ENDOX (STORE) =RNG7* (L) -L/2 .+ (XVOX-IDIM/2 . ) *L; ENDOZ (STORE) =RNGB* (H) -H/2 . + (ZVOX-KDIM/2. ) *H; ] IF(EDGEKPOS=0) [ ST0RE=ST0RE+1; $ RANDOMS ET RNG6; $RANDOMSET RNG7 ; $RANDOMSET RNG8; ENDOZ (STORE) =RNG6* (0. 001) +H/2 . -0 . 001+ ( ZVOX-KDIM/2 . ) *H; ENDOY (STORE) =RNG7* (YDIM) -YDIM/2 .+ (YVOX-JDIM/2 . ) *YDIM; ENDOX (STORE) =RNG8* (L) -L/2 . + (XVOX-IDIM/2 . ) *L; ] IF(EDGEKNEG=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; PAGE 194 :ll8 $ RANDOMS ET RNG7; $RANDOMSET RNG8; ENDOZ (STORE) =RNG6* ( 0 . 001 ) -H/2 . + { ZVOX-KDIM/2 . ) *H; ENDOY (STORE) =RNG7* (YDIM) -YDIM/2 . + ( YVOXJDIM/2 . ) *YDIM; ENDOX (STORE) =RNG8* (L) -L/2 . + (XVOX-IDIM/2 . ) *L; ] XIN=ENDOX (STORE) ; YIN=ENDOY (STORE) ; ZIN=ENDOZ (STORE) ; ST0RE=ST0RE-1; ] ] IF(S0URCEMED=3) [" BONE SURFACE SOURCE " ] ; IPOSI=XVOX; JPOSI=YVOX; KPOSI=ZVOX; IPOS (1)=XV0X; JP0S (1)=YV0X; KP0S (1) =ZVOX; NEWXV0X=XV0X; NEWYV0X=YV0X; NEWZV0X=ZV0X; IF(WHICHMED(IPOSI, JPOSI, KPOSI) =0) [ IRIN=1; ] I F ( WHICHMED ( IPOSI , JPOSI , KPOSI ) =1 ) [ IRIN=2; ] UIN=SIN (THETA) *COS (PHI) ; VIN=SIN(THETA) *SIN(PHI) ; WIN=COS (THETA) ; "PRINT *, 'SOURCE';" "PRINT *, WHICHMED (IPOSI, JPOSI, KPOSI) , IRIN; " ; RETURN; END; "END OF SUBROUTINE SOURCE" %E "SUBROUTINE FOR REINTRODUCING THE PARTICLE AFTER IT HAS LEFT THE ROI" "++*********+*************************+**+*+*****+************** SUBROUTINE REINTRODUCE; ; COMIN/GEOM, RANDOM, STACK, ENERGl/ ; INTEGER WHICHMED, OLDMED, NEWMED, OLDXVOX, OLDYVOX, OLDZVOX; INTEGER ISHIFT, JSHIFT, KSHIFT; DOUBLE PRECISION RNGI , RNGJ, RNGK, RNGX, RNGY, RNGZ ; OLDMED=WHICHMED(XVOX, YVOX, ZVOX) ; OLDXVOX=XVOX; OLDYVOX=YVOX; OLDZVOX=ZVOX; NEWMED=3; WHILE (NEWMED~=OLDMED) [ PAGE 195 1Â«9 $RANDOMSET RNGI; $RANDOMSET RNGJ; $RANDOMSET RNGK; XVOX=NINT (RNGI* (IMAX-IMIN) +IMIN) ; YVOX=NINT (RNGJ* ( JMAX-JMIN) +JMIN) ; ZVOX=NINT (RNGK* (K^4AX-KMIN) +KMIN) ; NEWMED=WHICHMED (XVOX, YVOX, ZVOX) ; ] ; IPOSI=XVOX; IPOS (NP) =XVOX; NEWXVOX=XVOX JPOSI=YVOX; JPOS (NP) =YVOX; NEWYVOX=YVOX KPOSI=ZVOX; KPOS (NP) =ZVOX; NEWZVOX=ZVOX $ RANDOMS ET RNGX $RANDOMSET RNGY $RANDOMSET RNGZ "IF(XSHIFT=0 I XSHIFT=1. | YSHIFT=0. I YSHIFT=1. | ZSHIFT=0. | ZSHIFT=1.) [ " PRINT *, 'SHIFT EQUALS ',XSHIFT,YSHIFT,ZSHIFT;] ISHIFT=XVOX-OLDXVOX JSHIFT=YVOX-OLDYVOX KSHIFT=ZVOX-OLDZVOX TOTALISHIFT (NP) =TOTALISHIFT (NP) +ISHIFT TOTALJSHIFT (NP) =TOTALJSHIFT (NP) +JSHIFT TOTALKSHIFT (NP) =TOTALKSHIFT (NP) +KSHIFT /RETURN; END; "END OF SUBROUTINE REINTRODUCE" %E "SUBROUTINE FOR INITIALIZATION OF RANDOM NUMBER GENERATOR " / SUBROUTINE RMARIN; ;COMIN/RANDOM/; IF( (IXX.LE.O) .OR. (IXX.GT. 31328) ) IXX=1802; "SETS MARS AGL I A DEFAULT" " BUG. In the following line the " was to IXX. This DID NOT upset " just the initial starting poin IF( (JXX.LE.O) .OR. (JXX.GT. 30081) ) assignment previous to 90/09/18 " the randomness of the sequence, " . BLIF 90/09/18. " JXX=937 3; "SETS MARSAGLIA DEFAULT" I = MOD(IXX/177, 177) + 2 J = MOD (IXX, 177) + 2 K = MOD(JXX/169, 178) + 1 L = MOD(JXX, 169) DO 11=1, 97 [ S=0.0;T=0.5; DO JJ=1, 24 [ M=MOD(MOD(I*J, 179) *K, 179) ; PAGE 196 190 I=J; J=K;K=M;L=MOD(53*L+l, 169) ; IF(MOD(L*M, 64) .GE. 32) S=S+T; T=0.5*T; ] URNDM(II)=S; ] CRNDM = 362436. /16777216. ; CDRNDM = 7654321. /16777216. ; CMRNDM = 16777213. /16777216. ; IXX = 97; JXX = 33; END; ;"END OF SUBROUTINE RMARIN" "SUBROUTINE FOR READING IN BINARY IMAGE" SUBROUTINE IMAGEREAD; r .v,^. ., , ;C0MIN/ENERG1/; INTEGER tmpl; CHARACTER* 1 tmp; INTEGER C, XXX, YYY, ZZZ, DUMBY; INTEGER WHICHMED; INTEGER CHANGEMED; EXTERNAL WHICHMED; EXTERNAL CHANGEMED; OPEN (100, FILE=' ../../. . /600MHz_Images/human_spine_3D. raw' , ACCESS= ' DIRECT ' , ERR=95 , FORM= ' FORMATTED ' , RECL=1 ) ; GOTO 101; 95 PRINT *, 'error opening'; 101 PRINT *, 'after open'; DO XXX=1, IDIM [ DO YYY=1,JDIM [ DO ZZZ=l,KDIM/8 [ ARRAY {XXX, YYY, ZZZ)=0; ] ] ] DO XXX=IMIN-1, IMAX+2 [ DO YYY=JMIN-1, JMAX+1 [ DO ZZZ=KMIN-1,KMAX+1 [ "PRINT *, XXX, IMIN, YYY, JMIN, ZZZ, KMIN; " C=ZZZ+ (YYY-1) *IDIM+ (XXX-1) *IDIM*JDIM; READdOO, '(Al)', REC=C) tmp; tmpl=tmp; IF(tmpl.LE.-l) [ PRINT *, tmpl; PAGE 197 191 "PRINT *, 'GOING TO THRESH';" IF(tmpl PAGE 198 192 FOR IA=IMIN TO IMAX+2 [ FOR JA=JMIN TO JMAX [ FOR KA=KMIN TO KMAX [ "PRINT *, lA, IMIN, JA, JMIN,KA,KMIN; DO D=l, 3 [ DO E=0, 2 [ DO F=0,2 [ TMPI=IA+D-2; TMPJ=JA+E-1; TMPK=J H00D(IT+1)) [ HOLD=HOOD(IT) ; H00D(IT)=H00D(IT+1) ; H00D(IT+1) =HOLD; ] ] ] "PRINT *, ' FILTER' ; " "DO D=l,27 [PRINT *, HOOD (D) ; ] " MEDIAN=H00D{14) ; "PRINT *, MEDIAN, HOOD (13) , HOOD (14) ; IF(IA>IMIN+1) [ DUMMY=CHANGEMED(IA-2, JA,KA,TMPARRAY(MOD( (IA-2) , 2 . ) , JA, KA) ) ; ] TMPARRAY(M0D(IA,2. ) , JA, KA) =MEDIAN; ] ] ]]; ; RETURN; END; %E; "FUNCTION WHICHMED" "THIS FUNCTION RETURNS THE CURRENT MEDIUM OF THE X,Y,Z LOCATION" "NOTE THAT THE MEDIUM IS STORED AS 1 OR 0 ALLOWING FOR BITWISE" "STORAGE" "*************************************************************Â•! INTEGER FUNCTION WHICHMED (XXXX, YYYY, ZZZZ ) ; INTEGER MEDIUM, ARRAYINDEX, BITINDEX, XXXX, YYYY, ZZZZ; BYTE MASK; ;C0MIN/ENERG1/; ARRAYINDEX=ZZZZ/8 . ; BITINDEX=MOD(ZZZZ, 8. ) ; "PRINT *, 'IN WHICHMED';" MASK=1; MASK=LSHIFT (MASK, BITINDEX) ; "PRINT *, MASK, BITINDEX; " "PRINT *, ARRAYINDEX, ARRAY (XXXX, YYYY, ARRAYINDEX) ; " PAGE 199 193 MEDIUM=AND (ARRAY (XXXX,YYYY,ARRAYINDEX) ,MASK) ; IF(MEDIUM>0.or.MEDIUM=-128) [ "-128 is when bitindex=7" MEDIUM=1; ] ELSE [MEDIUM=0;] "PRINT *, MEDIUM;" WHICHMED=MEDIUM; "PRINT *, 'LEAVING WHICHMED';" RETURN; END; 11****************** + ********* + + * + + ** + ** + * + * + ******************'^ "FUNCTION CHANGEMED" "THIS FUNCTION READS THE CURRENT MEDIUM OF THE X,Y,Z LOCATION" "AND CHANGES IT TO THE MEDIUM IT SHOULD BE (0=BONE, 1=MARR0W) " 11******+*****************************************+****+*****+ INTEGER FUNCTION CHANGEMED (XXXX, YYYY, ZZZZ, MED) ; INTEGER MEDIUM, ARRAYINDEX, BITINDEX, XXXX, YYYY, ZZZZ, MED, WHICHMED; BYTE MASK; ;C0MIN/ENERG1/; EXTERNAL WHICHMED; "PRINT *, 'IN CHANGEMED';" ARRAYINDEX=ZZZZ/8 . ; BITINDEX=MOD(ZZZZ, 8 . ) ; "PRINT *, 'IN CHANGEMED', XXXX, YYYY, ZZZZ, TOMED;" IF(MED.eq.l .and. WHICHMED (XXXX, YYYY, ZZZZ ). eq. 0 ) [ MASK=1; MASK=LSHIFT (MASK, BITINDEX) ; ARRAY (XXXX, YYYY, ARRAYINDEX) =0R (ARRAY (XXXX, YYYY, ARRAYINDEX) ,MASK) ; ] ELSEIF(MED.eq.O .and. WHICHMED (XXXX, YYYY, ZZZZ ). eq . 1 ) [ MASK=1; MASK=LSHIFT (MASK, BITINDEX) ; MASK=NOT (MASK) ; ARRAY (XXXX, YYYY, ARRAYINDEX) =AND (ARRAY (XXXX, YYYY, ARRAYINDEX) , MASK) ; ] CHANGEMED=1; RETURN; END; PAGE 200 APPENDIX E MACRO-THORACIC VERTEBRA EGS4 USER CODE %L %E UNDENT M 4; "INDENT EACH MORTRAN NESTING LEVEL BY 4" UNDENT F 2; "INDENT EACH FORTRAN NESTING LEVEL BY 2" "This line is 80 characters long, use it to set up the screen width" "234567891 1234567891 1234567891 1234 5678 91 1234 567891 1234567891 1234567891 1 23456789" " HERE YOU NEED TO DESCRIBE WHAT IS DOING YOUR PROGRAM. ... " " NEED TO PUT WHAT INPUT FILE YOU USE, WHAT OUTPUT FILE YOU WRITE " " AND THE REGION INDEX THAT YOU ARE USING.... " "STEP 1: USER-0VERRIDE-0F-EGS4-MACR0S REPLACE ($MXMED} WITH {2} "only 2 media in the problem (default 10)" REPLACE {$MXREG} WITH {4} "only 3 geometric regions (default 2000)" REPLACE {$MXSTACK} WITH {50} "less than 51 particles on stack at once" "REPLACE FOR PRESTA" REPLACE {$STAT} WITH {1} REPLACE {$MXDATA} WITH {2} REPLACE {$CALL-HOWNEAR(TPERP) } WITH {CALL DIST_T0_REGI0N (TPERP) ; } "DEFINE A COMMON TO PASS INFORMATION TO THE GEOMETRY ROUTINE HOWFAR" REPLACE { ;COMIN/GEOM/; } WITH { ;C0MM0N/GE0M/X1, Yl, Zl, UNP, VNP, WNP, UU, VV, WW, XNXT, YNXT, ZNXT, XX, YY, ZZ, VOLFRACT, XSHIFT, YSHIFT, ZSHIFT, XVOX, YVOX, ZVOX, SOURCEMED, NEWXVOX, NEWYVOX, NEWZVOX, MIDVOX, C, XOR, YOR, ZOR, RAD, Z PLANE, CORT; DOUBLE PRECISION XI , Yl , Zl , UNP, VNP, WNP, UU, VV, WW, XNXT, YNXT, ZNXT, XX, YY, ZZ, VOLFRACT, XSHIFT, YSHIFT, ZSHIFT, C, XOR, YOR, ZOR, RAD, ZPLANE, CORT; INTEGER XVOX, YVOX, ZVOX, SOURCEMED, NEWXVOX, NEWYVOX, NEWZVOX, MIDVOX ; } "DEFINE A COMMON TO PASS INFORMATION FOR YOUR VARIABLE TRACKING IN " "AUSGAB" REPLACE { ;COMIN/SRCPOS/; } WITH { ; COMMON/SRCPOS/STORE, ENDOX ( 6 ) , ENDOY ( 6 ) , ENDOZ (6) ; INTEGER STORE; 194 PAGE 201 195 DOUBLE PRECISION ENDOX, ENDOY, ENDOZ ; } REPLACE { ;COMIN/SCORE/; } WITH { ;COMMON/SCORE/ESCORE (40, 40, 40, 10) , ENDISC (120) , ENBONE (120) , ENMARROW ( 1 2 0 ) , ENCORT (120) , ENMARROWl (120) , ENMARR0W2 (120) , ENENDOSTl (120) , ENEND0ST2 (120) ; DOUBLE PRECISION ESCORE, ENDISC, ENBONE, ENMARROW, ENCORT, ENMARROWl , ENMARR0W2 , ENENDOSTl, ENEND0ST2; } REPLACE { ;C0MIN/ENERG1/; } WITH { ;C0MM0N/ENERG1/IRUN,EL00P, ESUM, YDIM, H, L, ARRAY, IMIN, IMAX, JMIN, JMAX, KMIN, KMAX, IDIM, JDIM, KDIM, SIZE, THRESH; DOUBLE PRECISION ESUM, YDIM, H, L; BYTE ARRAY (192, 256, 32) ; INTEGER ELOOP, IRUN, SIZE, IMIN, IMAX, JMIN, JMAX, KMIN, KMAX, IDIM, JDIM, KDIM; INTEGER THRESH; } REPLACE { ;COMIN/STACK/; } WITH { ; COMMON/STACK/$LGN (E, X, Y, Z, U, V, W, DNEAR, WT, IQ, IR, LATCH ($MXSTACK) ) ,LATCHI,NP, $LGN (IPOS, JPOS, KPOS ($MXSTACK) ) , $LGN (TOTALISHIFT, TOTALJSHIFT, TOTALKSHI FT ( $MXSTACK) ) , IPOSI, JPOSI, KPOSI; DOUBLE PRECISION E, X, Y, Z, U, V, W, DNEAR; REAL WT; INTEGER IPOS, JPOS, KPOS, TOTALISHIFT, TOTALJSHIFT, TOTALKSHIFT, IPOSI, JPOSI, KPOSI; INTEGER NP, LATCHI, IQ, IR, LATCH; } REPLACE { ;COMIN/EPCONT/; } WITH { ; COMMON/EPCONT/EDEP, TSTEP, TUSTEP, USTEP, TVSTEP, VSTEP, RHOF, FOLD, ENEW, EKE, ELKE, BETA2, GLE, TSCAT, IDISC, IROLD, IRNEW, lAUSFL ($MXAUS) ; DOUBLE PRECISION EDEP, TSTEP, TUSTEP, USTEP, TVSTEP, VSTEP, RHOF, FOLD, ENEW, ELKE, BETA2, GLE, TSCAT; } REPLACE {$TRANSFERPROPERTIESTO#FROM#; } WITH {X{P1}=X{P2}; Y{P1}=Y{P2}; Z{P1}=Z(P2} ; IR{P1}=IR{P2}; WT{P1}=WT{P2}; DNEAR{P1}=DNEAR{P2} ; LATCH { PI } =LATCH { P2 } ; IP0S{P1}=IP0S{P2} ; JPOS { PI }= JPOS {P2}; KP0S{P1}=KP0S{P2}; TOTALISHIFT { PI } =TOTALISHI FT { P2 } ; TOTALJSHIFT { PI } =TOTALJSHIFT { P2 } ; TOTALKSHIFT { PI } =TOTALKSHIFT { P2 } ; } "HERE YOU NEED TO DEFINE YOU RANDOM NUMBER GENERATOR: PAGE 202 196 " A conunonly used random number generator is Ranmar: " " Ranmar is a long sequence RNG by Marsaglia and Zaman. " " It is a pseudo random number generator returning a single precision" " real number between 0 (inclusive) and 1 (exclusive) . " " The cycle length of this generator is 2**144 " " Initialization sunroutine rmarin is required " " This rng is described in: " " 'A review of pseudorandom number generators by F James' " " in publication dd/88/22 from the CERN data handling division " REPLACE { ;COMIN/RANDOM/; } WITH { ; common /randomm/urndm ( 97 ) , crndm, cdrndm, cmrndm, ixx, jxx; double precision urndm, crndm, cdrndm, cmrndm, r 4 opt; integer ixx, jxx; REPLACE {$RNG-INITIALIZATION; } WITH {;call rmarin;} REPLACE {$COMMON-RANDOM-DECLARATION-IN-BLOCK-DATA; } WITH { ;COMIN/RANDOM/; } REPLACE {$RANDOMSET#; } WITH { r4opt = urndm(ixx) urndm(jxx); IF(r4opt < 0) r4opt = r4opt + 1; urndm (ixx) = r4opt; ixx = ixx 1; IF (ixx = 0) ixx = 97; jxx = jxx 1; IF (jxx = 0) jxx = 97; crndm = crndm cdrndm; IF (crndm < 0) crndm = crndm + cmrndm; r4opt = r4opt crndm; IF(r4opt < 0) r4opt = r4opt + 1; {PI} = r4opt; } "YOU CAN DEFINE SOME MACROS FOR OUTPUT, OR FOR GEOMETRY TRACKING...." "will output to the file unit 22." REPLACE { ;OUTPUT22#;#; } WITH { ; {SETR A =@LG} ;WRITE(22, {COPY A}) {PI}; {COPY A} FORMAT {P2};} "HERE NEED TO DEFINE THE COMMON FOR THE MAIN PROGRAM " "USING THE COMIN MACRO DEFINE IN EGS4" " BOUNDS CONTAINS ECUT AND PCUT" " GEOM PASSES INFO TO OUR HOWFAR ROUTINE" " MEDIA CONTAINS THE ARRAY MEDIA" " MISC CONTAINS MED" " THRESH CONTAINS AE AND AP" " ENERGl PASSES INFO TO THE AUGAB ROUTINE" ; COMIN/BOUNDS, GEOM, MEDIA, MISC, SCORE, THRESH, ENERGl , USER, USEFUL, RANDOM/ ; "NOTE ; BEFORE COMIN" ;COMIN/ELECIN/; PAGE 203 197 INTEGER II, JJ, WHICHMED, TMPINT; DOUBLE PRECISION VOLFRACT, ENSTEP { 12 ) , MEAN_TMS (12 ) , MEAN_TBV ( 12 ) , MEAN_TBE ( 12 ) , MEAN_CORT (12) , MEAN_DISC { 12 ) ,SD_TMS(12) ,SD_TBV(12) ,SD_TBE{12) , SD C0RT(12),SD DISC(12); II "STEP 2 PRE-HATCH-CALL-INITIALIZATION n $TYPE TEMP(24,2) /$S ' BONE ' , 20* ' ', $S ' MARROW , 18 * ' ' / ; "PLACE MEDIUM NAME IN AN ARRAY" " $S IS A MORTRAN MACRO TO EXPAND STRINGS" " $TYPE IS INTEGER(F4) OR CHARACTER*4 (F77)" " DEPENDING ON THE EGS4 VERSION BEING USED" "IN ORDER TO MATCH THE TYPE OF MEDIA" NMED= $MXMED; "Set number of mediums." NREG = $MXREG; "Set number of regions." DO J = 1,NMED [ DO 1=1 , 24 [MEDIA ( I , J) =TEMP ( I , J) ; ] ] "THIS IS TO AVOID A DATA STATEMENT FOR" " A VARIABLE IN COMMON" "DUNIT DEFAULT TO 1, I.E. WE WORK IN CM" DO J=l,l [MED(J)=1; "BONE IN REGION 1 AND "] DO J=3,4 [MED{J)=1; "BONE IN REGION 3 AND 4"] DO J=2,2 [MED (J) =2; "MARROW IN REGION 2"] /ECUT (1) , ECUT (2) / = 0.512; "Terminate electron histories at 1 keV" /PCUT (1) , PCUT (2) / = 0.001; "Terminate photon histories at 1 keV" ONLY NEEDED FOR REGIONS 1&2 SINCE NO TRANSPORT ELSEWHERE" " ECUT IS TOTAL ENERGY IN MEV " "READ IN IMAGE" " II IDIM=192; JDIM=256; KDIM=256; IMIN=30; JMIN=65; KMIN=60; IMAX=190; JMAX=210; KMAX=200; "IMIN=100; JMIN=100;KMIN=100; " I MAX= 1 2 0 ; JMAX= 1 2 0 ; KMAX= 1 2 0 ; THRESH=66; CALL IMAGEREAD; VOLFRACT=0.0; DO I=IMIN, IMAX [ DO J=JMIN, UMAX [ DO JJ=KMIN,KMAX [ IF(WHICHMED(I, J, JJ)=1) [ V0LFRACT=V0LFRACT+1; PAGE 204 198 ] ] ] VOLFRACT=VOLFRACT/ ( ( IMAX-IMIN+1 ) * ( JMAXJMIN+1 ) * (KMAX-KMIN+1 ) ) ; PRINT *, 'FRACTION OF MARROW IS ' , VOLFRACT ; SIZE=27; "SET TO 9 FOR 2D, 27 FOR 3D" CALL FILTER; "RUNS 20 OR 3D MEDIAN FILTER" VOLFRACT=0. 0; DO I=IMIN,IMAX [ DO J=JMIN,JMAX [ DO JJ=KMIN,KMAX [ IF{WHICHMED{I, J, JJ)=I) [ V0LFRACT=V0LFRACT+1; ] ] ] ] VOLFRACT=VOLFRACT/ ( (IMAX-IMIN+1) * (JMAXJMIN+1) * (KMAX-KMIN+1) ) ; PRINT *, 'FRACTION OF MARROW IS ', VOLFRACT ; S0URCEMED=3; "SETS THE TYPE OF SOURCE DISTRIBUTION" "0 Â— >BONE VOLUME (TBV) " "1-->MARR0W VOLUME (TMS)" "2 Â— >ENDOSTEUM (MARROW SURFACE) (TBE)" "3 Â— >CORTICAL VOLUME SOURCE" ir "STEP 3 HATCH-CALL II ^ /OUTPUT; (' CALL HATCH TO GET CROSS-SECTION DATA'); CALL HATCH;" PICK UP CROSS SECTION DATA FOR BONE AND TISSUE" " DATA FILE MUST BE ASSIGNED TO UNIT 12" "set up of PRESTA stuff here so we can control step size" ECUTMN=0.512; "THE GLOBAL ECUT ( kinetic+rest mass)" IOUT=22; "Number for fortran file to output Presta parameters" EK0=10.00; "MAXIMUM ENERGY ELECTRON IN THE SIMULATION" ESTEPE=0.02; DO J=1,$MXMED [ESTEPR( J) =ESTEPE; ] "DONOTFORGETTO SET UP ESTEPE BEFORE" $PRESTA-INPUTS; $PRESTA-INPUT-SUMMARY; " Output Presta info to output file. " /OUTPUT AE(l)-0. 511, AP ( 1 ) ; ( ' OKNOCK-ON ELECTRONS CAN BE CREATED AND ANY ELECTRON FOLLOWED DOWN TO /T40,F8.3,' MeV KINETIC ENERGY'/ ' BREM PHOTONS CAN BE CREATED AND ANY PHOTON FOLLOWED DOWN TO ' /T40, F8 . 3, ' MeV ' ) ; "COMPTON EVENTS CAN CREATE ELECTRONS AND PHOTONS BELOW THESE CUTOFFS" II "STEP 4 INITIALIZATION-FOR-HOWFAR II "HERE YOU CAN SET UP WHATEVER YOU NEED FOR YOUR HOWFAR SUBROUTINE, " "H=0.001; PAGE 205 199 "YDIM=0.001; "L=0.001; H=0.0059; YDIM=0.0059; L=0.0059; MIDVOX=128; XOR=0 . ; ' YOR=0 . ; ZOR=0 . ; RAD=1 .56; ZPLANE=-0.702; C=l. 693; CORT=0. 1037; 11 "STEP 5 INITIAL! ZATION-FOR-AUSGAB If "INITIALIZE THE VARIABLE YOU NEED FOR YOUR AUSGAB SUBROUTINE...." DO JJ=1, 120 [ DO J=l, 4 0 [ DO 1=1, 40 [ "DO 11=1, 4 0 [ESCOREd, J, 1 1 , JJ) =0 . 0 ; ] " ] ] "ZERO SCORING ARRAY BEFORE STARTING" ENBONE ( JJ) =0.0; ENMARROW(JJ)=0.0; ENDISC ( JJ) =0.0; ENCORT(JJ)=0.0; ENMARROWl ( JJ) =0 . 0; ENMARR0W2 (JJ)=0.0; ENENDOSTl ( JJ) =0 . 0; ENEND0ST2 (JJ)=0.0; ] ft "STEP 6 DETERMINATION-OF-INICIDENT-PARTICLE-PARAMETERS If "INITIALIZATION FOR RANDOM NUMBER GENERATOR" IXX = 0; JXX = 0; ; $RNG-INITIALIZATION; "DEFINE INITIAL VARIABLES " "CAN ALSO CALL A SUBROUTINE SOURCE IF YOUR SOURCE NUMRUN=10; NCASES=1000; IQIN=-1; IS COMPLICATEED. "Number of run that you are going to make" "NUMBER OF PARTICLE YOU WILL FOLLOW PER RUN" "WILL START WITH ELECTRONS" "EIN=0.521; " WTIN=1 .0; ENSTEP (1) =0. 521 ENSTEP(2)=0.526 ENSTEP(3)=0.531 ENSTEP (4 ) =0.541 ENSTEP(5)=0.561 ENSTEP(6)=0. 611 ENSTEP(7)=0.711 ENSTEP(8)=1.011 ENSTEP{9)=1.511 ENSTEP(10)=2.011; "WITH INITIAL KINETIC ENERGY IN MeV" "WEIGHT = 1 SINCE NO VARIANCE REDUCTION USED" PAGE 206 200 ENSTEP(11)=2.511; ENSTEP(12)=4 .511; 0PEN(UNIT=l,FILE='Im2ThoS=C0RT.txt' ) ; DO IRUN=1, NUMRUN [ "start loop on the number of run" OUTPUT IRUN; (' STARTING RUN: ',14); TMPINT=NINT( { IRUN-5 . 1 ) /lO . )+l; EIN=ENSTEP (TMPINT) ; DO ICNTR=1, NCASES [ "start loop on the number of particle" "PRINT *, 'PARTICLE # ' , ICNTR; " "CALL YOUR SOURCE SUBROUTINE TO HAVE POSITION, DIRECTION" " AND INITIAL REGION INDEX OF YOUR STARTING PARTICLE" call SOURCE (XIN, YIN, ZIN, UIN, VIN,WIN, IRIN) ; "STEP 7 SHOWER-CALL CALL THE SHOWER SUBROUTINE TO TRANSPORT YOUR PARTICLE...." II n CALL SHOWER(IQIN,EIN,XIN, YIN, ZIN, UIN, VIN, WIN, IRIN,WTIN) ; ] "end loop on the number of histories" ] "end loop on the number of runs..." "STEP 8 OUTPUT-OF-RESULTS "HERE YOU NEED TO CALCULATE YOUR AVERAGES, STANDARD DEVIATIONS," "AND GOVS FOR YOUR RESULTS" "THEN, YOU CAN OUTPUT YOUR RESULTS...." "NORMALIZE TO % OF TOTAL INPUT ENERGY" DO J J=l, NUMRUN [ TMPINT=NINT( ( JJ-5 . 1 ) /1 0 . ) +1 ; EIN=ENSTEP (TMPINT) ; AN0RM=1 . / { {EIN-0. 511) *FLOAT (NCASES) ) ; "TOTAL=0 . 0; " "DO 1=1,4 0 [" "DO 11=1,40 [" "DO J=l,40 [" "TOTAL=TOTAL+ESCORE (I, I I , J, JJ) ; ] ] ] " "DO 1=10,30 [" "DO 11=10,30 [" "DO J=10,30 [" "WRITE (1, 101) ESCORE (I, II, J, JJ) *ANORM; ] ] ] " MEAN_TMS (TMPINT) =MEAN_TMS (TMPINT) + ( ENMARROW ( JJ) +ENMARR0W2 ( JJ) ) *ANORM/10 MEAN_TBV (TMPINT) =MEAN_TBV ( TMPINT ) +ENBONE ( JJ) *ANORM/10. ; MEAN_TBE (TMPINT) =MEAN_TBE (TMPINT) +ENEND0ST2 ( JJ) *ANORM/10 . ; MEAN_CORT (TMPINT) =MEAN_CORT (TMPINT) +ENCORT (JJ) *ANORM/10. ; MEAN_DISC (TMPINT) =MEAN_DISC ( TMPINT ) +ENDI SC ( JJ) *ANORM/10. ; "WRITE (1, 101) l.-TOTAL*ANORM; " PAGE 207 201 WRITE (1,*) 'Energy=' ,EIN; WRITE (1, *) ' Disc, Bone, Marrow, Run=' , JJ; WRITE (1,101) ENDISC (JJ) *ANORM; WRITE(1,101) ENBONE ( JJ) *ANORM; WRITE(1,101) ENMARROW( JJ) *ANORM; WRITE (1,101) ENCORT (JJ) *ANORM; WRITE (1, * ) 'MARR0W1=' , ENMARROWl ( JJ) *ANORM WRITE (1, * ) 'MARR0W2=' , ENMARR0W2 ( JJ) *ANORM WRITE (1, *) 'END0ST1=' , ENENDOSTl ( JJ) *ANORM WRITE (1, *) 'END0ST2=' ,ENEND0ST2 (JJ) *ANORM DO JJ=1,NUMRUN [ TMPINT=NINT( (JJ-5.1) /lO. )+l; EIN=ENSTEP(TMPINT) ; ANORM=l./( (EIN-0.511) *FLOAT(NCASES) ) ; SD_TMS (TMPINT) =SD_TMS (TMPINT) + ( (ENMARROW( JJ) +ENMARR0W2 ( JJ) ) *ANORM-MEAN_TMS (TMPINT) ) **2/9. ; SD_TBV (TMPINT) =SD_TBV (TMPINT) + (ENBONE (JJ) *ANORMMEAN_TBV (TMPINT) ) **2/9. ; SD_TBE (TMPINT) =SD_TBE (TMPINT) + (ENEND0ST2 (JJ) *ANORMMEAN_TBE (TMPINT) ) **2/9. ; SD_CORT (TMPINT) =SD_CORT (TMPINT) + (ENCORT ( JJ) *ANORMMEAN_CORT (TMPINT) ) **2/9. ; SD_DISC (TMPINT) =SD_DISC (TMPINT) + (ENDISC (JJ) *ANORMMEAN DISC (TMPINT) ) **2/9. ; DO JJ=1,NUMRUN/10 WRITE (1, *) ' ENERG WRITE (1, *) 'TMS= WRITE (1, *) ' TBV= WRITE (1, *) ' TBE= WRITE (1, *) ' CORT= WRITE (1, *) 'DISC= ,ENSTEP(JJ) ; , MEAN_TMS ( J J ) , S D_TMS ( J J ) ,MEAN_TBV(JJ) , SD_TBV(JJ) ,MEAN_TBE (JJ) , SD_TBE ( JJ) ,MEAN_CORT ( JJ) , SD_CORT ( JJ) ,MEAN DISC(JJ),SD DISC(JJ) WRITE (1,*) 'Volume Fraction of Marrow'; WRITE (1,101) VOLFRACT; "WRITE (1, 101) ESCORE (20, 20, 20, 1) *ANORM; " CLOSE (1) ; 101 FORMAT (IX, Fl 1.8) ; STOP; END, Â• I ******************************************************************** n I n SUBROUTINE AUSGAB ( lARG) ; n IN GENERAL, AUSGAB IS A ROUTINE WHICH IS CALLED UNDER A SERIES OF WELL DEFINED CONDITIONS SPECIFIED BY THE VALUE OF lARG (SEE THE EGS4 MANUAL FOR THE LIST) . THIS IS A PARTICULARILY SIMPLE AUSGAB. WHENEVER THIS ROUTINE IS CALLED WITH IARG=3 , A PARTICLE HAS BEEN DISCARDED BY THE USER IN HOWFAR WE GET AUSGAB TO PRINT THE REQUIRED INFORMATION AT THAT POINT H*******************************************************^ti.ijtjr^*^j,^^j,^ PAGE 208 202 ; COMIN/STACK, SCORE, EPCONT, ENERGl , GEOM/ ; XVOX=IPOS (NP) ; YVOX=JPOS (NP) ; ZVOX=KPOS (NP) ; "WRITE INFORMATION FOR PARTICLE DISCARDED BY USER" IF (IARG=3) [ "WRITE (1, 100) E(NP) ,X(NP) , Y(NP) , Z(NP) ,U(NP) ,V(NP) ,W(NP) , IQ{NP) , IR(NP) ; " 100 FORMAT (IX, F8 . 5, 3F6. 3, 3F6. 3, 13,12); ENDISC { IRUN) =ENDISC ( IRUN) +EDEP; RETURN; ] ELSE [ IRL=IR(NP) ; "ESCORE (XVOX-108, YVOX-4 4, ZVOX-108, IRUN) =ESCORE (XVOX-108 , YVOX-4 4 , " "ZVOX-108, IRUN) +EDEP; " IF{IRL=1) [ENBONE (IRUN) =ENBONE (IRUN) +EDEP; ] IF(IRL=2) [CALL SCORE_ENDOST; " ENMARROW ( I RUN ) =ENMARROW ( I RUN ) + E DE P ; ] IF(IRL=3) [ENCORT (IRUN) =ENCORT (IRUN) +EDEP; ] ] "PRINT *, 'EDEP=',EDEP,XVOX,YVOX,ZVOX;" "PRINT *, ESCORE (XVOX, YVOX, ZVOX, IRUN) ; " RETURN; END; "END OF AUSGAB" %E SUBROUTINE SCORE_ENDOST ; ; COMIN/STACK, SCORE, EPCONT, ENERGl , GEOM/ ; INTEGER EDGEIPOS, EDGEINEG, EDGE JPOS , EDGEJNEG, EDGEKPOS, EDGEKNEG, SIDES; DOUBLE PRECISION PI , P2 , P3 , P4 , P5 , P6 , PDIST , ENDOFRACT ; INTEGER WHICHMED; XVOX=IPOS (NP) ; YVOX=JPOS (NP) ; ZVOX=KPOS (NP) ; "CHECK FOR BONE VOXEL NEIGHBORS" "DETERMINE WHERE BONE SURFACES ARE (IF THEY ARE)" EDGEIP0S=WHICHMED(XV0X+1, YVOX, ZVOX) ; EDGEINEG=WHICHMED(XV0X-1, YVOX, ZVOX) ; EDGEJPOS=WHICHMED(XVOX, YVOX+1, ZVOX) ; EDGEJNEG=WHICHMED(XVOX, YVOX-1, ZVOX) ; E DGEKPOS =WH I CHME D ( XVOX , YVOX , ZVOX + 1 ) ; EDGEKNEG=WHICHMED(XVOX, YVOX, ZVOX-1) ; SIDES=6-EDGEIP0S-EDGEINEG-EDGEJP0S-EDGEJNEG-EDGEKP0S-EDGEKNEG; IF(SIDES=0) [ ENMARROW ( I RUN ) =ENMARR0W ( I RUN ) + E DE P ; RETURN; ] ELSE [ "METHOD 1 JUST AVERAGES THE EDEP ACROSS THE MARROW/ENDO VOLUME FRACTION" ENDOFRACT=0.0; IF(EDGEIPOS=0) [ENDOFRACT=0. 001/L; ] IF(EDGEINEG=0) [ENDOFRACT=ENDOFRACT+0 . 001/L; ] IF(EDGEJPOS=0) [ENDOFRACT=ENDOFRACT+0 . 001/YDIM; ] IF(EDGEJNEG=0) [ENDOFRACT=ENDOFRACT+0 . 001/YDIM; ] IF(EDGEKPOS=0) [ENDOFRACT=ENDOFRACT+0 . 001/H; ] PAGE 209 203 IF(EDGEKNEG=0) [ENDOFRACT=ENDOFRACT+0 . 001/H; ] ENMARROWl (IRUN)=ENMARR0W1 (IRUN) + ( 1 . -ENDOFRACT ) *EDEP; ENENDOSTl (IRUN) =ENEND0ST1 (IRUN) + (ENDOFRACT) *EDEP; "METHOD 2 FINDS THE DISTANCE FROM THE BOUNDARY" /PI, P2, P3, P4, P5, P6/=l. ; IF(EDGEIPOS=0) [ Pl=( (XV0X-IDIM/2-T0TALISHIFT(NP) ) *L+L/2 . -Xl-XSHIFT ) ; ] IF(EDGEINEG=0) [ P2=-l.* ( (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L-L/2 . -Xl-XSHIFT ) ; ] IF{EDGEJPOS=0) [ P3=( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM+YDIM/2 . -Yl-YSHIFT) ; ] IF(EDGEJNEG=0) [ P4=-l.* ( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM-YDIM/2 . -Yl-YSHIFT) ; ] IF(EDGEKPOS=0) [ P5=( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H+H/2 . -Zl-ZSHIFT) ; ] IF (EDGEKNEG=0) [ P6=-l.*( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H-H/2 . -Zl-ZSHIFT ) ; ] PDIST=DMIN1 (PI, P2, P3, P4, P5, P6) ; IF(PDIST<0.001) ["IN THE ENDOSTEUM!!" ENEND0ST2 (IRUN)=ENEND0ST2 (IRUN) +EDEP; ] ELSE ["IN THE MARROW" ENMARR0W2 ( IRUN) =ENMARR0W2 (IRUN) +EDEP; ] ] RETURN; END; %E II SUBROUTINE HOWFAR; tl " THE FOLLOWING IS A GENERAL SPECIFICATION OF HOWFAR GIVEN A PARTICLE AT (X,Y,Z) IN REGION IR AND GOING IN DIRECTION (U,V,W), THIS ROUTINE ANSWERS THE QUESTION, CAN THE PARTICLE GO A DISTANCE USTEP WITHOUT CROSSING A BOUNDARY IF YES, IT MERELY RETURNS " IF NO, IT SETS USTEP=DISTANCE TO BOUNDARY IN THE CURRENT " DIRECTION AND SETS IRNEW TO THE REGION NUMBER ON THE " FAR SIDE OF THE BOUNDARY (THIS CAN BE MESSY IN GENERAL!) fl THE USER CAN TERMINATE A HISTORY BY SETTING IDISOO. HERE WE ;COMIN/STACK, EPCONT, GEOM/; ;C0MIN/ENERG1/; " COMMON STACK CONTAINS X, Y, Z, U, V, W, IR AND NP (STACK POINTER)" " COMMON EPCONT CONTAINS IRNEW, USTEP AND IDISC" " COMMON GEOM CONTAINS XI, Yl, Zl, " PAGE 210 204 DOUBLE PRECISION PI , P2 , P3, P4 , P5 , P6 ; DOUBLE PRECISION DIST1,DIST; INTEGER REGNEW, WHICHMED; DOUBLE PRECISION MINROOT, MINCYLl ; DOUBLE PRECISION MINCYL2, ROOT, CYLl, CYL2, PZ, PYTOP, PYBOT, MINCYL, XINT, YINT; DOUBLE PRECISION ZINT, MACRODIST, CORTMACRODIST; XI = X(NP); Yl = Y(NP); Zl = Z(NP); XX = X1*X1; YY = Y1*Y1; ZZ = Z1*Z1; UNP = U(NP); VNP = V{NP); WNP = W(NP); UU = UNP*UNP; VV = VNP*VNP; WW = WNP*WNP; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; IPNTR = IR(NP) ; "PRINT *,X1,Y1,Z1; "PRINT *, IPNTR,XVOX, YVOX, ZV0X; IF(IPNTR=4) [IDISC=1; RETURN;] "TERMINATE IT FOR LEAVING THE VERTEBRA" IF(IPNTR=1 I IPNTR=2) [ "IN TRABECULAR REGION" XVOX=NINT { (Xl+XSHIFT) /L) +IDIM/2+T0TALISHI FT (NP) ; YVOX=NINT ( (Yl+YSHIFT) /YDIM) + JDIM/2+TOTALJSHIFT (NP) ; ZVOX=NINT ( (Zl+ZSHIFT) /H) +KDIM/2+T0TALKSHIFT (NP) ; IPOS (NP)=XVOX; JPOS (NP) =YVOX; KPOS{NP)=ZVOX; "CHECK TO MAKE SURE VOXEL IS CONSISTENT WITH REGION*" IF( (WHICHMED (XVOX, YVOX, ZVOX) +1 ) ~=IPNTR) [ PRINT *, 'ERROR', WHICHMED (XVOX, YVOX, ZVOX ) +1 , I PNTR; "PRINT *, XSHIFT, YSHIFT, ZSHIFT; "PRINT *, X1,Y1,Z1; "PRINT *, XVOX, YVOX, ZVOX;"] "PRINT *, IPOS (NP) , JPOS (NP) , KPOS (NP) , IPNTR; "PRINT *, X1,Y1,Z1,E(NP) ;" "CHECK TO MAKE SURE X,Y,Z AND XVOX, YVOX, ZVOX CORRESPOND" "PLANE 1" Pl= ( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM+YDIM/2 . -Yl-YSHIFT) ; "PLANE 4" P4=-l . * ( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM-YDIM/2 . -Yl-YSHIFT) ; "PLANE 2" P2= ( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H+H/2 . -Zl-ZSHIFT) ; "PLANE 5" P5=-l . * ( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H-H/2 . -Zl-ZSHIFT) ; "PLANE 3" P3=( (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L+L/2 . -Xl-XSHIFT) ; "PLANE 6" P6=-l.* ( (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L-L/2 . -Xl-XSHIFT) ; IF(P1<0 I P2<0 I P3<0 I P4<0 I P5<0 | P6<0) [PRINT *, 'ERROR IN HOWFAR', XI, Yl, Zl, XVOX, YVOX, ZVOX, IPOS(NP), JPOS(NP), KPOS(NP);] PAGE 211 205 IF(XVOX>IMAX I XVOX PAGE 212 206 MINCYL=SQRT ( (XINT-XOR) **2+ (ZINT-ZOR) **2) ; IF(CYL1<0 I ZINT PAGE 213 207 IF (WHICHMED (NEWXVOX, NEWYVOX, NEWZVOX) =0) [ IRNEW=1; ] ELSE [IRNEW=2;] ] RETURN; ] ] IF(!yiACRODIST PAGE 214 208 MINCYL=SQRT ( (XINT-XOR) * *2+ ( ZINT-ZOR) **2) ; IF(PYBOT<0. I ZINT< (ZPLANE-CORT) | (MINCYL> ( RAD+CORT ) ) ) [PYBOT=5000. ; ] XINT=CYL1*UNP+X1; YINT=CYL1*VNP+Y1; ZINT=CYL1*WNP+Z1; MINCYL=SQRT ( (XINT-XOR) * *2+ { ZINT-ZOR) **2) ; IF(CYL1<0. I ZINT< (ZPLANE-CORT) | ( YOR+C/2 . +CORT) PAGE 215 209 [PYTOP=5000. ; ] XINT=PYB0T*UNP+X1 ; YINT=PYB0T*VNP+Y1 ; ZINT=PYB0T*WNP+Z1 ; MINCYL=SQRT ( (XINT-XOR) **2+ ( ZINT-ZOR) **2) ; IF(PYBOT<0 I ZINT PAGE 216 210 DOUBLE PRECISION DIST1,XINTHI, YINTLOW, YINTHI , PZ , PYTOP, PYBOT, CORTMACRODIST; DOUBLE PRECISION MACRODIST; INTEGER REGNEW, WHICHMED; XI = X(NP); Yl = Y(NP); Zl = Z(NP); XX = X1*X1; YY = Y1*Y1; ZZ = Z1*Z1; UNP = U(NP); VNP = V(NP); WNP = W(NP); UU = UNP*UNP; W = VNP*VNP; WW = WNP^WNP; XNXT = XI + UNP*USTEP; YNXT = Yl + VNP*USTEP; ZNXT = Zl + WNP*USTEP; IPNTR = IR(NP) ; IF(IPNTR<3) [ XVOX=NINT { (Xl+XSHIFT) /L) +IDIM/2+T0TALISHIFT (NP) ; YVOX=NINT ( (Yl+YSHIFT) /YDIM) + JDIM/2+TOTALJSHIFT (NP) ; ZVOX=NINT { (Zl+ZSHIFT) /H) +KDIM/2+T0TALKSHIFT (NP) ; IPOS (NP)=XVOX; JPOS (NP)=YVOX; KPOS (NP)=ZVOX; "PRINT *, XVOX, YVOX, ZVOX, WHICHMED (XVOX, YVOX, ZVOX) , IPNTR; " "PRINT *, X1,Y1,Z1;" "CHECK TO MAKE SURE VOXEL IS CONSISTENT WITH REGION*" IF( (WHICHMED (XVOX, YVOX, ZVOX) +1) ~=IPNTR) [ PRINT *, 'ERROR IN DISTl ' , WHICHMED (XVOX, YVOX, ZVOX) +1 , IPNTR; "PRINT *, XSHIFT, YSHIFT, ZSHIFT; PRINT *, X1,Y1,Z1; PRINT *, XVOX, YVOX, ZVOX; ] "CHECK TO MAKE SURE X, Y, Z AND XVOX, YVOX, ZVOX CORRESPOND" "PLANE 1" Pl=( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM+YDIM/2 . -Yl-YSHIFT) ; "PLANE 4" P4=-l.*( (YVOX-JDIM/2-TOTALJSHIFT (NP) ) *YDIM-YDIM/2 . -Yl-YSHIFT) ; "PLANE 2" P2=( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H+H/2 . -Zl-ZSHIFT) ; "PLANE 5" P5=-l . * ( (ZVOX-KDIM/2-TOTALKSHIFT (NP) ) *H-H/2 . -Zl-ZSHIFT) ; "PLANE 3" P3= { (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L+L/2 . -Xl-XSHIFT) ; "PLANE 6" P6=-l . * ( (XVOX-IDIM/2-TOTALISHIFT (NP) ) *L-L/2 . -Xl-XSHIFT) ; IF(P1<0 I P2<0 I P3<0 I P4<0 I P5<0 | P6<0) [PRINT *, 'ERROR IN DIST', XI, Yl, Zl, XVOX, YVOX, ZVOX;] DIST1=DMIN1 (PI, P2, P3, P4, P5, P6) ; ] ELSE [DIST1=5000. ; ] "CHECK CYLINDER" MINROOT=SQRT ( (Xl-XOR) **2+ (Zl-ZOR) **2) ; MINCYL1= (RAD+CORT-MINROOT) ; MINCYL2= (RAD+CORT+MINROOT) ; XINTLOW=XOR-SQRT ((ZPLANE-CORT) **2+2* ( ZPLANE-CORT ) *ZOR(ZOR) **2 + (RAD+CORT) **2) ; PAGE 217 211 XINTHI=XOR+SQRT ((ZPLANE-CORT) **2+2* ( ZPLANE-CORT ) *ZOR (ZOR) **2+ (RAD+CORT) **2) ; YINTL0W=Y0R-C/2 . -CORT; YINTHI=Y0R+C/2 . +CORT; IF (ZK (ZPLANE-CORT) ) [MINCYL1=SQRT ( (Xl-XINTLOW) **2+ (Zl( ZPLANE-CORT) ) **2) ; MINCYL2=SQRT { (Xl-XINTHI) * *2+ { Zl( ZPLANE-CORT ) ) **2) ; ] IF(Y1 PAGE 218 212 YINTL0W=Y0R-C/2 . ; YINTHI=Y0R+C/2. ; IF(Z1< (ZPLANE) ) [MINCYL1=SQRT { (Xl-XINTLOW) **2+ (Zl(ZPLANE) ) **2) ; MINCYL2=SQRT ( (Xl-XINTHI )* *2+ { Zl( ZPLANE) ) **2) ; ] IF (YKYINTLOW) [MINCYL1=SQRT ( ( RAD-MINROOT ) **2+ ( Yl-YINTLOW) **2) ; MINCYL2=SQRT ( (RAD+MINROOT) **2+ (Yl-YINTLOW) **2) ; ] IF(Y1>YINTHI) [MINCYL1=SQRT ( (RAD-MINROOT) **2+ ( Yl-YINTHI ) **2) ; MINCYL2=SQRT ( (RAD+MINROOT) **2+ (Yl-YINTHI) **2) ; ] "CHECK PLANE Z" PZ=DABS (ZPLANE-Zl) ; IF (XKXINTLOW) [PZ=SQRT ( (Xl-XINTLOW) **2+ (Zl(ZPLANE) ) **2) ; ] IF(X1>XINTHI) [PZ=SQRT ( (Xl-XINTHI) **2+ (Zl(ZPLANE) ) **2) ; ] IF(Y1 PAGE 219 SUBROUTINE SOURCE (XIN, YIN, ZIN, UIN, VIN, WIN, IRIN) ; ; COMIN/STACK, RANDOM, GEOM, UPHIOT, ENERGl , SRCPOS/ ; REAL DMYl, DMY2, DMY3, DMY4, PHI, THETA, TMP5, TMP6, PDIST, PI , P2 , P3 , P4 , P5 , P6; INTEGER WHICHMED, EDGEIPOS, EDGEINEG, EDGEJPOS, EDGEJNEG, EDGEKPOS, EDGEKNEG; INTEGER SIDES; $RANDOMSET RNGl; $RANDOMSET RNG2 ; PHI=TW0PI*RNG1; THETA=ACOS (1.-2. *RNG2 ) ; DO 1=1, $MXSTACK [ TOTALISHIFT (I) =0; TOTALJSHIFT(I)=0; TOTALKSHIFT(I)=0,Â• XSHIFT=0. ; YSHIFT=0. ; IF(SOURCEMED=0) [S0URCEMEDIUM=1 ; ] IF(S0URCEMED=1) [SOURCEMEDIUM=0; ] IF(SOURCEMED=0 | S0URCEMED=1) [ " iXIARROW OR BONEVOLUME SOURCE-WHILE{TMP5.gt.RAD) [ $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; XIN= {RNG6-0 . 5 ) *2 . *RAD; YIN={RNG7-0.5) *C; ZIN=(RNG8) * ( RADZ PLANE ) +ZPLANE; TMP5=SQRT ( (XIN-XOR) **2+ ( ZIN-ZOR) **2) ; WHILE (SOURCEMED~=SOURCEMEDIUM) [ $RANDOMSET RNG3; $RANDOMSET RNG4 ; $RANDOMSET RNG5; XSHIFT=RNG3* (L+L* (IMAX-IMIN) ) -L/2( IDIM/2-IMIN) *L-XIN; YSHIFT=RNG4* (YDIM+YDIM* ( JMAX-JMIN) ) -YDIM/2( JDIM/2-JMIN) *YDIM-YIN; ZSHIFT=RNG5* (H+H* (KMAX-KMIN) ) -H/2(KDIM/2-KMIN) *H-ZIN; XVOX=NINT { (XIN+XSHIFT) /L) +IDIM/2; YVOX=NINT { (YIN+YSHIFT) /YDIM) +JDIM/2; ZVOX=NINT { (ZIN+ZSHIFT) /H) +KDIM/2; "PRINT * , XIN, YIN, ZIN, XVOX, YVOX, ZVOX, WHICHMED (XVOX, YVOX, ZVOX) ; " IF (WHICHMED (XVOX, YVOX, ZVOX)=0) [ SOURCEMEDIUM=WHICHMED (XVOX, YVOX, ZVOX) ; ELSEIF(S0URCEMED=1) ["MARROW SOURCE =>EXCLUDE ENDOSTEUM "CHECK FOR BONE VOXEL NEIGHBORS" "DETERMINE WHERE BONE SURFACES ARE (IF THEY ARE)" EDGEIPOS=WHICHMED (XVOX+ 1 , YVOX, ZVOX) ; EDGEINEG=WHICHMED(XV0X-1, YVOX, ZVOX) ; EDGE JPOS=WHICHMED (XVOX, YVOX+1, ZVOX) ; EDGEJNEG=WHICHMED (XVOX, YVOX-1, ZVOX) ; EDGEKPOS=WHICHMED(XVOX, YVOX, ZVOX+1) ; EDGEKNEG=WHICHMED(XVOX, YVOX, ZVOX-1) ; ZSHIFT=0. ; ]; PAGE 220 Il4 SIDES=6-EDGEIP0S-EDGEINEG-EDGEJP0S-EDGEJNEG-EDGEKP0S-EDGEKNEG; IF(SIDES=0) [SOURCEMEDIUM=WHICHMED(XVOX, YVOX, ZVOX) ; ] ELSE [ /PI, P2, P3, P4, P5, P6/=l. ; IF(EDGEIPOS=0) [ Pl=( {XVOX-IDIM/2) *L+L/2.-XIN-XSHIFT) ; ] IF{EDGEINEG=0) [ P2=-l . * ( (XVOX-IDIM/2) *L-L/2. -XIN-XSHIFT) ; ] IF(EDGEJPOS=0) [ P3=( (YVOX-JDIM/2) *YDIM+YDIM/2.-YIN-YSHIFT) ; ] IF{EDGEJNEG=0) [ P4=-l . * ( {YVOX-JDIM/2) *YDIM-YDIM/2.-YIN-YSHIFT) ; ] IF(EDGEKPOS=0) [ P5=( (ZVOX-KDIM/2) *H+H/2.-ZIN-ZSHIFT) ; ] IF(EDGEKNEG=0) [ P6=-l.* ( {ZVOX-KDIM/2) *H-H/2.-ZIN-ZSHIFT) ; ] PDIST=DMIN1 (PI, P2, P3, P4, P5, P6) ; IF(PDIST<0.001) ["IN THE ENDOSTEUM!! =>SET MEDIUM TO BONE" SOURCEMEDIUM=0; "=>PICK NEW POINT" ] ELSE ["IN THE MARROW" S0URCEMEDIUM=1; ] ] ] ELSE [ S0URCEMEDIUM=1 ; ] ] ; ] IF(S0URCEMED=2) [ " ENDOSTEUM (MARROW SURFACE) SOURCE " IF(STORE>0) [ TMP5=1000. ; WHILE (TMP5>RAD) [ $RAND0MSET RNG3; $RANDOMSET RNG4; $RANDOMSET RNG5; XIN=(RNG3-0.5) *2.*RAD; YIN=(RNG4-0.5) *C; ZIN=RNG5* (RAD-ZPLANE) +ZPLANE; TMP5=SQRT ( (XIN-XOR) **2+ (ZIN-ZOR) **2) ; ] XSHIFT=ENDOX (STORE) -XIN; YSHIFT=ENDOY (STORE) -YIN; ZSHIFT=ENDOZ (STORE) -ZIN; ST0RE=ST0RE-1; XV0X=NINT ( (XIN+XSHIFT) /L) +IDIM/2; YV0X=NINT ( (YIN+YSHIFT) /YDIM) +JDIM/2; ZV0X=NINT { (ZIN+ZSHIFT) /H) +KDIM/2; PAGE 221 215 ELSE [ EDGEIP0S=1 ; EDGEINEG=1 ; EDGE JP0S=1 ; EDGE JNEG=1 ; EDGEKP0S=1 ; EDGEKNEG STORE=0; WHILE (EDGEIP0S=1 & EDGEINEG=1 & EDGEJP0S=1 & EDGEJNEG=1 & EDGEKP0S=1 & EDGEKNEG=1) [ S0URCEMEDIUM=1; WHILE (SOURCEMED~=SOURCEMEDIUM) [ $RANDOMSET RNG3; $RANDOMSET RNG4 ; $ RANDOMS ET RNG5; XVOX=NINT (RNG3* (IMAX-IMIN) +IMIN) ; YVOX=NINT (RNG4* ( JMAX-JMIN) +JMIN) ; ZVOX=NINT (RNG5* (KMAX-KMIN) +KMIN) ; SOURCEMEDIUM=WHICHMED (XVOX, YVOX, ZVOX) +1; ] "DETERMINE WHERE BONE SURFACES ARE{IF THEY ARE)" EDGEI POS=WH I CHMED ( XVOX+ 1 , YVOX , ZVOX ) ; EDGEINEG=WHICHMED (XVOX-1 , YVOX, ZVOX) ; EDGEJPOS=WHICHMED(XVOX, YVOX+1, ZVOX) ; EDGEJNEG=WHICHMED(XVOX, YVOX-1, ZVOX) ; EDGEKPOS=WHICHMED (XVOX, YVOX, ZVOX+1) ; EDGEKNEG=WHICHMED (XVOX, YVOX, ZVOX-1) ; ] IF(EDGEIPOS=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOX (STORE) =RNG6* (0.001) +L/2.-0. 001+ (XVOX-IDIM/2 . ) *L; ENDOY (STORE) =RNG7* ( YDIM) -YDIM/2 . + ( YVOXJDIM/2 . ) *YDIM; ENDOZ (STORE) =RNG8* (H) -H/2 . + ( ZVOX-KDIM/2 . ) *H; ] IF(EDGEINEG=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ;Â• Â• , ENDOX (STORE) =RNG6* (0.001) -L/2 .+ (XVOX-IDIM/2. ) *L; ENDOY (STORE) =RNG7* (YDIM) -YDIM/2 .+( YVOXJDIM/2 . ) *YDIM; ENDOZ (STORE) =RNG8* (H) -H/2 .+( ZVOX-KDIM/2 . ) *H; ] IF (EDGEJPOS=0) [ , ST0RE=ST0RE+1; $RAND0MSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOY (STORE) =RNG6* (0 . 001) +YDIM/2 . -0 . 001+ (YVOXJDIM/2 . ) *YDIM; ENDOX (STORE) =RNG7* (L) -L/2 .+ (XVOX-IDIM/2 . ) *L; ENDOZ (STORE) =RNG8* (H) -H/2 .+ (ZVOX-KDIM/2 . ) *H; ] IF (EDGEJNEG=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOY (STORE) =RNG6* ( 0 . 001 ) -YDIM/2 . + ( YVOXJDIM/2 . ) *YDIM; ENDOX (STORE) =RNG7* (L) -L/2 .+ (XVOX-IDIM/2 . ) *L; PAGE 222 216 ENDOZ (STORE) =RNG8* (H) -H/2 . + ( ZVOX-KDIM/2 . ) *H; ] IF(EDGEKPOS=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOZ (STORE) =RNG6* { 0 . 001 ) +H/2 . -0 . 001+ { ZVOX-KDIM/2 . ) *H; ENDOY (STORE) =RNG7* (YDIM) -YDIM/2 .+ ( YVOXJDIM/2 . ) *YDIM; ENDOX (STORE) =RNG8* ( L) -L/2 . + (XVOX-IDIM/2 . ) *L; ] IF{EDGEKNEG=0) [ ST0RE=ST0RE+1; $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; ENDOZ (STORE) =RNG6* ( 0 . 001 ) -H/2 .+{ ZVOX-KDIM/2 . ) *H; ENDOY (STORE) =RNG7* (YDIM) -YDIM/2 .+( YVOXJDIM/2 . ) *YDIM; ENDOX (STORE) =RNG8* (L) -L/2 .+ (XVOX-IDIM/2 . ) *L; ] TMP5=1000. ; WHILE (TMP5>RAD) [ $RANDOMSET RNG3; $RANDOMSET RNG4; $RANDOMSET RNG5; XIN= {RNG3-0 . 5) *2 . *RAD; YIN=(RNG4-0.5) *C; ZIN=RNG5*RAD; TMP5=SQRT ( (XIN-XOR) **2+ { ZIN-ZOR) **2) ; ] XSHIFT=ENDOX (STORE) -XIN; YSHIFT=ENDOY (STORE) -YIN; ZSHIFT=ENDOZ (STORE) -ZIN; ST0RE=ST0RE-1; ] ] IPOSI=XVOX; JPOSI=YVOX; KPOSI=ZVOX; IPOS (1)=XV0X; JP0S (I) =YVOX; KPOS (1) =ZVOX; NEWXVOX=XVOX; NEWYVOX=YVOX; NEWZVOX=ZVOX; IF (WHICHMED ( IPOSI , JPOSI , KPOSI ) =0 ) [ IRIN=1; ] IF (WHICHMED (IPOSI , JPOSI , KPOSI ) =1 ) [ IRIN=2; ] IF(S0URCEMED=3) [" CORTICAL SOURCE TMP5=1. ; TMP6=RAD+C0RT+1 . ; WHILE (TMP6> (RAD+CORT) | TMP5>0) [ PAGE 223 217 $RANDOMSET RNG6; $RANDOMSET RNG7; $RANDOMSET RNG8; XIN=(RNG6-0.5) *2.* (RAD+CORT) ; YIN={RNG7-0.5) * (C+CORT) ; ZIN=RNG8* (RAD-CORT-ZPLANE) +ZPLANE+CORT; TMP6=SQRT ( (XIN-XOR) **2+ (ZIN-ZOR) **2) ; IF(TMP6 PAGE 224 218 KSHIFT=ZVOX-OLDZVOX; TOTALISHIFT (NP) =TOTALISHIFT (NP) +ISHIFT; TOTALJSHIFT (NP) =TOTALJSHIFT (NP) +JSHIFT; TOTALKSHIFT (NP) =TOTALKSHIFT (NP) +KSHIFT; ] ELSE [ $RANDOMSET RNGI; $RANDOMSET RNGJ; $RANDOMSET RNGK; XVOX=NINT (RNGI* (IMAX-IMIN) +IMIN) ; YVOX=NINT(RNGJ* (JMAX-JMIN) +JMIN) ; ZVOX=NINT (RNGK* (KMAX-KMIN) +KMIN) ; NEWMED=WHICHMED (XVOX, YVOX, ZVOX) ; TOTALISHIFT (NP) =XVOX-NINT ( (XNXT+XSHIFT) /L) -IDIM/2; TOTALJSHIFT (NP) =YVOX-NINT ( ( YNXT+YSHIFT) /YDIM) -JDIM/2; TOTALKSHIFT (NP) =ZVOX-NINT ( (ZNXT+ZSHIFT) /H) -KDIM/2; /RETURN; END; "END OF SUBROUTINE REINTRODUCE" %E "SUBROUTINE FOR INITIALIZATION OF RANDOM NUMBER GENERATOR " " + + + + + * + + + + + + * + + * + + + + + + f SUBROUTINE RMARIN; ;COMIN/RANDOM/; IF( (IXX.LE.O) .OR. (IXX.GT. 31328) ) IXX=1802; "SETS MARSAGLIA DEFAULT" " BUG. In the following line the assignment previous to 90/09/18 " " was to IXX. This DID NOT upset the randomness of the sequence, " " just the initial starting point. BLIF 90/09/18. IF( (JXX.LE.O) .OR. (JXX.GT. 30081) ) JXX=9373; "SETS MARSAGLIA DEFAULT" I = MOD(IXX/177, 177) + 2 J = MOD (IXX, 177) + 2 K = MOD(JXX/169, 178) + 1 L = MOD(JXX, 169) DO 11=1, 97 [ S=0.0;T=0.5; DO JJ=1, 24 [ M=MOD(MOD(I*J, 179) *K, 179) ; I=J; J=K;K=M;L=MOD(53*L+l, 169) ; IF(MOD(L*M, 64) .GE.32) S=S+T; T=0. 5*T; ] URNDM(II) =S; ] CRNDM = 362436. /16777216. ; PAGE 225 219 CDRNDM = 7654321. /16777216. ; CMRNDM = 16777213. /16777216. ; IXX = 97; JXX = 33; END; ;"END OF SUBROUTINE RMARIN" "SUBROUTINE FOR READING IN BINARY IMAGE" S SUBROUTINE IMAGEREAD; r ;C0MIN/ENERG1/; INTEGER tmpl; CHARACTER* 1 tmp; INTEGER C,XXX, YYY, ZZZ, DUMBY; INTEGER WHICHMED; INTEGER CHANGEMED; EXTERNAL WHICHMED; EXTERNAL CHANGEMED; OPEN (100, FILE=' ../../../. . /bone/600Image98/spine_3D_char.gray' , ACCESS= ' DIRECT ' , ERR=95 , FORM= ' FORMATTED ' , RECL=1 ) ; GOTO 101; 95 PRINT *, 'error opening'; 101 PRINT *, 'after open'; DO XXX=1, IDIM [ DO YYY=1,JDIM [ DO ZZZ=l,KDIM/8 [ ARRAY (XXX, YYY, ZZZ) =0; ] ] ] DO XXX=IMIN-1, IMAX+2 [ DO YYY=JMIN-1, JMAX+1 [ DO ZZZ=KMIN-1,KMAX+1 [ "PRINT *, XXX, IMIN, YYY, JMIN, ZZZ, KMIN; " C=ZZZ+ ( YYY-1 ) *KDIM+ (XXX-1 ) ^KDIM* JDIM; READdOO, '(Al)', REC=C) tmp; tmpl=tmp; IF(tmpl.LE.-l) [ PRINT *, tmpl; ] "PRINT *, 'GOING TO THRESH';" IF(tmpl PAGE 226 220 "PRINT *, 'END OF FIRST DO LOOP';" IF(tmpl>THRESH) [ "PRINT *, XXX, YYY, ZZZ; " "PRINT *, 'test', tmpl, JJ, WHICHMED ( I , J, JJ) ; " ] ] ] ] PRINT *, 'FINISHED READING IMAGE'; END; "SUBROUTINE FILTER" "THIS SUBROUTINE PERFORMS A 3X3 MEDIAN FILTER IN 2 DIMENSIONS" "AND CHANGES IT TO THE MEDIUM IT SHOULD BE (0=BONE, 1=MARR0W) " SUBROUTINE FILTER; IMPLICIT NONE; ;C0MIN/ENERG1/; INTEGER lA, JA, KA, D, E, F, WHICHMED, MEDIAN, DUMMY, PASS, HOLD, IT, MEDIAN; INTEGER HOOD (27) , TMPI, TMPJ, TMPK, CHANGEMED, TMPARRAY (2, 256, 256) ; EXTERNAL WHICHMED; HOOD{0)=0; PRINT *, 'START FILTER' , SIZE; "PRINT *, IMIN, JMIN,KMIN; IF(SIZE=9) [ "***THIS IS THE 2D piltER*********************" DO IA=IMIN, IMAX [ DO JA=JMIN,JMAX [ DO KA=KMIN,KMAX [ DO D=l,3 [ DO E=0, 2 [ H00D(D+3*E)=WHICHMED(IA, JA+D-2,KA+E-1) ; ] ] DO PASS=1,SIZE [ DO IT=0,SIZE-1 [ IF(HOOD{IT) >H00D(IT+1)) [ HOLD=HOOD(IT) ; H00D(IT)=H00D{IT+1) ; H00D(IT+1)=H0LD; MEDIAN=H00D(SIZE/2+l) ; DUMMY=CHANGEMED ( I A, JA, KA, MEDIAN ) ; ] ] ] ] ; IF(SIZE=27) [ "***THIS IS THE 3D FILTER*******************" FOR IA=IMIN TO IMAX+2 [ FOR JA=JMIN TO JMAX [ FOR KA=KMIN TO KMAX [ "PRINT *, lA, IMIN, JA, JMIN, KA, KMIN; DO D=l, 3 [ DO E=0, 2 [ DO F=0,2 [ PAGE 227 TMPI=IA+D-2; TMPJ=JA+E-1; TMPK=KA+F-1; HOOD(D+3*E+9*F)=WHICHMED{TMPI, TMPJ, TMPK) ; "PRINT *, ' DEF' , D, E, F; " ] ] ] "DO D=l,27 [PRINT * , HOOD ( D) ; ] " DO PASS=1,SIZE [ DO IT=0,SIZE-1 [ IF(HOOD(IT) > H00D(IT+1)) [ H0LD=H00D(IT) ; H00D(IT)=H00D(IT+1) ; H00D(IT+1)=H0LD; ] ] ] "PRINT *, 'FILTER' ; " "DO D=l,27 [PRINT *, HOOD (D) ; ] " MEDIAN=H00D(14) ; "PRINT *, MEDIAN, HOOD (13) , HOOD (14) ; IF(IA>IMIN+1) [ DUMMY=CHANGEMED(IA-2, JA, KA, TMPARRAY (MOD ( IA-2 , 2 . ) , JA, KA) ) ; ] TMPARRAY (MOD (lA, 2. ) , JA, KA) =MEDIAN; ] ] ]]; /RETURN; END; %E; "FUNCTION WHICHMED" "THIS FUNCTION RETURNS THE CURRENT MEDIUM OF THE X,Y,Z LOCATION" "NOTE THAT THE MEDIUM IS STORED AS 1 OR 0 ALLOWING FOR BITWISE" "STORAGE" INTEGER FUNCTION WHICHMED (XXXX, YYYY, ZZZZ ) ; INTEGER MEDIUM,ARRAYINDEX,BITINDEX,XXXX, YYYY, ZZZZ; BYTE MASK; ;C0MIN/ENERG1/; ARRAYINDEX=ZZZZ/8 . ; BITINDEX=MOD (ZZZZ, 8 . ) ; "PRINT *, 'IN WHICHMED';" MASK=1; MASK=LSHIFT (MASK, BITINDEX) ; "PRINT *, MASK, BITINDEX; " "PRINT *, ARRAYINDEX, ARRAY (XXXX, YYYY, ARRAYINDEX) ; " MEDIUM=AND (ARRAY (XXXX, YYYY, ARRAYINDEX) ,MASK) ; IF(MEDIUM>0.or.MEDIUM=-128) [ "-128 is when bitindex=7" MEDIUM=1; ] ELSE [MEDIUM=0;] "PRINT *, MEDIUM;" WHICHMED=MEDIUM; PAGE 228 222 "PRINT *, 'LEAVING WHICHMED';" RETURN; END; "FUNCTION CHANGEMED" "THIS FUNCTION READS THE CURRENT MEDIUM OF THE X,Y,Z LOCATION" "AND CHANGES IT TO THE MEDIUM IT SHOULD BE (0=BONE, 1=MARR0W) " INTEGER FUNCTION CHANGEMED (XXXX, YYYY, ZZZZ, MED) ; INTEGER MEDIUM, ARRAYINDEX, BITINDEX, XXXX, YYYY, ZZZZ, MED, WHICHMED; BYTE MASK; ;C0MIN/ENERG1/; EXTERNAL WHICHMED; "PRINT *, 'IN CHANGEMED';" ARRAYINDEX=ZZZZ/8 . ; BITINDEX=MOD(ZZZZ, 8 . ) ; "PRINT *, 'IN CHANGEMED' , XXXX, YYYY, ZZZZ, TOMED; " IF(MED.eq.l .and. WHICHMED (XXXX, YYYY, ZZZZ ). eq . 0 ) [ MASK=1; MASK=LSHIFT (MASK, BITINDEX) ; ARRAY (XXXX, YYYY, ARRAYINDEX) =0R (ARRAY (XXXX, YYYY, ARRAYINDEX) , MASK) ; ] ELSEIF(MED.eq.O .and. WHICHMED (XXXX, YYYY, ZZZZ ). eq . 1 ) [ MASK=1 ; MASK=LSHIFT (MASK, BITINDEX) ; MASK=NOT (MASK) ; ARRAY (XXXX, YYYY, ARRAYINDEX) =AND (ARRAY (XXXX, YYYY, ARRAYINDEX) , MASK) ; ] CHANGEMED=1; RETURN; END; PAGE 229 REFERENCES Ackery, D. and J. Yardley (1993). "Radionuclide-Targeted Therapy for the Management of Metastatic Bone Pain." Semin Oncol 20: 27-3 1 . Akabani, G. (1993). "Absorbed Dose Calculations in Haversian Canals for Several BetaEmitting Radionuclides." The Journal of Nuclear Medicine 34(8): 1361-1366. Arnold, J. S. and C. T. Wei (1972). "Quantitative Morphology of Vertebral Trabecular Bone." In: Radiobiology of Plutonium . B. J. Stover and W. S. Jee. Salt Lake City, J. W. Press: 333-354 Atkins, H. L., L. F. Mausner, S. C. Srivastava, G. E. Meinken, C. J. Cabahug and T. D'Alessandro (1995). "Tin-1 17m(4+)-DTPA for Palliation of Pain from Osseous Metastases: a Pilot Study." Journal of Nuclear Medicine 36: 725-729. Atkinson, P. J. (1965). "Changes in Resorption Spaces in Femoral Cortical Bone with Age." Journal of Pathology and Bacteriology 89: 173-178. Atkinson, P. J. (1967). "Variation in Trabecular Structure of Vertebrae with Age." Calc. Tiss. Res 1:24-32. Atkinson, P. J. and C. Woodhead (1973). "The Development of Osteoporosis." Clinical Orthopaedics and Related Research 90: 217-228. Ballon, D., A. Jakubowski, J. Gabrilove, M. C. Graham, M. Zakowski, C. Sheridan and J. A. Koutcher (1991). "In Vivo Measurements of Bone Marrow Cellularity Using VolumeLocalized Proton NMR Spectroscopy." Magnetic Resonance in Medicine 19: 85-95. Ballon, D., A. A. Jakubowski, M. C. Graham, E. Schneider and J. A. Koutcher (1996). "Spatial Mapping of the Percentage Cellularity in Human Bone Marrow Using Magnetic Resonance Imaging." Medical Physics 23(2): 243-250. Ballon, D., A. A. Jakubowski, P. K. Tulipano, M. C. Graham, E. Schneider, B. Aghazadeh, Q.-S. Chen and J. A. Koutcher (1998). "Quantitative Assessment of Bone Marrow Hematopoiesis Using Parametric Magnetic Resonance Imaging." Magnetic Resonance in Medicine 39: 789-800. Beddoe, A. H. (1976a). The Microstructure of Mammalian Bone in Relation to the Dosimetry of Bone-Seeking Radionuclides. Department of Medical Physics . Leeds, University of Leeds: 172. 223 PAGE 230 224 Beddoe, A. H. (1976b). "A Quantitative Study of the Structure of Mammalian Bone." Journal of Anatomy 122: 190. Beddoe, A. H. (1977). "Measurements of the Microscopic Structure of Cortical Bone." Physics in Medicine and Biology 22(2): 298-308. Beddoe, A. H., P. J. Darley and F. W. Spiers (1976). "Measurements of Trabecular Bone Structure in Man." Phvs. Med. Biol. 21(4): 589-607. BenJosef, E. and A. T. Porter (1997). "Radioisotopes in the Treatment of Bone Metastases." Annals of Medicine 29: 31-35. Berne, R. M. and M. N. Levy, Eds. (1993). Physiology . St. Louis, Mosby Year Book. Bielajew, A. F. and D. W. O. Rogers (1987). "PRESTA, the "Parameter Reduced Electron Step Transport Algorithm" for Electron Monte Carlo Transport." Nucl Instr Meth B18: 165-181. Bolch, W. E., L. G. Bouchet, B. Aydogan, B. W. Wessels and J. A. Siegel (1997). Voxel S Values for use in Dosimetry for Nonuniform Activity Distributions . Eighth International Conference on Medical and Biological Engineering. Bolch, W. E., S. Costes, L. G. Bouchet, B. W. Wessels, J. A. Siegel and J. S. Robertson (1996). Cubical S Values for the Rapid Assessment of Suborgan Dosimetry of Nonuniform Activity Distributions . Proceedings of the Sixth International Radiopharmaceutical Dosimetry Symposium. Bolch, W. E., D. W. Jokisch, P. W. Patton, L. G. Bouchet, D. A. Rajon, B. A. Inglis and S. L. Myers (1998). "NMR Microimaging of Trabecular Bone: A New Tool for the Development of Bone Dosimetry Models." Health Physics 74(6(Suppl)): SI 3. Bone, H. G., D. D. Cody and E. M. Monsell (1994). "Application of Quantitative Computed Tomography to Paget's Disease of Bone." Seminars in Arthritis and Rheumatism 23(4): 244-247. Bouchet, L. G. (1998). Development of Improved Methods for Internal Dosimetry Calculations. Nuclear and Radiological Engineering . Gainesville, FL, University of Florida: 498. Bouchet, L. G. and W. E. Bolch (1999). "A Three-Dimensional Transport Model for Determining Absorbed Fractions of Energy for Electrons within Cortical Bone." J Nucl Med (in press). Bouchet, L. G., W. E. Bolch, R. W. Howell and D. V. Rao (1999a). "S Values for Radionuclides Localized within the Skeleton." J Nucl Med (in press). PAGE 231 225 Bouchet, L. G., D. W. Jokisch and W. E. Bolch (1999b). "A Three-Dimensional Transport Model for Determing Absorbed Fractions of Energy for Electrons within Trabecular Bone." J Nucl Med (in press). Boyde, A., E. Maconnachie, S. A. Reid, G. Delling and G. Mundy (1986). "Scanning Electron Microscopy in Bone Pathology: Review of Methods." Scanning Electron Microscopy 4: 1537-1554. Castleman, K. R. (1996). Digital Image Processing . Upper Saddle River, New Jersey, Prentice-Hall, Inc. Chen, H.-T. and J. W. Poston (1982). "Estimates of Absorbed Energy in Trabecular Bone Due to p-Particles or Electrons." Health Physics 43(5): 647-653. Chevalier, F., A. M. Laval-Jeantet, M. Laval-Jeantet and C. Bergot (1992). "CT Image Analysis of the Vertebral Trabecular Network In Vivo.''' Calcified Tissue International 51: 8-13. Chung, H., F. W. Wehrli, J. L. Williams and S. D. Kugelmass (1993). "Relationship Between NMR Transverse Relaxation, Trabecular Bone Architecture, and Strength." Proc. Natl. Acad. Sci. USA 90(November): 10250-10254. Chung, H.-W., C.-C. Chu, M. Underweiser and F. W. Wehrli (1994). "On the Fractal Nature of Trabecular Structure." Med. Phys. 21(10): 1535-1540. Chung, H.-W., S. N. Hwang, H. N. Yeung and F. W. Wehrli (1996). "Mapping of the Magnetic-Field Distribution in Cancellous Bone." Journal of Magnetic Resonance Series B 113: 172-176. Chung, H.-W., F. W. Wehrli, J. L. Williams, S. D. Kugelmass and S. L. Wehrli (1995). "Quantitative Analysis of Trabecular Microstructure by 400 MHz Nuclear Magnetic Resonance Imaging." Journal of Bone and Mineral Research 10(5): 803-81 1. Ciarelli, M. J., S. A. Goldstein, J. L. Kuhn, D. D. Cody and M. B. Brown (1991). "Evaluation of Orthogonal Mechanical Properties and Density of Human Trabecular Bone from the Major Metaphyseal Regions with Materials Testing and Computed Tomography." Journal of Orthopaedic Research 9: 674-682. Cody, D. D., M. J. Flynn and D. S. Vickers (1989). "A Technique for Measuring Regional Bone Mineral Density in Human Lumbar Vertebral Bodies." Medical Physics 16(5): 766-772. Cody, D. D., S. A. Goldstein, M. J. Flynn and E. B. Brown (1991). "Correlations Between Vertebral Regional Bone Mineral Density (rBMD) and Whole Bone Fracture Load." Spine 16(2): 146-154. PAGE 232 226 Cody, D. D., D. A. McCubbrey, G. W. Divine, G. J. Gross and S. A. Goldstein (1996). "Predictive Value of Proximal Femoral Bone Densitometry in Determining Local Orthogonal Material Properties." Journal of Biomechanics 29(6): 753-761. Coleman, R. (1969). "Random Paths Through Convex Bodies." J Appl Prob 6: 430-441. Collins, C, J. F. Eary and G. Donaldson (1993). "Samarium153-EDTMP in Bone Metastases of Hormone Refractory Prostate Carcinoma: a Phase I/II Trial." Journal of Nuclear Medicine 34: 1839-1844. Cowin, S. C. (1989). Bone Mechanics . Boca Raton, Florida, CRC. Cristy, M. (1981). "Active Bone Marrow Distribution as a Function of Age in Humans." Phvs. Med. Biol. 26(3): 389-400. Custer, R. P. and F. E. Ahlfeldt (1932). "Studies on the Structure and Function of Bone Marrow Variations in Cellularity in Various Bones with Advancing Years of Life and Their Relative Response to Stimuli." The Journal of Laboratory and Clinical Medicine 17: 951-962. Darley, P. J. (1972). An Investigation of the Structure of Trabecular Bone in Relation to the Radiation Dosimetry of Bone-Seeking Radionuclides. Department of Medical Physics . Leeds, UK, University of Leeds. Dawson, R., D. Currow, G. Stevens, G. Morgan and M. B. Barton (1999). "Radiotherapy for Bone Metastases: A Critical Appraisal of Outcome Measures." Journal of Pain and Symptom Management 17(3): 208-218. Dixon, W. T. (1984). "Simple Proton Spectroscopic Imaging." Radiology 153: 189-194. Durand, E. P. and P. Ruegsegger (1992). "High-Contrast Resolution of CT Images for Bone Structure Analysis." Med. Phvs. 19(3): 569-573. Eckerman, K. F. (1985). Aspects of the Dosimetry of Radionuclides within the Skeleton with Particular Emphasis on the Active Marrow . 4th International Radiopharmaceutical Dosimetry Symposium, Oak Ridge, Tennessee, ORAU; CONF-851 1 13. Eckerman, K. F., J. C. Ryman, A. C. Taner and G. D. Kerr (1985). Traversal of Cells by Radiation and Absorbed Fraction Estimates for Electrons and Alpha Particles . Fourth International Radiopharmaceutical Dosimetry Symposium, Oak Ridge, Tennessee, ORAU; CONF-851 113. Eckerman, K. F., R. J. Westfall, J. C. Ryman and M. Cristy (1993). Nuclear Decay Data Files of the Dosimetry Research Group, Oak Ridge National Laboratory. Eckerman, K. F., R. J. Westfall, J. C. Ryman and M. Cristy (1994). "Availability of Nuclear Decay Data in Electronic Form, Including Beta Spectra not Previously Published." Health Physics 67: 338-345. PAGE 233 227 Ellis, R. E. (1961). "The Distribution of Active Bone Marrow in the Adult." Physics in Medicine and Biology 5: 255-258. Engelke, K., W. Graeff, L. Meiss, M. Hahn and G. Delling (1993). "High Spatial Resolution Imaging of Bone Mineral Using Computed Microtomography." Investigative Radiology 28(4): 341-349. Flynn, M. J. and D. D. Cody (1993). "The Assessment of Vertebral Bone Macroarchitecture with X-Ray Computed Tomography." Calcified Tissue International 53(Suppl 1): S170-S175. Foo, T. K. F., F. G. Shellock, C. E. Hayes, J. F. Schenck and B. E. Slayman (1992). "High-Resolution MR Imaging of the Wrist and Eye with Short TR, Short TE, and Partial-Echo Acquisition." Radiology 183: 277-281. Ford, R. L. and W. R. Nelson (1978). The EGS Code System: Computer Programs for Monte Carlo Simulation of Electromagnetic Cascade Shower, Stanford Linear Accelerator Center. Glover, G. H. and E. Schneider (1991). "Three-Point Dixon Technique for True Water/Fat Decompisition with BO in Homogeneity Correction." Magn. Reson. Imaging 18: 371-383. Goddu, S. M., R. W. Howell, L. G. Bouchet, W. E. Bolch and D. V. Rao (1999). "Marrow Sparing Effects of Low-Energy Versus High-Energy Beta Emitters for Palliation of Bone Pain." Int J Radiat Oncol Biol Phys (submitted). Gonzalez, R. C. and P. Wintz (1987). Digital Image Processing . Reading, Massachusetts, AddisonWesley Publishing Company. Gordon, C. L., C. E. Webber, N. Christoforou and C. Nahmias (1997). "In Vivo Assessment of Trabecular Bone Structure at the Distal Radius from High-Resolution Magnetic Resonance Images." Medical Physics 24(4): 585-593. Goulet, R. W., S. A. Goldstein, M. J. Ciarelli, J. L. Kuhn, M. B. Brown and L. A. Feldkamp (1994). "The Relationship Between the Structural and Orthogonal Compressive Properties of Trabecular Bone." J. Biomechanics 4: 375-389. Grampp, S., S. Majumdar, M. Jergas, D. Newitt, P. Lang and H. K. Genant (1996). "Distal Radius: In Vivo Assessment with Quantitative MR Imaging, Peripheral Quantitative CT, and Dual X-ray Aborptiometry." Radiology 198: 213-218. Guglielmi, G., K. Selby, B. A. Blunt, M. Jergas, D. C. Newitt, H. K. Genant and S. Majumdar (1996). "Magnetic Resonance Imaging of the Calcaneus: Preliminary Assessment of Trabecular Bone-Dependent Regional Variations in Marrow Relaxation Time Compared with Dual X-Ray Absorptiometry." Acad. Radiol. 3: 336-343. PAGE 234 228 Hahn, M., M. Vogel, M. Pompesius-Kempa and G. Delling (1992). "Trabecular Bone Pattern Factor--A New Parameter for Simple Quantification of Bone Microarchitecture." Bone 13: 327-330. Hans, D., C. Wu, C. F. Njeh, S. Zhao, P. Augat, D. Newitt, T. Link, Y. Lu, S. Majumdar and H. K. Genant (1999). "Ultrasound Velocity of Trabecular Cubes Reflects Mainly Bone Density and Elasticity." Calcified Tissue International 64: 18-23. Hindmarsh, M., M. Owen, J. Vaughan, L. F. Lamerton and F. W. Spiers (1958). "The Relative Hazards of Strontium 90 and Radium 226." British Journal of Radiology 31: 518-533. Hoskin, P. J. (1995a). "Radiotherapy for Bone Pain." Pam 63: 137-139. Hoskin, P. J. (1995b). "Radiotherapy in the Management of Bone Pain." Clinical Orthopaedics and Related Research 312: 105-119. Hwang, S. N., F. W. Wehrli and J. L. Williams (1997). "Probability-Based Structural Parameters from Three-Dimensional Nuclear Magnetic Resonance Images as Predictors of Trabecular Bone Strength." Medical Physics 24(8): 1255-1261 . ICRU (1992). Photon. Electron, Proton and Neutron Interaction Data for Body Tissues . Bethesda, MD, International Commission on Radiation Units and Measurements. International Commission on Radiological Protection (1975). Report on the Task Group on Reference Man . Oxford, Pergamon Press. International Commission on Radiological Protection (1978). ICRP 30: Limits for Intakes of Radionuclides by Workers . Oxford, Pergamon Press. International Commission on Radiological Protection (1995). ICRP 70: Basic Anatomical and Physiological Data for use in Radiological Protection: The Skeleton . Oxford, Pergamon Press. Janjan, N. A. (1997). "Radiation for Bone Metastases." Cancer 808(8): 1628-1645. Jara, H., F. W. WehrU, H. Chung and J. C. Ford (1993). "High-Resolution Variable Flip Angle 3D MR Imaging of Trabecular Microstructure in Vivo.'" Magnetic Resonance in Medicine 29: 528-539. Jiang, Y., J. Zhao, P. Augat, X. Ouyang, Y. Lu, S. Majumdar and H. K. Genant (1998). "Trabecular Bone Mineral and Calculated Structure of Human Bone Specimens Scarmed by Peripheral Quantitatiye Computed Tomography: Relation to Biomechanical Properties." Journal of Bone and Mineral Research 13(1 1): 1783-1790. Jokisch, D. W. (1997). Nuclear Magnetic Resonance Imaging as a Tool for Studying Beta-Dosimetry in Trabecular Bone and Red Marrow Regions. Nuclear and Radiological Engineering . Gainesville, University of Florida: 99. PAGE 235 229 Jokisch, D. W. and W. E. Bolch (1996). "Estimates of Electron Absorbed Fraction in Trabecular Bone Utilizing Nuclear Magnetic Resonance Imaging Modeling." Health Physics 70(6(Suppl)): SI 3. Jokisch, D. W., P. W. Patton and W. E. Bolch (1997). "A Comparison of Models Utilized to Assess Electron Absorbed Fractions in Trabecular Bone." Health Physics 72(6(Suppl)): S3 5. Jokisch, D. W., P. W. Patton, L. G. Bouchet, D. A. Rajon and W. E. Bolch (1998a). "Methods for Characterizing the Geometry of Trabecular Regions of the Skeleton for Use in Internal Dosimetry." Health Physics 74(6(Suppl)): S39. Jokisch, D. W., P. W. Patton, B. A. Inglis, L. G. Bouchet, D. A. Rajon, J. Rifkin and W. E. Bolch (1998b). "NMR Microscopy of Trabecular Bone and Its Role in Skeletal Dosimetry." Health Physics 75(6): 584-596. Kan, M. K. (1995). "Palliation of Bone Pain in Patients with Metastatic Cancer Using Strontium-89 (Metastron)." Cancer Nursing 18(4): 286-291. Kellerer, A. M. (1971). "Considerations on the Random Traversal of Convex Bodies and Solutions for General Cylinders." Radiation Research 47: 359-376. Kinney, J. H., N. E. Lane and D. L. Haupt (1995). "In Vivo, Three-Dimensional Microscopy of Trabecular Bone." Journal of Bone and Mineral Research 10(2): 264-270. Kleerekoper, M., D. A. Nelson, M. J. Flynn, A. S. Pawluszka, G. Jacobsen and E. L. Patterson (1994a). "Comparison of Radiographic Absorptiometry with Dual-Energy Xray Absorptiometry and Quantitative Computed Tomography in Normal Older White and Black Women." Journal of Bone and Mineral Research 9(1 1): 1745-1749. Kleerekoper, M., D. A. Nelson, E. L. Peterson, M. J. Flynn, A. S. Pawluszka, G. Jacobsen and P. Wilson (1994b). "Reference Data for Bone Mass, Calciotropic Hormones, and Biochemical Markers of Bone Remodeling in Older (55-75) Postmenopausal White and Black Women." Journal of Bone and Mineral Research 9(8): 1267-1276. Krishnamurthy, G. T., F. M. Swailem and S. C. Srivastava (1997). "Tin-1 17m(4+)DTPA: Pharmacokinetics and Imaging Characteristics in Patients with Metastatic Bone Pain." Journal of Nuclear Medicine 38: 230-237. Kuhn, J. L., S. A. Goldstein, L. A. Feldkamp, R. W. Goulet and G. Jesion (1990). "Evaluation of a Microcomputed Tomography System to Study Trabecular Bone Structure." Journal of Orthopaedic Research 8: 833-842. Laib, A. and P. Ruegsegger (1999). "Local X-Ray Tomography for In Vivo Bone Structure Examinations." Medical Physics 26(3): 447-452. PAGE 236 230 Link, T. M., S. Majumdar, W. Konermann, N. Meier, J. C. Lin, D. Newitt, X. Ouyang, P. E. Peters and H. K. Genant (1997). "Texture Analysis of Direct Magnification Radiographs of Vertebral Specimens: Correlation with Bone Mineral Density and Biomechanical Properties." Acad Radiol 4: 167-176. Link, T. M., S. Majumdar, J. C. Lin, P. Augat, R. G. Gould, D. Newitt, X. Ouyang, T. F. Lang, A. Mathur and H. K. Genant (1998a). "Assessment of Trabecular Structure Using High Resolution CT Images and Texture Analysis." Journal of Computer Assisted Tomography 22(1): 15-24. Link, T. M., S. Majumdar, J. C. Lin, D. Newitt, P. Augat, X. Ouyang, A. Mathur and H. K. Genant (1998b). "A Comparative Study of Trabecular Bone Properties in the Spine and Femur Using High Resolution MRI and CT." Journal of Bone and Mineral Research 13(1): 122-132. Link, T. M., S. Majumdar, C. Peterfy, H. E. Daldrup, M. Uffmann, C. Dowling, L. Steinbach and H. K. Genant (1998c). "High Resolution MRI of Small Joints: Impact of Spatial Resolution on Diagnostic Performance and SNR." Magnetic Resonance Imaging 16(2): 147-155. Lloyd, E., R. E. Rowland, D. Hodges and J. H. Marshall (1968). "Surface to Volume Ratios of Bone Determined by Computer Analysis of Microradiographs." Nature 218: 356-366. Lloyd, E. and D. Hodges (1971). "Quantitative Characterization of Bone: A Computer Analysis of Microradiographs." Clin. Orthop. Relat. Res. 78:230-250. Loevinger, R., M. Berman and E. E. Watson (1991). MIRD Primer for Absorbed Dose Calculations . New York, The Society of Nuclear Medicine. Majumdar, S., H. K. Genant, S. Grampp, D. C. Newitt, V.-H. Truong, J. C. Lin and A. Mathur (1997). "Correlation of Trabecular Bone Structure with Age, Bone Mineral Density, and Osteoporotic Status: In Vivo Studies in the Distal Radius Using High Resolution Magnetic Resonance Imaging." Journal of Bone and Mineral Research 12(1): 111-118. Majumdar, S., D. Newitt, A. Mathur, D. Osman, A. Gies, E. Chiu, J. Lotz. J. Kinney and H. Genant (1996). "Magnetic Resonance Imaging of Trabecular Bone Structure in the Distal Radius: Relationship with X-ray Tomographic Microscopy and Biomechanics." Osteoporosis International 6: 376-385. Majumdar, S., D. C. Newitt, M. D. Jergas, A. A. Giess, E. Chiu, D. Osman, J. Keltner, J. H. Keyak and H. K. Genant (1995). "Evaluation of Technical Factors Affecting the Quantification of Trabecular Bone Structure Using Magnetic Resonance Imaging." Bone 17:417-430. McCubbrey, D. A., D. D. Cody, E. L. Peterson, J. L. Kuhn, M. J. Flynn and S. A. Goldstein (1995). "Static and Fatigue Failure Probabilities of Thoracic and Lumbar PAGE 237 231 Vertebral Bodies and Their Relation to Regional Density." Journal of B iomechanics 28(8): 891-899. Mechanik, N. (1926). "Studies of the Weight of Bone Marrow in Man." Zeitschrift fiir die Gest. Anatomy 79: 58-99. Mercandante, S. (1997). "Malignant Bone Pain: Pathophysiology and Treatment." Pam 69: 1-18. Mosekilde, L. (1989). "Sex Differences in Age-related Loss of Vertebral Trabecular Bone Mass and Structure-Biomechanical Consequences." Bone 10: 425-432. Muller, R., T. Hildebrand, H. J. Hauselmann and P. Ruegsegger (1996). "In Vivo Reproducibility of Three-Dimensional Structural Properties of Noninvasive Bone Biopsies Using 3D-pQCT." Journal of Bone and Mineral Research 11(11): 1745-1750. Muller, R., T. Hildebrand and P. Ruegsegger (1994). "Non-invasive Bone Biopsy: a New Method to Analyse and Display the Three-dimensional Structure of Trabecular Bone." Phvs. Med. Biol. 39: 145-164. Muller, R. and P. Ruegsegger (1996). "Analysis of Mechanical Properties of Cancellous Bone Under Conditions of Simulated Bone Atrophy." Journal of Biomechanics 29(8): 1053-1060. Nelson, W. R., R. H. Hirayama and D. W. O. Rogers (1985). The EGS4 Code System, Stanford Linear Accelerator Center. Netter, F. H. (1981). Atlas of Human Anatomy. Summit, New Jersey, CIBA-Geigy Corporation. Odgaard, A., K. Andersen, F. Melsen and H. J. G. Gundersen (1990). "A Direct Method for Fast Three-Dimensional Serial Reconstruction." Journal of Microscopy 159(3): 335342. Ouyang, X., S. Majumdar, T. M. Link, Y. Lu, P. Augat, J. Lin, D. Newitt and H. K. Genant (1998). "Morphometric Texture Analysis of Spinal Trabecular Bone Structure Assessed Using Orthogonal Radiographic Projections." Medical Physics 25(10): 20372045. Ouyang, X., K. Selby, P. Lang, K. Engelke, C. Klifa, B. Fan, F. Zucconi, G. Hottya, M. Chen, S. Majumdar and H. K. Genant (1997). "High Resolution Magnetic Resonance Imaging of the Calcaneus: Age-Related Changes in Trabecular Structure and Comparison with Dual X-Ray Asorptiometry Measurements." Calcified Tissue International 60: 139147. Parfitt, A. M., C. H. E. Mathews, A. R. Villanueva, M. Kleerekoper, B. Frame and D. S. Rao (1983). "Relationships between Surface, Volume, and Thickness of Iliac Trabecular Bone in Aging and in Osteoporosis." Journal of Clinical Investigation 72: 1396-1409. PAGE 238 232 Parry, R. A. (1995). Revised Estimates of Electron Absorbed Fractions and Radionuclide S-values in Trabecular Bone. Department of Nuclear Engineering . College Station, Texas, Texas A&M University: 169. Patton, P. W., D. W. Jokisch and W. E. Bolch (1997). "Nuclear Magnetic Resonance Imaging for Use in Studying the Microstructure and Radiation Dosimetry of Trabecular Bone." Health Physics 72(6(Suppl)): S34-S35. Payne, R. (1608). "Mechanisms and Management of Bone Pain." Cancer 80S(8): 16081613. Polig, E., W. S. S. Jee, R. B. Setterberg and F. Johnson (1992). "Local Distribution and Dosimetry of 226-Ra in the Trabecular Skeleton of the Beagle." Radiation Research 131: 24-34. Porter, A. T. and G. D. Chisholm (1993). "Palliation of Pain in Bony Metastases." Seminars in Oncology 20(3 Suppl 2): 1. Potsaid, M. S., R. J. I. Jr. and F. P. Castronovo (1978). "32P Diphosphonate Dose Determination in Patients with Bone Metastases from Prostatic Carcinoma." Journal of Nuclear Medicine 19: 98-104. Poulsen, H. S., O. S. Nielsen, M. Klee and M. Rorth (1989). "Palliative Irradiation of Bone Metastases." Cancer Treatment Reviews 16: 41-48. Rubin, P. and C. W. Scarantino (1978). "The Bone Marrow Organ: The Critical Structure in Radiation-Drug Interaction." Int. J. Radiation Oncology Biol. Phys. 4: 3-23. Ruegsegger, P., B. Koller and R. MuUer (1996). "A Microtomographic System for the Nondestructive Evaluation of Bone Architecture." Calcified Tissue International 58: 2429. Samaratunga, R. C, S. R. Thomas, J. D. Hinnefeld, L. C. V. Kuster, D. M. Hyams, J. S. Mouhon, M. I. Sperling and H. R. Maxon, III (1995). "A Monte Carlo Simulation Model for Radiation Dose to Metastatic Skeletal Tumor from Rhenium186(Sn)-HEDP." The Journal of Nuclear Medicine 36(2): 336-350. Sebag, G. H. and S. G. Moore (1990). "Effect of Trabecular Bone on the Appearance of Marrow in Gradient-Echo Imaging of the Appendicular Skeleton." Radiology 174: 855859. Sgouros, G. (1993). "Bone Marrow Dosimetry for Radioimmunotherapy: Theoretical Considerations." The Journal of Nuclear Medicine 34(4): 689-694. Sgouros, G., I. M. Jureidini, A. M. Scott, M. C. Graham, S. M. Larson and D. A. Scheinberg (1996). "Bone Marrow Dosimetry: Regional Variability of MarrowLocalizing Antibody." Journal of Nuclear Medicine 37(4): 695-698. PAGE 239 233 Siegel, J. A., B. W. Wessels, E. E. Watson, M. G. Stabin, H. M. Vriesendorp, E. W. Bradley, C. C. Badger, A. B. Brill, C. S. Kwok, D. R. Stickney, K. F. Eckerman, D. R. Fisher, D. J. Buchsbaum and S. E. Order (1990). "Bone Marrow Dosimetry and Toxicity for Radioimmunotherapy." Antibody, Immunoconiugates. and Radiopharmaceuticals 3(4): 213-233. Silberstein, E. B. (1993). "The Treatment of Painflil Osseous Metastases with Phosphorus-32-Labeled Phosphates." Seminars in Oncology 20(3, Suppl 2): 10-21 . Silberstein, E. B. (1996). Treatment of the Pain of Bone Metastases. Skeletal Nuclear Medicine . J. B. David Collier, 1. Fogelman and L. Rosenthall. St. Louis, Mosby-Year Book, Inc.: 491. Snyder, B. D., S. Piazza, W. T. Edwards and W. C. Hayes (1993). "Role of Trabecular Morphology in the Etiology of Age-Related Vertebral Fractures." Calcified Tissue International 53(Suppl 1): S14-S22. Snyder, W. S., M. R. Ford, G. G. Warner and S. B. Watson (1974). A Tabulation of Dose Equivalent per Microcurie Day for Source and Target Organs of an Adult for Various Radionuclides. Oak Ridge, Tennessee, Oak Ridge National Laboratory. Snyder, W. S., M. R. Ford, G. G. Warner and S. B. Watson (1975). "S," Absorbed Dose per Unit Cumulated Activity for Selected Radionuclides and Organs. New York, Society of Nuclear Medicine. MIRD Pamphlet No. 1 1 . Song, H. K., F. W. Wehrli and J. Ma (1997). "In Vivo MR Microscopy of the Human Skin." Magnetic Resonance in Medicine 37: 185-191. Spiers, F. W. (1949). "The Influence of Energy Absorption and Electron Range on Dosage in Irradiated Bone." British Journal of Radiology 22: 521-533. Spiers, F. W. (1951). "Dosage in Irradiated Soft Tissue and Bone." British Journal of Radiology 24: 365-370. Spiers, F. W. (1963). "Interim Report on the Determination of Dose to Bone Marrow from Radiological Procedures." British Journal of Radiology 36: 238-240. Spiers, F. W. (1966a). "Dose to Bone from Strontium-90: Implications for the Setting of the Maximum Permissible Body Burden." Radiation Research 28: 624-642. Spiers, F. W. (1966b). Dose to Trabecular Bone from Internal Beta-Emitters . First International Congress of Radiation Protection, Rome, Italy, Pergamon Press. Spiers, F. W. (1967). Beta Particle Dosimetry in Trabecular Bone . Delayed Effects of Bone-Seeking Radionuclides, Sun Valley, Idaho, University of Utah Press. Spiers, F. W. (1969). Determination of Absorbed Dose to Bone and Red Bone Marrow . AEC Symposium Series 20. PAGE 240 234 Spiers, F. W., A. H. Beddoe and J. R. Whitwell (1978a). "Mean Skeletal Dose Factors for Beta-Particle Emitters in Human Bone Part I: Volume-Seeking Radionuclides." British Journal of Radiology 51: 622-627. Spiers, F. W., S. D. King and A. H. Beddoe (1977). "Measurements of Endosteal Surface Areas in Human Long Bones: Relationship to Sites of Occurrence of Osteosarcoma." British Journal of Radiology 50(599): 769-776. Spiers, F. W. and T. R. Oyerton (1962). "Attenuation Factors for Certain Tissues When the Body is Exposed to Nearly Omni-directional Gamma Radiation." Phys. Med. Biol. 7: 35-43. Spiers, F. W., J. R. Whitwell and A. H. Beddoe (1978b). "Calculated Dose Factors for the Radiosensitive Tissues in Bone Irradiated by Surface-deposited Radionuclides." Phys. Med. Biol. 23(3): 481-494. Stabin, M. G. (1994). MIRD0SE3. Oak Ridge, Tennessee, Oak Ridge Institute for Science and Education. Stabin, M. G. (1996). "MIRDOSE: Personal Computer Software for Internal Dose Assessment in Nuclear Medicine." Journal of Nuclear Medicine 37: 538-546. Takahashi, M., F. W. Wehrli, S. L. Wehrli, S. N. Hwang, M. W. Lundy, J. Hartke and B. Borah (1999). "Effect of Prostaglandin and Bisphosphonate on Cancellous Bone Volume and Structure in the Oyariectomized Rat Studied by Quantitative Three-Dimensional Nuclear Magnetic Resonance Microscopy." Journal of Bone and Mineral Research 14(5): 680-689. Tortora, G. J. (1992). Principles of Human Anatomy . New York, New York, Harper Collins Publishers. Trotter, M. and B. B. Hixon (1974). "Sequential Changes in Weight, Density, and Percentage Ash Weight of Human Skeletons from an Early Fetal Period through Old Age." Anat. Rec. 179: 1-18. Turner, C. H. (1992). "On Wolffs Law of Trabecular Architecture." Journal of Biomechanics 25: 1-9. Twycross, R. G. (1995). "Management of Pain in Skeletal Metastases." Clinical Orthopaedics and Related Research 312: 187-196. U. S. Department of Energy (1995). Environmental Management 1995. Springfield, Virginia, National Technical Information Service. Vaughan, J. (1960). The Relation of Radiation Dose to Radiation Injury in the Skeleton. with Special Reference to ^^Sr . Radioisotopes and Bone, Princeton, New Jersey, F. A. Davis Company. PAGE 241 235 Vaughan, J. (1975). The Physiology of Bone . Oxford, Clarendon Press. Vaughan, J. M. (1973). The Effects of Irradiation on the Skeleton . London, Oxford University Press. Wehrli, F. W., S. N. Hwang, J. Ma, H. K. Song, J. C. Ford and J. G. Haddad (1998). "Cancellous Bone Volume and Structure in the Forearm: Noninvasiye Assessment with MR Microimaging and Image Processing." Radiology 206: 347-357. Wessels, M., R. P. Mason, P. P. Antich, J. E. Zerwekh and C. Y. C. Pak (1997). "Connectivity in Human Cancellous Bone by Three-Dimensional Magnetic Resonance Microscopy." Medical Physics 24: 1409-1420. Whitehouse, W. J. and E. D. Dyson (1974). "Scanning Electron Microscope Studies of Trabecular Bone in the Proximal End of the Human Femur." J. Anat. 118(3): 417-444. Whitehouse, W. J., E. D. Dyson and C. K. Jackson (1971). "The Scanning Electron Microscope in Studies of Trabecular Bone from a Human Vertebral Body." Journal of Anatomy 108(3): 481-496. Whitwell, J. R. (1973). Theoretical Investigationsof Energy Loss by Ionizing Particles in Bone. Dept. of Medical Physics . Leeds, UK, University of Leeds. Whitwell, J. R. and F. W. Spiers (1976). "Calculated Beta-ray Dose Factors for Trabecular Bone." Phvs. Med. Biol. 21(1): 16-38. Williams, J. L. and J. L. Lewis (1982). "Properties and an Anisotropic Model of Cancellous Bone from the Proximal Tibial Epiphysis." Journal of Biomech. Eng. 104: 50-56. Wong, E. C. A. Jesmanowicz and J. S. Hyde (1991). "High-Resolution, Short Echo Time MR Imaging of the Fingers and Wrist with a Local Gradient Coil." Radiology 181: 393397. Woodard, H. Q. and E. Holodny (1960). "A Summary on the Data of Mechanik on the Distribution of Human Bone Marrow." Physics in Medicine and Biology 5: 57-59. Zanzonico, P. and G. Sgouros (1997). "Predicting Myelotoxicity in Radioimmunotherapy: What Does Dosimetry Contribute?" Journal of Nuclear Medicine 38(11): 1753-1754. PAGE 242 BIOGRAPHICAL SKETCH Derek William Jokisch was bom in Alton, Illinois, on April 10, 1973. The son of David and Ardeth Jokisch, Derek was raised in Carlinville, Illinois. Derek graduated as the Salutatorian of Carlinville High School in 1991. He went to the University of Illinois in Urbana-Champaign and graduated with a Bachelor of Science in nuclear engineering and a bioengineering option in 1995. He then enrolled at the University of Florida and received a nuclear engineering/health physics fellowship to pursue graduate work in health physics. He graduated from the University of Florida with a Master of Science in health physics in 1997. Since then, he has been pursuing his Doctor of Philosophy in health physics. After graduation, Mr. Jokisch will be assuming the position of Assistant Professor of Physics/Health Physics at Francis Marion University in Florence, South Carolina. 236 PAGE 243 I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy Wesley E. Bolch, Chairman Associate Professor of Nuclear and Radiological Engineering I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. David E. Hintenlang""'^ Associate Professor of Nuclear and Radiological Engineering I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Tulenko )fessor of Nuclear and Radiological Engineering I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. tiy Jri. Anthony JrO. Ladd Associate Professor of Chemical Engineering PAGE 244 I certify that I have read this study and that in my opinion it conforms to acceptable standards of scholarly presentation and is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Benjamm A. l^^s Assistant Scientist in Neuroscience This dissertation was submitted to the Graduate Faculty of the College of Engineering and to the Graduate School and was accepted as partial fulfillment of the requirements for the degree of Doctor of Philosophy. August 1999 M. J. Ohanian Dean, College of Engineering Winfi-ed M. Phillips Dean, Graduate School |