Internal functionsΒΆ
-
CTMM_EXPORT ctmm_complex kz(ctmm_complex n, ctmm_complex k, double vwl)
Calculate kz.
Calculate the z (along stack) component of the wavevector from the x (parallel to interfaces) component of the wavevector in the zeroth layer.
- Return
Wavevector z component.
- Parameters
n
: Refractive index of layer.k
: Wavevector x component in zeroth layer.vwl
: Vacuum wavelength of illuminating light.
-
CTMM_EXPORT void evaluate_prop(ctmm_matrix * pmat, double d, ctmm_complex n, ctmm_complex k, double vwl)
Evaluate propigation matrix, for internal use.
- Parameters
pmat
: Matrix to be filled.d
: Layer thickness.n
: Layer refractive index.k
: Wavevector component parallel to interfaces.vwl
: Vacuum wavelength of illuminating light.
-
CTMM_EXPORT void fresnel_coefs(ctmm_complex * coefs, ctmm_complex n0, ctmm_complex n1, ctmm_complex k, double vwl)
Calculate Fresnel coefficients.
- Parameters
coefs
: Array to be filled with coefficients.n0
: Refractive index in incident layer.n1
: Refractive index in exident layer.k
: Wavevector component parallel to interfaces.vwl
: Vacuum wavelength of illuminating light.
-
CTMM_EXPORT void evaluate_tran(ctmm_matrix * tmat, ctmm_complex k, ctmm_complex n0, ctmm_complex n1, double vwl)
Calculate transfer matrix, for internal use.
- Parameters
tmat
: Matrix to be filled.k
: Wavevector component parallel to interfaces.n0
: Refractive index in incident layer.n1
: Refractive index in exident layer.vwl
: Vacuum wavelength of illuminating light.