Skip to content

Frequently Asked Questions

gallamine edited this page Aug 1, 2012 · 1 revision

There is a small problem about the data of volume scattering fuctions, the data in maalox_alan_orig.mat is strange, since the data sets don't include angles between 20 deg to 70 deg. I know that the data in petzold_ocean.mat will work

Derek Grey and Alan Weidemann didn't make measurements from 20 to 70 degrees. The data needs to be extrapolated (it's a linear fit right now, if I remember correctly). Most of the interesting stuff happens < 10 degrees.

There is another question about the Matlab code is about the wallabsorption coeffecient, why the photon weight have to times it when they are total internal refelected while they don't have to times it when their incident angle is smaller than the critical angle? It seems not a big probelem for the result.

The wall absorption code was added for a specific case of testing the simulated results versus experiments in the tank. The water surface acts differently than the tank walls (y > yLimMax). That's where we use the Fresnel coefficients. Other surfaces absorb the photons to some degree.

There is a bug you may not notice is that when calculating the reflection coeffient for rs and rp, the directional cosine z have to be absoluted, that is to say, the negative number of the directional cosine can lead to a rs square or rp square much bigger than 1, which is not reasonable. That bug happens in python, I think in matlab may be the same. That part is on page 248 and 249 in your thesis.

Hmmm .. you may be correct. It probably transferred over from "Small Monte Carlo by Scott Prahl (http://omlc.ogi.edu) " which is what I based that section on. Seems like I had a discussion with Scott about that, but I can't recall now. I'd have to break out my optics textbook to verify. I imagine I was expecting the mu_z to only be positive and phi angle to change the direction, but clearly that's not happening in that section, since I just flip the sign on mu_z to reflect it.

I have another quesetion is that did you consider the field of view as axial symetrical, that is to say, we only have to consider the directional cosine of z axis to check if it is inside the FOV of the receiver or not, when the reciver plane is perpendicular to z axis.

Yes, if you look at the receiver code, 'mc_rec_r6.m' line 79, the only check for a received photon is:

if ((distance <= radius) && (mu_z >= cos_rec_fov)) % Photon received

In the matlab code the tank seems to have a size of 1.221.223.66 meter, but when consider the refelction of boundaries, the max and min limits along x and y axis are -3 and 3, that is quite confusing. It seems to mean you used another medium outside the tank, which apparently is not the case. Should I use -0.61, 0.61 or -3,3 as the boundaries of x and y ?

The tank size limits were put in for a specific test - validating tank experiments with the simulation code. For most of the results in the thesis I didn't use the tank size as the limits, I did a infinite area with a limited receiver area. The +/- 3 meter size only limits the area on the receiver plane that is sensitive. The variable, "rxPlaneLimits = 1;" turns this on. What you use depends on what you're simulating - a tank experiment or open water.

Clone this wiki locally