This project has moved and is read-only. For the latest updates, please go here.

MC normalization

May 8, 2013 at 2:13 AM
Hi all,

Just a quick question on the normalization of the MC results. When I use two detectors (ROfRho) in the same simulation to capture the same region (0<rho<10), but with a different number of bins (101,201), the total reflectance captured by the ROfRho detectors differs, and with a different factor than ~2:

101 bins:
Total reflectance captured by ROfRho detector: 1.0452

201 bins:
Total reflectance captured by ROfRho detector: 2.311

I also captured the reflections using an ROfXAndY detector (-10<x<10, -10<y<10, 21 bins per dimension) and that also gives very different values:
Total reflectance captured by ROfXAndY detector: 0.0061301

Since the binning is the only difference between these detectors (ok, the last one captures a bit larger region), it seemed to me that at least the total reflectance should be in the same order (and actually the same for detectors 1 and 2: same simulation, equal number of photons reflected).

Could you tell me which kind of normalization takes place that causes these differences?


May 8, 2013 at 3:16 AM
Hi Martijn,

The ROfRho detector tallies photons exiting concentric circles defined by the rho bins on the tissue surface. The summed weights out a rho bin are normalized by the product of N, the number of photons launched, and the area of the surface ring defining that rho bin. For the ROfXAndY detector, the normalization is the product of N and the area (dx * dy) defined by the x and y bin definitions. In both of these detectors and most of our other detectors, if a photon exits out the tissue surface beyond the last bin, the exiting weight of this photon is added to the last bin. We did this exactly for the check that you are trying to verify. However, to obtain a value of total diffuse reflectance from these tallies, each bin should be multiplied by its respective area and then the sum over all bins can be performed.

I just looked at our matlab Monte Carlo post-processing script load_results_script.m and this is not being done when we display "Total reflectance captured by ROfRho detector". It looks like the normalized results are being summed. This needs to be corrected. Thanks for catching this error. Its odd because I remember discussing this correction and I thought we had updated the code. Anyway, I'll put it on my list of things to do.

In the meantime, we do have a RDiffuse detector that you can add into your list of detectors and this should provide you with total diffuse reflectance.

Thanks again for helping us improve our software!