Computation of radiating particle and wave distributions using a generalized discrete field constructed from representative ray sets
10921756 ยท 2021-02-16
Assignee
Inventors
Cpc classification
A61N5/1045
HUMAN NECESSITIES
International classification
G06F30/23
PHYSICS
Abstract
The present system and method for simulating particles and waves is useful for calculations involving nuclear and full spectrum radiation transport, quantum particle transport, plasma transport and charged particle transport. The invention provides a mechanism for creating accurate invariants for embedding in general three-dimensional problems and describes means by which a series of simple single collision interaction finite elements can be extended to formulate a complex multi-collision finite element.
Claims
1. A radiation treatment system, comprising: a radiation source; a control system in operable connection with the radiation source and one or more processors; a non-transitory computer readable medium having stored thereon instructions that when executed cause the one or more processors to perform steps, comprising: constructing a grid system of voxels representing a physical system, wherein at least one voxel comprises heterogeneous sub-voxels; constructing transport multipliers using a non-stochastic method of specifying geometric particle pathways using ray sets comprising paths traversing a local system of neighboring voxels relative to a reference voxel volume or surface, the ray sets comprising a plurality of representative rays of varying length, the plurality of representative rays being distributed at different angles from a source; specifying ray set pathways using hash encoded data describing the ray pathway through a voxel system; creating initial conditions for computing particle transport; employing a technique for linking computer memory locations representing discrete particle tallies for transporting particles in a sweep of computer memory applying transport multipliers; computing particle interaction using an interaction model and resulting accumulated particle collision tallies to voxel volumes, and using a single in-voxel interaction per interaction sweep, wherein for each ray, a collided and un-collided particle density is used to determine a number of particles interacting; terminating particle transport based on convergence criteria; using one or more discrete phase space variables to model nuclear radiation transport; and constructing a treatment plan based on the modeled nuclear radiation transport, said treatment plan being executed by the radiation source.
2. The radiation treatment system of claim 1 used in a medical radiation treatment.
3. The radiation treatment system of claim 1 used in an intensity modulated radiation therapy or simulation.
4. The radiation treatment system of claim 1 used in an intensity modulated radiation therapy three-dimensional treatment or simulation.
5. The radiation treatment system of claim 1, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using one or more fission parameters within the interaction model and a system generational Eigenvalue.
6. The radiation treatment system of claim 1, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using one or more generational moments within the interaction model.
7. The radiation treatment system of claim 1, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using a function coefficient deposition method for spatially mapping surface or subsurface tally distributions.
8. The radiation treatment system of claim 1, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using a function coefficient deposition method for data compression.
9. The radiation treatment system of claim 1 further comprising: an analogue control system; and an external beam machine.
10. The radiation treatment system of claim 1, wherein the instructions that when executed cause the one or more processors to perform further steps comprising creating initial conditions for computing gamma and x-ray particle transport in a body.
11. The radiation treatment system of claim 1, wherein the transport multipliers comprise a summation of an un-collided fraction of discrete particles transported from a source location to a terminal location.
12. The radiation treatment system of claim 1, wherein employing the technique for linking computer memory locations representing discrete particle tallies for transporting particles in a sweep of computer memory applying transport multipliers comprises determining particle transport to function coefficients, surface and volume discrete particle tally locations through an impulsive sweep.
13. A particle transport system, comprising: a non-transitory computer readable medium having stored thereon instructions that when executed cause one or more processors to perform steps, comprising: constructing a grid system of voxels representing a physical system, wherein at least one voxel comprises heterogeneous sub-voxels; constructing transport multipliers using a non-stochastic method of specifying geometric particle pathways using ray sets comprising paths traversing a local system of neighboring voxels relative to a reference voxel volume or surface, the ray sets comprising a plurality of representative rays of varying length, the plurality of representative rays being distributed at different angles from a source; specifying ray set pathways using hash encoded data describing the ray pathway through a voxel system; creating initial conditions for computing particle transport; employing a technique for linking computer memory locations representing discrete particle tallies for transporting particles in a sweep of computer memory applying transport multipliers; computing particle interaction using an interaction model and resulting accumulated particle collision tallies to voxel volumes, and using a single in-voxel interaction per interaction sweep, wherein for each ray, a collided and un-collided particle density is used to determine a number of particles interacting; and terminating particle transport based on convergence criteria.
14. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using a plurality of discrete phase space variables to model electromagnetic particle transport.
15. The particle transport system of claim 14, wherein said electromagnetic particle transport comprises infrared waves, optical waves, UV waves, radio waves, or a combination thereof.
16. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using a plurality of discrete phase space variables to model radiative heat transfer.
17. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using a plurality of discrete phase space variables to model sound waves.
18. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising storing results of the computed particle transport.
19. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising: determining one or more design optimization characteristics from the computed particle transport; and determining an initial particle distribution for trial optimization.
20. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using one or more distance moments to differentiate surface and volume emanating particle distributions.
21. The particle transport system of claim 13 used in computing the interaction model.
22. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising: using a fine grained interaction model to represent sub-volume interactions; using a surface initial particle distribution to determine an interaction model response; and using one or more voids to permit ray set assignment based on applicable distance moments used for differentiating surface and volume emanating particle distributions.
23. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using a fine grained interaction model configured by computing particle interactions within voxels, comprising: computing collision probabilities within voxel volumes; computing physical parameters associated with interactions; computing volume or surface discrete particle tally distributions from interactions; and computing function coefficients representing angular distribution for high order particle scatter modeling.
24. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising explicit modeling of representative ray external beams entering a system, the modeling comprising: representative ray modeling of particles streaming into the system; using another interaction model to create an initial scattered radiation source; and using function coefficients to generate an initial scattered radiation source distribution.
25. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using a particle transport solution within a specific time epoch to model a transient system.
26. The particle transport system of claim 13, wherein the instructions that when executed cause the one or more processors to perform further steps comprising using an absolute system boundary convergence related to initial impulse.
27. The particle transport system of claim 13 used for non-fissile, non-time Eigenvalue problems.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The skilled artisan will understand that the drawings, described below, are for illustration purposes only. The drawings are not intended to limit the scope of the present teachings in any way.
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
DESCRIPTION OF VARIOUS EMBODIMENTS
(19) Monte Carlo tracks each discrete particle history exactly and develops a stochastic result using hundreds of millions (if not billions) of exact particle histories (E. Cashwell & C. Everett, The Practical Manual on the Monte Carlo Method for Random Walk Problems, Pergamon Press (1959)). The present teachings invert this process by defining discrete particles that occupy computer memory in a detailed phase spaceessentially representing millions of distinct phase space particle count values. Stated otherwise, the present teachings exactly and efficiently computes distributed phase space discrete particle transport to local surfaces, function coefficients and volumes, reducing the results of these calculations to a multiplication field appropriate for each surface, function coefficient and volume. The approximation involved in the calculation is the assumption that the increment of the discrete particle itself is truly constant. Thereafter, exact calculations are used to determine generalized field transport multipliers in a local area to create continuity, with extensions to a generalized area.
(20) Discrete particles emanating from surfaces and volumes are directly wired to LVG neighboring surfaces, function coefficients and volumes through multiplier, voxel pointer pairsto provide a near exact local solution of particle transport (the assumption being the constancy of the discrete particle itself). The LVG provides a local exact solution that reduces the particle count contribution from a local reference voxel volume or surface to external voxel volumes and surfaces. This provides the accuracy required to tackle three-dimensional problems, as opposed to imbedded invariants methods that break down past one dimension. The LVG multiplier field greatly reduces ray effects as particles are properly distributed in a local system. Those particles that are not distributed within the LVG are attenuated and emanate from the LVG surface. The distribution of particles emanating from a surface may be explicitly tracked either through a direct tally process or function deposition in a least squares sense to determine the angular distribution at the surface interface. In a similar fashion, function coefficient tallies may be used with complex interaction models to allow for high order particle scattering, for example anisotropic P.sub.5.
(21) A ray set concept is introduced to the phase space of the discrete particles to provide accurate LVG-to-LVG surface interface transport of particles, further improving accuracy. The computer memory system is then swept, allowing discrete particles to conceptually travel from surfaces to surfaces, from surfaces to volumes, from volumes to surfaces and from volumes to volumes in an abstract sense using the transport multiplier/pointer system (
(22) By decoupling interaction from multiple collision transport, exact direct local analytic solutions along ray paths through voxels are possible. The Interaction Model then serves to produce new voxel discrete particle sources for further discrete particle transport sweeps. Thus by employing exact transport solutions of approximate discrete particles, high accuracy is achieved through the use of many phase space particles. Single multipliers are employed within the LVG, providing direct non-stochastic results very quickly.
(23) The fundamental difference between this method and a classic Green's Function Approach [R. D. Lawrence and J. J. Doming, A Nodal Green's Function Method for Multidimensional Diffusion Calculations, Nuclear Science and Engineering 76, 218-231 (1980)] is that a Green's function solves a boundary value problem either over the entire time domain and all scattering interactions moments, and is therefore constrained to boundary conditions. Whether one solves a 1-D or multidimensional Green's function response, the Green's function describes all events that occur between two points over time. In the present teachings, the one-dimensional first flight collision solution is a transport solution with a vacuum boundary that is irrelevant in terms of time. As a result, there is no approximation; it is a true transport solution. An outer iteration and separate interaction model account for scattering interactions and reaction rate/transient variables. The Green's function approach creates a full matrix response that includes scatter and, as a result, approximations such as modified diffusion theory must be made. What the present teachings and Green's functions share is location coupling. However, the present teachings provide far greater accuracy by separating out the scatter component in a separate time and scattering iteration.
(24) The use of discrete particle definitions completely differentiates the present teachings from all prior art. Furthermore, the reduction of ray set data to form memory pointer/multiplier pairs is also unique to the instant teachings, as is the use of ray sets to provide extensions for accurate LUG-to-LUG particle transport.
EXPLANATION OF THE DRAWINGS
(25) The figures contained herein sequentially describe the invention and the manner in which it may be utilized to overcome the problems in the prior art. Set forth below is a description and explanation of each figure.
(26)
(27) This figure presents a simple depiction of a finite incremental surface traversed by a representative particle on a particular ray. Ray tracing from volumes to surfaces may deposit particles uniformly on the smallest incremental surface. Rays emanating from surfaces may be assumed to proceed from the surface center, losing some information. Alternatively, in a pre-compute variant of the instant teachings, surface distribution of rays may be uniform across the surface. The angular representation of particles across rays may be explicit for all angles for each incoming ray set. Alternatively, particles from volumes to surfaces may be deposited to function coefficients constructed from a least squares error matrix to provide for surface data compression (See
(28) In some embodiments of the present teachings, function coefficients can be used to determine detailed spatial particle distributions across a single surface, sub-surface or plurality of surfaces. These methods are discussed in greater detail in the
(29)
(30) This figure graphically illustrates the voxel and grid system concept. Voxels may be regular or irregular in shape, as depicted. Voxels may be of a homogenous material, or they may be bounded surfaces with heterogeneous sub-voxels within a larger system of grids. In the latter case, the voxel response is specified by the surface interface. A heterogeneous voxel can be generated by the present teachings, and embedded into a grid system. In such a case the surface surrounding the embedded voxel acts as an interface between that voxel and the remaining grid system. Furthermore, the embedded voxel may comprise sub-voxels with like or differing angular ray set distributions (see
(31)
(32) This figure shows representative rays emanating from a surface point on a 2D plane. Each ray is traced with coupling multipliers associated with the source surface. The appropriate integration kernel is applied for each ray trace to accumulate surface to position multipliers in this depicted case.
(33)
(34) This figure illustrates that multiple rays with identical angle and surface state values s and , may emanate from sub-surfaces following various paths through a system of voxels. These pathways are combined to form single multipliers from the surface to each surrounding node, though many rays may emanate from the surface. The combination of multiple rays to a single multiplier greatly improves processing time without sacrificing accuracy. Pre-computation of sets of rays traversing a regular system of voxels can be used to improve processing speed in regular systems (See
(35)
(36) This figure illustrates the bounding of a group of voxels to form a local voxel group. In some embodiments of this 2D depiction, the inner group of voxels is completely isolated from the outer group. In such a case, ray tracing and coupling from within the LVG terminates on the bounding surfaces, and ray tracing from outside the LVG terminates on the boundary. This isolation provides a practical mechanism for changing out individual voxels or voxel groups to arbitrary resolution. In various embodiments, consistent ray set angular dependence is maintained within and without a ray-set if enough memory exists to do so. Alternatively, one can map differing angular ray-set distributions from within and without the LVG boundary. In further embodiments, one can utilize direct function coefficient deposition to provide a generalized translation mechanism (described below).
(37)
(38) This figure illustrates the data relationship of the pointer/multiplier pairs and sets of the present teachings. In the present teachings, the pointer within the pointer/multiplier table refers to either a remote voxel interaction score terminal, a discrete surface terminal or a set of function coefficient terminals. In various embodiments, referential hash tables can be used as illustrated in this figure to reference particular ray sets with pointers on a grid position basis. There are various ways of accomplishing this particular task, and a variety of data structures can be used. Depicted in this figure is the preferable light memory footprint data structure containing ray-set indices associated with particular remote pointers. A benefit of these embodiments is that one can quickly change out remote voxel interaction points, surfaces and functions with a minimum of processing steps when reference is made to ray-set indices.
(39) For example, when changing out a particular position interaction point, all pointers associated with that point are identified, and all ray sets from all positions passing through that point are recomputed to affect the material property change. Use of hashing techniques as depicted, relating ray sets to terminal pointers, speeds processing of the material change out.
(40) The pointer transport multiplier table of the present teachings can be established using a ray tracing technique from particular points within voxels or surfaces of voxels. Such a ray tracing technique can take two forms, generalized with established angular sets or point to point. It can also be accomplished using a pre-computed representative ray-set scheme (see
(41) In both the point to point and pre-computed cases, uniform distribution of points within voxels and surfaces are used in combination with an appropriate angle distribution P() are used to accumulate the representative ray set multipliers. Angular weights are back calculated as discussed in the description of
(42) For the forward ray-tracing technique, from a voxel interaction point, transport multipliers are accumulated by using a number of points within each voxel representing the interactions within the voxel. Each point is given both a spatial weight, representing the volume represented by the point, and a position. Judicial selection of positions and weights is used to minimize mathematical operations associated with each point.
(43) For each ray trace, the unique direction of the ray is ascertained and the ray is further weighted by the solid angle represented by the particular ray. In general, this is found as w.sub. =sin() /4 as decomposed in polar, azimuthal spherical coordinate form where w.sub. represents the discrete angular weight. The problem appropriate integration kernel is applied representing attenuation through the system of voxels to further reduce the multiplier weights.
(44) In all cases, the transport multipliers are accumulated for each representative ray or for a set of representative rays (
(45) In various embodiments of the present teachings, the transport/multiplier system of
(46) The functional coefficient deposition used in various embodiments of the present teachings can be generated in a number of ways and has two modes of use. Each deposition to a functional coefficient is accumulated through the weighting of both the straightforward single collision integration kernel and an appropriate functional weight for each ray-set contributing to the coefficient. Function coefficient deposition can be predetermined in the pre-compute option, and the weights are generally computed only once for any given grid system.
(47) To accumulate a functional coefficient in various embodiments, one method is to compose a least squares error matrix which is the inverse of the curvature matrix (See P. R. Bevington, Data Reduction and Error Analysis for the Physical Sciences, page 153, McGraw Hill Book Company, (1969) Library of Congress Catalogue number 69-16942) associated with each ray set angle that contributes to a set of coefficients. It is well known in mathematics that given an orthogonal function, one can generate a coefficient matrix relating particular independent parameter sample points (such as indexed representative ray set direction parameters) using a least squares approach. This represents the weighting appropriate to deposit a particular sample function point to a particular coefficient. Consider, for example, the well-known case of a spherical harmonic basis function:
Y.sub.lm={(2l+1)/4(1m)!/(1+m)!P.sub.lm(cos )e.sup.im}.sup.1/2
Y.sub.l(m)=(1)Y.sub.lm*(,)
Where P.sub.lm (cos ) is an associated legendre polynomial and i in the above polynomial represents an imaginary number. The construction of an angular function representing particle tallies as a function of discrete bins is (, )=.sub.l.sub.m C.sub.lmY.sub.lm(, ) where formally the summation of 1 is from 0 to and the summation of m is from 1 to +1.
(48) As it is known before hand all possible sample point independent parameters (these are discrete ray set values of angles or direction cosines), one constructs a least squares weighting matrix by linearizing the coefficient matrix C.sub.lm to a convenient form C.sub.j. One then constructs a coefficient weight matrix over i raysets as:
wij=.sub.k(y.sup.Ty).sup.1y.sup.T
where w.sub.ij represents the weight appropriate for each ray set direction i for j, x linearized coefficients and where
(49)
with each function evaluated at each i point from 1 to n. The k summation reducing the symmetric square coefficient matrix is possible because the evaluation of the function in the transport sweep is always performed at known points. The resulting weighting matrix is used to modify transport multipliers for each ray accumulated to function-coefficient pointer/transport multiplier terminals C.sub.j. These linearized coefficients correspond to C.sub.lm so that the function (, ) can be re-constructed with least squares fitting accuracy. The weights, w.sub.ij do not depend on actual values of (, ) but rather the known sample points .sub.i, .sub.i associated with each particular rayset contributing to n transport multipliers associated with the linearized function coefficients. The function is fully constructed in the transport problem sweep:
C.sub.j=.sub.vt.sub.v*.sub.ig.sub.iv*w.sub.ij
Where v represents each voxel contributing to a particular terminal, g.sub.iv is the contribution from voxel v to the tally where the coefficients are accumulated, and the summation over all relevant n angles was computed as part of the transport multiplier process in a setup calculation (
(50) It must be remembered that while a function is being used for data compression, it is formally a function of discrete tallies. Actual transport multipliers still proceed from surfaces using an explicit fine-grained discrete tally ray-set structure. The function only serves to translate ray set angular systems at a surface boundary, or compress data.
(51) For the example case of a solid spherical harmonic function, the utility and first mode of use is obvious. Rather than depositing to a single interaction tally within a voxel, appropriate only for modified P.sub.1 scattering the spherical harmonics function form allows for higher order anisotropic P.sub.n scattering in any given interaction voxel. It is traditional to use spherical harmonics functions of this sort for higher order scattering computation. High order double differential scattering data comes in forms that are readily amenable for use with such a representation.
(52) The second mode of use of these embodiments is as a data compression scheme for surfaces. This alleviates the need for thousands of individual ray set accumulators on LVG surfaces to exactly represent the angular deposition distribution from voxels to surfaces. Rather than having a huge number of individually tracked i ray sets accumulate at a boundary, one only needs C.sub.j coefficients, which aggregate many different i ray set angles. In so compressing the deposition to the C.sub.j coefficients, in general fewer multiplication operations are required to construct an accurate surface shape and fewer memory locations are required to store pointer multiplier pairs.
(53) In addition to data compression, this functional form also serves to permit translation of one set of angular sets to another set at the surface interface. An LVG surface that completely isolates an LVG or heterogeneous voxel from the general system can utilize differing angular discretization schemes. For example, one can use a point-to-point system for the outside grid system, and a ray-tracing technique or pre-computed model either inside the isolated LVG. One can also use the same system of computing discrete angles, but have differing angular sets orders. For example, one may have hundreds of ray set angles on the outside of a system, and thousands of discrete angles used in the inside of the isolated LVG. The functional forms permit translation across the boundaries through functional interpolation. In all instances, the functions are used to re-compute angular tallies over each ray set solid angle direction. One set of functional coefficients is used from the inside out, and another set from the outside in along the LVG surface boundary.
(54) While this is one form of use of the functional coefficients, this does not preclude other function deposition techniques. In the method described above, any orthogonal function may be used, and specific experiments using surface harmonics, which are related to spherical harmonics, as well as general orthogonal polynomials have been carried out.
(55) Additionally, one can use B-Splines with pre-computed Bezier points to affect data compression and translation. Wavelets might also be employed to improve data compression accuracy (See Y. Nievergelt Wavelets Made Easy Birkhauser (1999) ISBN 0-8176-4061). Though generation of coefficients is different, the approach is still one of depositing transport multipliers to a coefficient system. Such a method has advantages in reducing the coefficients associated with tally function reconstruction. However the solid spherical harmonic or surface harmonic functional forms are preferred for data consistency, historic and theoretical reasons. It is consistent with the forms used in double differential scattering cross sections allowing for simple resolution of scattering through consistent orthogonal functions.
(56)
(57)
(58) A. Physical System Database (
(59) Modeling of the transport of particles requires some specification of material and geometry layout associated with the transport medium. Such physical system input is usually obtained from a database.
(60) B. Grid Construction (
(61) Consider for example a grid system of voxels. The grid overlays a physical system being modeled with material compositions within each voxel. Converting a graphic image of a physical system into voxels forms the grid system. Alternatively, specific input of a voxel grid system can be entered into the system (
(62) For IMRT 3DRTP, the physical system is a 3D human model comprising tissue and bone as well as any metallic insert tabs and prosthesis. A grid system overlays the representation of the body and any material properties within, such as gamma ray homogenized macroscopic x-sections. This grid system may come from commercial 3D graphics package information converted to a suitable grid system. Preferably, such a grid system is irregular forming about bone and tissue to maximize accuracy by minimizing the need to homogenize voxel material.
(63) C. Ray Set LVG ConstructionOverview (
(64) One can generate ray sets inline (
(65) Core to ray set modeling is the use of a single in-voxel interaction per interaction sweep. For each ray, the collided and un-collided particle density is used to determine the number of particles interacting, and hence subject to the Interaction Model (
(66) Alternatively, one can utilize a technique similar to the discrete transfer method to determine ray sets passing through an LVG emanating from reference voxel surface or volume (Lockwood et al., supra; Cumber, supra). The major differences between such an approach within the context of the present teachings is that rays emanating from volumes are not represented solely from the centroid. Most importantly, it is preferred to consider only the first flight interaction through the LVG, and use the separate interaction model to handle scattering. The present teachings consider radiation transport in a forward direct approach with an iterative approach to handle particle scattering. These differences contribute to a significant improvement in accuracy. One can use a point-to-point method for surface-to-surface transport coupling that is similar to DTM, however, a pure ray tracing technique with predefined ray set angular groups provides excellent results and allows for simplified embedding of invariant voxel groups within a larger system. Furthermore, the present teachings provide for direct transmission to general function coefficients with the merits of the approach as discussed in the
(67) One can also use standard analytic direct solutions of appropriate particle transport equations for inline (
(68) In the point to point method, the applicable angular distribution, particularly for the IM within voxel volumes and cosine for surfaces, is factored into the associated fractions of representative rays traveling from the reference point to LVG surface point based on the solid angles formed by the set of all points from the reference voxel surface or volume.
(69) In the forward ray-trace method, a sufficiently large number of solid angle discrete groups can be used to alleviate the need for surface P() distribution assumptions.
(70) D. Pre-Computed Ray Set (
(71) For the pre-computed ray set option, the following equations describe the processes involved for computing frequency and voxel length. The frequency associated with a particle ray set over a subsurface, sub-angular group is given as:
(72)
Where p() is the particle distribution appropriate for particles streaming through the applicable surface within the solid group .sub.j. Note that different levels or collision moments of p() are possible. Near particle source distributions p() are appropriate for the Interaction Model under consideration (e.g. flat voxel volume distribution, isotropic). Relatively far from attenuated distributed sources, p() would represent a cosine distribution normal to S. S.sub.i and .sub.j represent ray set bounded surfaces and angular groups appropriate for the applicable ray set. .sub.i,j(S.sub.i,.sub.j) represents the indexed appropriate frequency of particles traversing a particular ray set.
(73) We now consider an average ray length within a ray set, , within voxel l as:
(74)
Where r.sub.l,i,j(S.sub.i,.sub.j) is the voxel and path dependent average ray length.
(75) The solution of these integrals, even for two-dimensional tessellations is often non-trivial. There are frequently complex dependencies between S and . As such, the most general approach to solving pre-computed ray set frequencies and lengths is Monte Carlo. While this reverts to a stochastic process, one must remember that the computation is off-line and does not involve attenuationhence material properties are irrelevant. The geometric properties obtained are later combined with material properties to determine transport multipliers (
(76)
(77)
(78) One generates a source particle using the p() distribution appropriate for the reference voxel surface or volume (
(79) For IMRT 3DRTP, as well as other particle transport, various embodiments of the instant teachings in the pre-compute mode use a two set distribution moment approach, considering source and scattered particles from voxel volumes with their particular distribution as one set. Those particles emanating through an LVG surface are cosine distributed within angular groups and form the second moment set.
(80) However, as mentioned previously in the
(81) The source particle is next projected to the LVG boundary along a particular voxel pathway (
(82) The source particle, particle projection and scoring procedures are repeated (
(83) Upon receipt of a tally signal or predetermined count (
(84)
(85)
(86) Line 1: Number of Ray Sets
(87) There can be from a few dozen to tens or even hundreds of thousands of ray sets depending upon the specification of size, angular groups and geometry. This is the 12927.sup.th ray set in a 6.sup.3, 8 angular group system. The 10 represents the number of voxels traversed. [0][0][0] represents the angular group in terms of u, v and w cosine angle groups.
(88) Lines 2-4
(89) Line 2 reflects the hash code used to differentiate this particular ray set. The use of hash codes (or alternatively binary trees) provides an efficient mechanism to track ray sets. The direction cosines are provided [0][0][0] followed by two entries of 336. This value represents the unique LVG exit surface point coordinate. As it happens, this value is also the same for the adjacent LVG exit surface coordinate when the local exit surface is used as a reference for an adjacent LVG system. The values that follow are pairs representing the voxel and exiting surface index, 1 thru 6 for cubic voxels (note that one may have 24, 54 or more surfaces for regular cubic voxels). Lines 3 and 4 provide the LVG surface exits for convenience.
(90) Line 5
(91) Line 5 represents the average path length (based on a unit 1 cubic voxel) divided by the count of particles (not used). This is followed by the longest and shortest ray within the ray set, and finally the frequency of the ray set rays as sampled from p().
(92) Lines 6-15
(93) Lines 6-15 provide the detailed pathway, each voxel per line of the average representative ray in [I][j][k] coordinates followed by the emergent side, followed by the average length traversed in each voxel.
(94) Line 16
(95) Line 16 specifies that there are 3 representative rays for the setsimilar in concept to panel integration.
(96) Line 17
(97) Line 17 provides information for the first panel, panel 0, followed by the average ray length to LUG boundary, maximum length and minimum length.
(98) Line 18
(99) Line 18 is a continuation of the above with the relative frequency of the representative ray within the ray set, followed by the upper length interval used.
(100) Lines 19-28
(101) Lines 19-28 supply the panel representative ray lengths for the pathway.
(102) Lines 29-40 and 41-52
(103) Lines 29-40 and 41-52 repeat the above sequence for panel 0 for the other two panels, 1 and 2 respectively. This completes the information for the 3 panel representative ray set.
(104) While Monte Carlo is generally the preferred method for complex geometries, other methods of solving the geometric integrals presented above for ray set frequency and voxel traversal length can be employed provided that such methods are capable of providing data similar to that of
(105)
(106) Pre-Compute Material Specific LVG Construction (
(107) Given the output presented in
(108) The first step in processing a reference voxel position ( as well as all explicit state particles that are affected by particle-material interaction such as energy E.
(109) The next step is to allocate terminal memory for the reference voxel position ( as well as other material state variables. Following this allocation, terminal discrete particle memory pointer keyed hash tables are created for accumulating multiplier values by referencing terminal positions of the LVG (
(110) Finally, one walks through each ray set grid position system, starting from the reference voxel position, to compute and accumulate discrete particle multipliers from the reference to the LVG terminals (
(111) As an example, for a gamma ray attenuation in IMRT, a transmission multiplier at the voxel surface would be *e.sup..sup.
(112) In some embodiments of the instant teachings, it is better from a memory utilization standpoint to simply have a vector of multipliers that are properly ordered to correspond to LVG terminal location sweeps. Instead of pointer, multiplier pairs, the multipliers are arranged in a single vector that corresponds to pointer arithmetic utilized in the sweep. This is most easily accomplished for interior LVGs that do not include boundaries.
(113) It is important to note that the pre-computed geometric property LVG construction process does not need to be carried out at every point in the grid system. Pattern matching of material indices within the grid can be applied to identify systems where the same multipliers may be used, and simple pointer arithmetic applied to translate the LVG array values to other identical material locations. (See J. Karkkainen & E. Ukkonen, Two-and Higher-Dimensional Pattern Matching in Optimal Expected Time, 29 SIAM J. COMPUT., 571-589 (1999) for examples of efficient multi-dimensional pattern matching algorithms.) For regular grid systems where pre-computed LVG geometric systems are applicable, some form of pattern matching to speed up computations is preferred, as long as material compositions within the grid are not highly differentiated. Likewise, in various embodiments of the present teachings, pattern matching is preferred for use in IMRT 3DRTP when regular grids are used.
(114)
(115) A. Inline Ray Set LVG Construction (
(116) In some embodiments, a preferred method for calculating discrete particle transport multipliers from reference positions in irregular grid systems throughout a single LVG is to utilize a point-to-point methodology somewhat similar to the ray layout of the discrete transfer method. The goal of the inline LVG construction is to assemble a ray set based computation of the discrete particle transport multiplier directly. As the spatial distribution of the source discrete particle is constant, and the pathway to the other discrete particle space is known, any direct conventional radiation transport method can be applied to compute the transport multiplier on a unit discrete source basis (See, e.g., Bellman et al., An Introduction to Invariant Imbedding, SIAM (1992); A. Shimizu, Development of Angular Eigenvalue Method for Radiation Transport Problems, 37 J. Nuclear Science and Technology, 15-25 (2000); Olvey et al., Accuracy Comparisons for Variational R, T and T.sup.1 Response Matrix Formulations, 14 Annals of Nuclear Energy, 203-209 (1987); Sternick et al., The Theory & Practice of Intensity Modulated Radiation Therapy, Advanced Medical Publishing, 37-49 (1997)). Use of these constructions on a one-time basis necessitates the use of a large number of angular groups to mitigate ray effects. A conventional ray tracing technique can be used in such an approach, and there are times when it is necessary to do so. However, it is preferable to retain the ray set concept in preference to angular groups to link LVG surfaces even for arbitrary or irregular grid systems. Whether using the point-to-point method or conventional ray tracing, the algorithm is practically the same and is presented in
(117) The first step is to allocate memory for surfaces. For the point-to-point method, the angular distributions are computed associated with the centers of surfaces. If one is using a ray tracing technique, the angle system is predefined. In both instances, the relative solid angle area represented by a ray is used to determine initial weighting for volume to surface coupling. Surface to surface coupling is on a per ray-set basis and does not require special weighting unless function coefficients are used as the end points. Following block B1, ray-tracing and point-to-point methods are identical.
(118) In
(119) B. Initial Discrete Particle Input (
(120) We now consider that at voxel boundaries we may have an initial condition of discrete particles specified with appropriate state variables. A discrete particle count spans the entire voxel surface from which it emanates. Coincidentally or alternatively, initial conditions can also be provided as the number of source particles emanating from voxel volumes given as a source particle count. However, these values can be converted to an initial discrete particle count on the source voxel surfaces. For IMRT 3DRTP, the initial conditions for modeling scattered radiation within tissue proceed from a primary direct ray calculation (
(121) C. Discrete Particle Transport Sweep (
(122) Once the initial source conditions have been specified for discrete particles, whether through Block 3 or 9A, one can proceed with the transport sweep. During the particle sweep, particles are transported to voxel discrete particle tallies for interaction model computation as well as LVG surface boundaries for further transport.
(123) This comprises simply sweeping through each discrete particle location with non-zero count as a reference. At each reference, one sweeps through the linear system of LVG terminal-multiplier pairs, applying each multiplier to the reference discrete particle count to accumulate fractional particle counts at the terminal discrete particle pointer locations.
(124) This computation can be carried out until one reaches an internal convergence where most non-interacting particles are swept from the system. Variation of the internal convergence method may be needed for transient problems where the discrete time state epoch t cannot be ignored. Additionally, such a method might be preferable in some embodiments, depending on the computation cost associated with the IM. The transport sweep, however, may be performed for reference LVGs without internal convergence. In this case, the IM is applied immediately after particles are transported to LVG boundaries. For IMRT 3DRTP, it is preferable to sweep through local LVG terminals and compute further scatters using the IM as one iterative sweep system.
(125)
(126) A. Interaction Model (
(127) The Interaction Model receives terminal discrete particle tallies with appropriate state variables and generates new discrete particles either on voxel surfaces or from within the voxel itself, depending on model type preference. The present teachings can be used to generate an Interaction Model for a relatively large voxel in various embodiments of the system. This methodology is described below along with a simple collision probability approach to creating a valid Interaction Model. Complex collision probability methods have been employed for some time. Marleau et al. provide examples related to the use of these methods in neutron calculations (Analytic Reductions for Transmission and Leakage Probabilities in Finite Tubes and Hexahedra, 104 Nucl. Sci. & Eng., 209-216 (1990); A Transport Method for Treating Three Dimensional Lattices of Heterogeneous Cells, 101 Nucl. Sci. & Eng., 217-225 (1989)). These can be readily adapted for generalized particle transport in connection with the present teachings.
(128) Function coefficient deposition can be used as previously described to create spherical harmonics functions representing the angular particle distribution. These may in turn be used with high-order double differential cross sections to compute detailed angular scatter information.
(129) The goal of an Interaction Model is to compute the disposition of particles after a collision. This includes computation of collision parameters of the primary interacting particle after collision, changes in state, as well as generation of secondary particles with new state variables. For optics, RADAR, SONAR and radiative heat transfer, relatively simple computation of primary particle post-collision parameters is required. For nuclear radiation processes, secondary radiation such as recoil electrons from Compton scattering or additional neutrons from fission processes must be generated by the Interaction Module. For IMRT 3DRTP, gamma interactions result in photoelectric absorption and generation of photoelectrons at low energy. Compton Scattering with both scattered photons of reduced energy as well as recoil secondary electrons should be modeled at intermediate energies. For very high energies above 1.02 MeV, pair production processes can also be modeled.
(130) For processes involving nuclear fission in critical systems, a special model is required that multiplies each generational infinite multiplication factor with the overall system Eigenvalue to determine local source strength. Assuming a single non-leakage parameter can be used for each voxel, this is a trivial model as is illustrated herein.
(131) B. Simple Collision Probability Interaction Model for Radiation Particles
(132) As mentioned above, a simple collision parameter approach can be used for an Interaction Model. In this approach, the ratios of macroscopic cross sections are used to determine the disposition of particles colliding within the voxel. In order to apply such a model, there should be on average less than one collision per voxel volume. For radiation transport, ideally this criteria can be met by the limiting state mean free path 1/>d.sub.c, where represents the least material state total or transport macroscopic cross section and de represents the largest possible path length across a voxel. However, practical experience has shown that such a criteria can be significantly relaxed (See
(133) In this simple model, a non-leakage probability is computed and applied to all scattered and secondary particles emanating from each voxel. This probability can be obtained by assuming a flat distribution and computing the particles that exit with integration kernel attenuation. Other methods discussed in the literature can also be used.
(134) In order to speed convergence in this model, each successive generation of interacting particles within a voxel is subject to this same non-leakage probability.
(135) There are two approaches that can be taken with regard to non-leakage and transmission. The first approach is to assume that all scattered particles appear both inwardly and outwardly directed on the voxel surface. A preferred approach is to account for further in-scatter within a voxel using the non-leakage probability, referred to as p.sub.nl. Consider a particle that scatters from state energy group g to g in a simple energy transfer model. We use r.sub.gg to represent the scatter/removal macroscopic cross section from group g to g and t.sub.g to represent the total macroscopic cross section of the voxel material. A particle that scatters (and hence has been tallied as a collision) has for its first collision a probability of r.sub.gg/t.sub.g of scattering to group g. However, a particle has a probability of r.sub.gg/t.sub.g to scatter in-group. For subsequent collisions, we have:
r.sub.gg/t.sub.g*p.sub.nl*r.sub.gg/t.sub.g
subsequent in-voxel scatter transfer to g followed by,
r.sub.gg/t.sub.g.sup.2*p.sub.nl.sup.2*r.sub.gg/t.sub.g
and so on for each subsequent generation.
It can be readily verified that as p.sub.nl is less than 1.0, and all transfer probabilities are less than 1.0, the total number of particles in all generations that transfer from group g to g within such a voxel is given by:
(r.sub.gg/t.sub.g)/(1.0r.sub.gg/t.sub.g*p.sub.nl)
(136) For time Eigenvalue problems, p.sub.nl is multiplied by the problem Eigenvalue . For fission problems, group dependent infinite multiplication factor (k.sub.?) represents the ratio of particles produced to particles removed. It may replace or augment scatter moments as described above for sub-critical voxels. Various schemes for incorporating fission are possible.
(137) In other embodiments, a scatter or fission generational approach to p.sub.nl is taken, such that different values of p.sub.nl might be appropriate for different collision moments. However the 1/>d.sub.c collision criteria should be sufficient to limit the need to use scatter transmission moments within voxel volume Interaction Models.
(138) Proceeding with the first inline process, a voxel position (
(139) For higher order scatter interactions, a function coefficient approach is used to determine the angular particle distribution, and this can be used to compute complex in-voxel scattering. However, such complexity is not required for most modeling tasks; it is considered better to simply use smaller voxel sizes than deal with such complex operations.
(140) One then moves from voxel transmission to final voxel volume tallies of processes such as absorption, scatter and energy deposition (dose) as appropriate (
(141) For 3DRTP IMRT, the above model with scatter represents a preferred, simple radiation model. However, this model can also be used in another calculation to determine larger voxel volume imbedding invariants as described herein.
(142) C. Other Collision Probability Interaction Model for Particles
(143) Depending on the application, one may pre-compute voxel volume interactions using various methods known in the art. However, for subsequent voxel discrete particle transmission, it is necessary to properly disposition particles leaving the voxel in appropriate ray set states when this is used as an explicit particle state value.
(144) D. Generating an Interaction Model Based on the Present Teachings
(145) Various embodiments of the present teachings can be used to generate imbedding invariants that are used for voxel volume interaction modeling so that one is not limited to small voxels, and the criteria as defined above, namely, 1/>d.sub.c is met. As with LVG ray set properties, this operation may be performed off-line as a pre-compute, or inline after material and grid properties have been established. In either case, all that is needed is to establish an initial boundary condition on a set of voxels. For this model however, all voxels combined to create a larger voxel should be within reference LVGs.
(146) One subdivides the grid system and solves discrete particle transport across a grid system tracking collision moment responses explicitly. Surface to volume information is retained for use in embedding the LVG into a larger system. Several surfaces can be combined to create a large voxel entrance surface as well as exit surfaces. Discrete particle density is evenly distributed across these surfaces to form the appropriate integrated voxel system response to external entrance particles. Ray tracing or point-to-point methods can be employed from the center of sub-surfaces to determine transport in the embedded system. In some embodiments, a pre-compute method can also be used.
(147) Void voxels can also be used for entrance and exit to allow for ray set initial conditions and ray set based scoring. Voids serve to provide distance moment groupings of ray sets. In such a mode, this can be used to reduce the number of explicit angular groups required for modeling within the LVG. On the input side, they serve to cause particle streaming associated with far distant moment LVG ray sets. On the output side, they are used to compute exit ray sets. Initial discrete particle groupings for all un-collapsed state groups must be explicitly modeled (See
(148) For problems that involve fission, explicit system responses as a function of collision time epoch must be utilized. The converged infinite system response can be determined after at least one and usually after several explicit generational responses have been determined. In no case may the group of voxels in a fissile system form a local critical system (Bellman, supra). Finally, data associated with the grouped voxels is saved for use either in later calculations as part of a pre-compute, or for use in the existing calculation.
(149) E. Convergence (
(150) The present teachings solve particle transport as an impulsive initial value problem as opposed to a boundary value problem for non-fissile particle transport. For fissile particle transport, a generational Eigenvalue can be computed based on generational fission changes. When Eigenvalue is combined with relative reaction rate criteria, convergence to an acceptable solution can be established.
(151) An absolute in-system particle count relative to the initial discrete particle input can be used to determine convergence, along with a computation of the ratio of residual interaction tally to total interaction tally on a voxel volume basis. Following convergence, results should be re-normalized to reflect the residual scattered or secondary IM particles that were not transported out of the system as part of the sweep. This is particularly important for problems where voxel invariant responses are determined for incorporation into broader problem solutions.
(152) F. Result Database Storage (
(153) Results of calculations are preferably stored in a conventional relational or object database. Ray set data can also be stored in this manner. This is a preferred mode of storage in the instant invention.
(154) G. Optimization/Design Engine (
(155) As mentioned previously, the present invention is ideal for automated design and/or treatment planning optimization. Block 8A represents a design optimization based on results of the present invention, in which the exact specification is outside of the invention.
(156) For IMRT 3DRTP, the storage results of the instant invention are utilized, and simulated reasonable external rays are generated in order to maximize the dose to target tumors while minimizing the dose to healthy tissue. The present teachings can be used to generate survey initial computations, allowing for relatively fast rejection of incident radiation that does not contribute significantly to dosing the tumor. Additionally, the present teachings are ideal for modeling scattered radiation contribution to off-target healthy tissue. Commercially available optimization engines can be utilized to select the optimal beam configuration and particle intensity using the computational results of the present teachings.
(157) H. Initial Particle Distribution (
(158) As mentioned previously, the results of an optimization engine specify an initial test particle distribution. For radiation pencil beams, the preferred modeling procedure is to model rays directly and use the Interaction Model (
(159)
(160) This figure shows the preliminary problem setup for a regular geometry utilizing the pre-compute option. The prototype used for this problem utilized
(161) Selected results comparisons for this problem setup are presented in
(162)
(163) Preliminary Planer Interaction Rate Results. This Graphic Depicts the Results of the present invention (middle values) compared to a high particle count Monte Carlo (top values) with percent relative differences (low cell percentage values) for each 10.sup.3 cell. Results are presented for a plane between 40 and 50 cm above the source plane. One cell with 0.0 interactions represents the void duct while the shaded cell represents the maximum error for the plane. It is typical that direct solutions are as much as 20% to 40% off at such distances with other prior art direct methods. The signal is a few ten thousandths of the original source at these distances for an extreme ray-effect streaming problem. It should also be noted that the present invention processes multiple source distributions for this or other problems over a thousand times faster than Monte Carlo, making it ideal for design problems and 3DRTP IMRT.
(164) The Monte Carlo code used was of the inventor's construction, and when used to compute a base case on the same computer proved to be 1000 times slower than the present invention.
(165)
(166)
(167) The reference problems and result comparison has been taken from 3D Radiation Transport Benchmarks for Simple Geometries with Void Region published in a special issue of the journal Progress in Nuclear Energy, Volume 39 Number 2 ISSN 0149-1970 (2001). The specific problem modeled from the benchmark is problem number 1.
(168) This problem consists of a 200200200 cm.sup.3 on a side cube of dark absorbing material with a 100100100 cm.sup.3 central void. In the center of the void is a 202020 cm.sup.3 source consisting of dark material. The problem is solved in two modes. The total macroscopic cross section for the void region is 10.sup.4 cm.sup.1 while the dark absorber cross section is 0.1 cm.sup.1. This problem is extremely difficult for a direct method, as the material is dark, there is little or no scatter, and the problem size is large for the cross sections used.
(169) The problem is solved in two modes. In the first mode, 1Ai, the problem both regions are pure absorbers. In the second mode, problem 1Aii, both regions have 50% scattering such that the both the absorption and scatter cross sections are 0.510.sup.4 cm.sup.1 and 0.05 cm.sup.1 respectively for both the void and dark regions. The source rate in the center block is uniformly 1 particle cm.sup.3-s.sup.1. A single referential axis is provided for comparison. The coordinate system extends from 100 cm to +100 cm for each direction.
(170) Compared with the present invention are respected nuclear transport codes such as TORT, ARDRA and EVENT. Other codes such as PennTran did not publish exact numbers, however from the graphics provided in the journal, in all cases it appears that the present invention provides superior results. Either the exact analytic flux was used for comparison or the GVMP Monte Carlo code (a variant of MCNP). The Monte Carlo code was run for 378,000 seconds to obtain the 1Aii results presented (See
(171) As the present invention does not compute flux directly, a small node size of 222 cm.sup.3 was utilized to reconstruct the flux rate. This is an additional source of error for the present teachings as the node average flux is reported compared to the point fluxes computed by other codes.
(172) For
(173) The present invention was run with the distinct setup and execution modes separate. The setup was complete such that given any source distribution, the execution time was a small fraction of the original time.
(174)
(175) This figure shows the effect of an LVG surface cut in Problem 1Ai. As this problem has no scattering, a surface is particularly problematic to model. The surface selected was at 50 cm at the void/absorber interface. Three different surface results are presented. The first surface result presents no surface cut. The second presents 4 sub-surfaces per side (an input to the prototype) with ray sets explicitly tracked through the surface. The surface cut utilized a 6.sup.th order surface harmonics function coefficient fit per cut side. Results are shown for after the cut for the cut cases, as the results prior to the cut are identical.
(176) With the LVG surface and only 4 sub-surfaces, adequate results were obtained. A 6.sup.th order surface harmonic function with 57 coefficients determined using the techniques described in
(,)=a.sub.0+.sub.m{a.sub.mP.sub.m()+.sub.nP.sub.mn()*[b.sub.m,n*cos(n)+c.sub.m,n*sin(n)]}
Where the summation of m is from 1 to 6, the summation of n is from 1 to m, P.sub.m() represents a legendre polynomial and P.sub.mn() an associated legendre polynomial. The cosine normal to the surface is given by , while is the azimuthal angle. The coefficients, a, b and c were linearized and fit in accordance with the methodology presented in
(177) This figure shows the timing results comparison for
(178) These data, along with the
(179) While the present teachings have been particularly shown and described with reference to various embodiments thereof, it will be understood by those skilled in the art that various alterations in form and detail may be made therein and various applications employed, without departing from the spirit and scope of the invention.