## 2 Theory and Modeling
### Determining Scattering Angle: Lookup Table Method  
The pdf is fundamental to MC simulation for determining the scattering angle for each photon collision. The spf \(\widetilde{\beta}(\psi)\) can be interpreted as a pdf in the formula of \(\widetilde{\beta}(\psi)\sin(\psi)\). The HG spf has been widely used in many MC studies. However, the HG phase function does not work well at small or large scattering angles. As shown in Figure 1, the black curve is the Petzold's average spf measurement [17], which comprises the most carefully made and widely cited scattering measurements. The red curve shows the Fournier-Forand phase function with the same backscatter fraction as the measured phase function. The blue curve presents the HG phase function; we can see that it does not fit well at small angles (\(<\)20\({}^{\circ}\), especially bad for angles of less than 1\({}^{\circ}\)) or large angles (\(>\)140\({}^{\circ}\)). There is a deviation for HG spf among the curves in angles between 140 and 180 degrees because oceanic particles are quite different in their physical properties from interstellar dust, which is initially widely used. Table 1 shows the curve-fitting statistics of the two spfs compared with [PERSON]'s measurements. Note that the HG parameter \(g\) is 0.924, which already gives the best fit to the [PERSON]'s measurements, but the curve still does not work well. Figure 1: Log-linear plot of various scattering phase functions. The black curve is the standard phase function measured by [PERSON]. The red curve shows the Fournier-Forand phase function with the same backscatter fraction as the measured phase function. The blue curve presents the Henyey-Greenstein phase function. \[RMSE=\sqrt{\frac{1}{n}{\sum_{i=1}^{n}{(y_{i}-\hat{y}_{i})}^{2}}} \tag{3}\]  
Here, \(y_{i}\) is the difference between spf-calculated and measured data, \(\hat{y}_{i}\) is the mean value of \(y_{i}\), \(y_{i}^{\prime}\) is the relative difference and \(\hat{y}_{i}^{\prime}\) is the mean relative difference. Though the Fournier-Forand phase function could give the best fit to the [PERSON]'s measurements of average particle phase function as shown in Figure 1, its cdf (Equation (3)) [18] for \(\psi\) would give a complicated formula. Solving the cdf equation of FF for \(\psi\) seems impossible. It is numerically more efficient to use Equation (4) to build up a lookup table of \(\psi\) vs. \(P_{\Psi}(\psi)\) to determine scattering angle. \[ \begin{array}{ll}P_{\Psi}^{FF}(\psi)&=\frac{1}{(1-\delta)\delta v}[(1- \delta^{v+1})-(1-\delta^{v})\sin^{2}(\psi/2)]\\ &+\frac{1}{8}\frac{1-\delta_{180}^{v}}{(\delta_{180}^{v}-1)\delta_{180}^{v}} \cos\psi\sin^{2}\psi\end{array}  \tag{4}\]  
where  
\[v=\frac{3-\mu}{2},\delta=\frac{4}{3(n-1)^{2}}\sin^{2}(\frac{\psi}{2}) \tag{5}\]  
Here, n is the real part of refraction of the particles, \(\mu\) is the slope parameter of the hyperbolic distribution, and \(\delta_{180}^{v}\) is \(\delta\) at \(\psi=180^{\circ}\). In this study, we first obtain the cdfs for various spfs using the Kaplan-Meier non-parametric method [19], and then build a LUT with two columns of \(\psi\) vs. \(P_{\Psi}(\psi)\). The \(\Psi\) angle increments in the LUT table are dense and incremental from 0.02\({}^{\circ}\) to 5\({}^{\circ}\) in a range between 0.1\({}^{\circ}\) and 10\({}^{\circ}\); when it reaches 10\({}^{\circ}\), the increments keep constant at 5\({}^{\circ}\). This is mainly because the spfs vary significantly in the small angles, while vary gently in the larger angles. Since the table is discrete, the resulting values are linearly interpolated between the two consecutive values. [PERSON]'s measurements mentioned above show that linear interpolation is good enough to obtain the results between two discrete values. When a random number \(\Re\) is generated, we find the nearest \(P_{\Psi}(\psi)\); the corresponding angle \(\psi\) is the scattering angle we need. This is illustrated in Figure 2, which shows a Fourier-Forand cdf for \(\psi\) vs. \(P_{\Psi}(\psi)\) as tabulated using Equation (4).