unscattered_rt

iadpython.start.unscattered_rt(s)[source]

Unscattered reflection and transmission for a slide-slab-slide sandwich.

The sample is characterized by the record ‘slab’. The total unscattered_layer reflection and transmission for oblique irradiance (‘urx’ and ‘utx’) together with their companions ‘uru’ and ‘utu’ for diffuse irradiance. The cosine of the incident angle is specified by ‘slab.cos_angle’.

The way that this routine calculates the diffuse unscattered_layer quantities based on the global quadrature angles previously set-up. Consequently, these estimates are not exact. In fact if ‘n=4’ then only two quadrature points will actually be used to figure out the diffuse reflection and transmission (assuming mismatched boundaries).

This algorithm is pretty simple. Since the quadrature angles are all chosen assuming points inside the medium, I must calculate the corresponding angle for light entering from the outside. If the the cosine of this angle is greater than zero then the angle does not correspond to a direction in which light is totally internally reflected. For this ray, I find the unscattered_layer that would be reflected or transmitted from the slab. I multiply this by the quadrature angle and weight ‘twoaw[i]’ to get the total diffuse reflectance and transmittance.

Oh, yes. The mysterious multiplication by a factor of ‘n_slab*n_slab’ is required to account for the n**2-law of radiance.