NewsEtcto next pagearticle front page Dec. issue NewsEtc. Contents Home | Monte Carlo:Introduction to "mc321.c"NewsEtc., Dec., 1998. Steven Jacques, Oregon Medical Laser Center |
"mc321" is the minimal core of prior Monte Carlo programs developed collaboratively by Steven Jacques, Lihong Wang, Scott Prahl, and Marleen Keijzer.
/******************************************** * mc321.c , in ANSI Standard C programing language * * Monte Carlo simulation yielding spherical, cylindrical, and planar * responses to an isotropic point source in an infinite homogeneous * medium with no boundaries. This program is a minimal Monte Carlo * program scoring photon distributions in spherical, cylindrical, * and planar shells. * * by Steven L. Jacques based on prior collaborative work * with Lihong Wang, Scott Prahl, and Marleen Keijzer. * partially funded by the NIH (R29-HL45045, 1991-1997) and * the DOE (DE-FG05-91ER617226, DE-FG03-95ER61971, 1991-1999). * * A published report illustrates use of the program: * S. L. Jacques: "Light distributions from point, line, and plane * sources for photochemical reactions and fluorescence in turbid * biological tissues," Photochem. Photobiol. 67:23-32, 1998. **********/
The basic idea is that photons are launched from an isotropic point source of unit power P = 1 W within an infinite homogeneous medium with no boundaries. The medium has optical properties of absorption, scattering, and anisotropy. The steady-state distribution of the relative fluence rate, F/P [cm^{-2}], where F is fluence rate [W cm^{-2}].
N photons are launched, each with a "photon weight" initially set to 1. The photon takes steps between interactions with the tissue. The steps are based on the probability of photon movement before interaction by absorption and scattering. During each step as the photon propagates, the photon deposits a fraction of its weight into the local bin at its position. Each bin in the array of bins accumulates the photon weight deposited due to absorption by all N photons in that bin (A[ir], where r = ir*dr is the distance from the source). After all N photons have been propagated, each A[ir] contains an accumulated weight of absorbed photons. Dividing each A[ir] by the total number of photons (N) and by the volume of that particular bin (V[ir]) yields the concentration C[ir] [cm^{-3}] of absorbed photon:
Dividing C[ir] by the absorption coefficient µ_{a} [cm^{-1}] yields the relative fluence rate F[ir] [cm^{-2}]:
The arrays are organized in bins located as a function of distance r from the source described in three dimensional geometries: