# Convolution for optical broad-beam responses in scattering media

Photon transport theories in Physics, Medicine, and Statistics (such as the Monte Carlo method), are commonly used to model light propagation in tissue. The responses to a pencil beam incident on a scattering medium are referred to as Green's functions or impulse responses. Photon transport methods can be directly used to compute broad-beam responses by distributing photons over the cross section of the beam. However, convolution can be used in certain cases to improve computational efficiency.

## General convolution formulas

In order for convolution to be used to calculate a broad-beam response, a system must be time invariant, linear, and translation invariant. Time invariance implies that a photon beam delayed by a given time produces a response shifted by the same delay. Linearity indicates that a given response will increase by the same amount if the input is scaled and obeys the property of superposition. Translational invariance means that if a beam is shifted to a new location on the tissue surface, its response is also shifted in the same direction by the same distance. Here, only spatial convolution is considered.
Responses from photon transport methods can be physical quantities such as absorption, fluence, reflectance, or transmittance. Given a specific physical quantity, G(x,y,z), from a pencil beam in Cartesian space and a collimated light source with beam profile S(x,y), a broad-beam response can be calculated using the following 2-D convolution formula:
    $C(x,y,z)=\int _{-\infty }^{\infty }\int _{-\infty }^{\infty }\ G(x-x',y-y',z)S(x',y')\,dx'\,dy'.\qquad (1)$
Similar to 1-D convolution, 2-D convolution is commutative between G and S with a change of variables $x''=x-x'\,$ and $y''=y-y'\,$:
    $C(x,y,z)=\int _{-\infty }^{\infty }\!\int _{-\infty }^{\infty }\ G(x'',y'',z)S(x-x'',y-y'')\,dx''\,dy''.\qquad (2)$
Because the broad-beam response $C(x,y,z)\,$ has cylindrical symmetry, its convolution integrals can be rewritten as:
    $C(r,z)=\int _{0}^{\infty }\ S(r')r'\left[\int _{0}^{2\pi }\ G\left({\sqrt {r^{2}+r'\,^{2}-2rr'cos\phi '}},z\right)\,d\phi '\right]dr'\qquad (3)$
    $C(r,z)=\int _{0}^{\infty }G(r'',z)r''\left[\int _{0}^{2\pi }S\left({\sqrt {r^{2}+r''\,^{2}-2rr''cos\phi ''}}\right)\,d\phi ''\right]dr''\qquad (4)$
where $r'={\sqrt {x'^{2}+y'^{2}}}$. Because the inner integration of Equation 4 is independent of z, it only needs to be calculated once for all depths. Thus this form of the broad-beam response is more computationally advantageous.

## Common beam profiles
### Gaussian beam

For a Gaussian beam, the intensity profile is given by
    $S(r')=S_{0}\exp \left[-2\left({\frac {r'}{R}}\right)^{2}\right].\qquad (5)$
Here, R denotes the ${\tfrac {1}{e^{2}}}\,$ radius of the beam, and S$_0$ denotes the intensity at the center of the beam. S$_0$ is related to the total power P$_0$ by
    $S_{0}={\frac {2P_{0}}{\pi R^{2}}}.\qquad (6)$
Substituting Eq. 5 into Eq. 4, we obtain
    $C(r,z)=2\pi S(r)\int _{0}^{\infty }G(r'',z)\exp \left[-2\left({\frac {r''}{R}}\right)^{2}\right]I_{0}\left({\frac {4rr''}{R^{2}}}\right)r''\,dr'',\qquad (7)$
where I$_0$ is the zeroth-order modified Bessel function.

### Top-hat beam

For a top-hat beam of radius R, the source function becomes
    $S(r')={\begin{cases}S_{0},&{\text{if }}r'\leq R\\\,0,&{\text{if }}r'>R\end{cases}}\qquad (8)$
where S$_0$ denotes the intensity inside the beam. S$_0$ is related to the total beam power P$_0$ by
    $S_{0}={\frac {P_{0}}{\pi R^{2}}}.\qquad (9)$
Substituting Eq. 8 into Eq. 4, we obtain
    $C(r,z)=2\pi S_{0}\int _{0}^{\infty }G(r'',z)I_{\phi }(r,r'')r''\,dr'',\qquad (10)$
where
    $I_{\phi }(r,r'')={\begin{cases}1,&{\mbox{if }}R\geq r+r'',\\{\tfrac {1}{\pi }}\cos ^{-1}\left({\tfrac {r^{2}+r''^{2}-R^{2}}{2rr''}}\right),&{\mbox{if }}\left|r-r''\right|\leq R<r+r'',\\0,&{\mbox{if }}R<\left|r+r''\right|.\end{cases}}\qquad (11)$

## Errors in numerical evaluation
### First interactions

First photon-tissue interactions always occur on the z axis and hence contribute to the specific absorption or related physical quantities as a Dirac delta function. Errors will result if absorption due to the first interactions is not recorded separately from absorption due to subsequent interactions. The total impulse response can be expressed in two parts:
    $C(r,z)=G_{1}(0,z){\frac {\delta (r)}{2\pi r}}+G_{2}(r,z),\qquad (12)$
where the first term results from the first interactions and the second, from subsequent interactions. For a Gaussian beam, we have
    $C(r,z)=G_{1}(0,z)S(r)+2\pi S_{0}\int _{0}^{\infty }G_{2}(r'',z)\,exp\left[-2\left({\frac {r''-r}{R}}\right)^{2}\right]I_{0e}\left({\frac {4rr''}{R^{2}}}\right)r''\,dr''.\qquad (13)$
For a top-hat beam, we have
    $C(r,z)=G_{1}(0,z)S(r)+2\pi S_{0}\int _{0}^{\infty }G_{2}(r'',z)I_{\phi }(r,r'')r''\,dr''.\qquad (14)$

### Truncation error

For a top-hat beam, the upper integration limits may be bounded by r$_{max}$, such that r ≤ r$_{max}$ − R. Thus, the limited grid coverage in the r direction does not affect the convolution. To convolve reliably for physical quantities at r in response to a top-hat beam, we must ensure that r$_{max}$ in photon transport methods is large enough that r ≤ r$_{max}$ − R holds. For a Gaussian beam, no simple upper integration limits exist because it theoretically extends to infinity. At r >> R, a Gaussian beam and a top-hat beam of the same R and S$_0$ have comparable convolution results. Therefore, r ≤ r$_{max}$ − R can be used approximately for Gaussian beams as well.

## Implementation of convolution

There are two common methods used to implement discrete convolution: the definition of convolution and fast Fourier transformation (FFT and IFFT) according to the convolution theorem. To calculate the optical broad-beam response, the impulse response of a pencil beam is convolved with the beam function. As shown by Equation 4, this is a 2-D convolution. To calculate the response of a light beam on a plane perpendicular to the z axis, the beam function (represented by a b × b matrix) is convolved with the impulse response on that plane (represented by an a × a matrix). Normally a is greater than b. The calculation efficiency of these two methods depends largely on b, the size of the light beam.
In direct convolution, the solution matrix is of the size (a + b − 1) × (a + b − 1). The calculation of each of these elements (except those near boundaries) includes b × b multiplications and b × b − 1 additions, so the time complexity is O[(a + b)$^2$b$^2$]. Using the FFT method, the major steps are the FFT and IFFT of (a + b − 1) × (a + b − 1) matrices, so the time complexity is O[(a + b)$^2$ log(a + b)]. Comparing O[(a + b)$^2$b$^2$] and O[(a + b)$^2$ log(a + b)], it is apparent that direct convolution will be faster if b is much smaller than a, but the FFT method will be faster if b is relatively large.