class Double_Interaction_BRDF_Model


The class Double_Interaction_BRDF_Model implements the double interaction model for light scattering from a spherical particle above a surface. This is a ray tracing approximation and does not consider the interaction between the particle and its image in the substrate.

Diagram showing the components contributing to the effective BRDF of a sample surrounded by air.

Parameters:

Parameter Data Type Description Default
lambda double Wavelength of the light in vacuum [µm].
(Inherited from BRDF_Model.)
0.532
type int Indicates whether the light is incident from above the substrate or from within the substrate and whether the scattering is evaluated in reflection or transmission. The choices are:
0 : Light is incident from the above the substrate, and scattering is evaluated in reflection.
1 : Light is incident from the above the substrate, and scattering is evaluated in transmission.
2 : Light is incident from the within the substrate, and scattering is evaluated in reflection.
3 : Light is incident from the within the substrate, and scattering is evaluated in transmission.
For 1, 2, and 3, the substrate must be non-absorbing.
(Inherited from BRDF_Model).
0
substrate dielectric_function The optical constants of the substrate, expressed as a complex number (n,k) or, optionally, as a function of wavelength.
(Inherited from BRDF_Model.)
(4.05,0.05)
density double The surface number density of local scatterers [µm-2].
(Inherited from Local_BRDF_Model.)
1
stack StackModel_Ptr Description of any stack of films deposited on the substrate. No_StackModel
distance double The distance from the surface to the center of the particle [µm]. For a sphere touching a surface, the distance should be the same as the sphere's radius. This parameter should be at least as large as the radius of the particle, if the particle is spherical. 0.05
scatterer Free_Space_Scatterer_Ptr The model describing the scattering by a particle. The medium surrounding the sphere (scatterer.medium) must be the same as the substrate (substrate), and the wavelength (scatterer.lambda) must match the model wavelength (lambda).
MieScatterer
alpha double The rotation of the particle about the z-axis [rad]. This parameter only has an effect if the particle is non-axially symmetric. (Note that all models currently inheriting Free_Space_Scatterer are axially symmetric.) 0
beta double The rotation of the particle about the y-axis [rad]. This rotation follows the rotation alpha about the z-axis. This parameter only has an effect if the particle is non-spherical. To further rotate the particle about the z-axis after rotation about the y-axis, the user should evaluate the scattering in a rotated geometry. 0

See also:

SCATMECH Home,   Conventions,   BRDF_Model,   Local_BRDF_Model,   Abstract class SphericalScatterer,   class RayleighScatterer,   class RayleighGansScatterer,   class MieScatterer,   dielectric_stack

K. B. Nahm and W. L. Wolfe, "Light-scattering models for spheres on a conducting plane: comparison with experiment," Appl. Opt. 26, 2995-2999 (1987).

T. A. Germer, "Angular dependence and polarization of out-of-plane optical scattering from particulate contamination, subsurface defects, and surface microroughness," Appl. Opt. 36, 8798-8805 (1997).

Include file:

#include "sphprt.h"

Source code:

sphprt.cpp

Definition of public elements:

class Double_Interaction_BRDF_Model
    : public Local_BRDF_Model
{
};

Top of Page


For More Information

SCATMECH Technical Information and Questions
Sensor Science Division Home Page
Sensor Science Division Inquiries
Website Comments

Current SCATMECH version: 7.22 (April 2021)