colour.phenomena.polarised_light_reflection_amplitude#

colour.phenomena.polarised_light_reflection_amplitude(n_1: ArrayLike, n_2: ArrayLike, theta_i: ArrayLike, theta_t: ArrayLike) NDArrayComplex[source]#

Compute Fresnel reflection amplitude coefficients.

This function computes the complex reflection amplitude coefficients for both s-polarisation (perpendicular) and p-polarisation (parallel) components of electromagnetic waves at a dielectric interface.

Parameters:
  • n_1 (ArrayLike) – Refractive index of the incident medium \(n_1\).

  • n_2 (ArrayLike) – Refractive index of the transmitted medium \(n_2\).

  • theta_i (ArrayLike) – Incident angle \(\theta_i\) in degrees.

  • theta_t (ArrayLike) – Transmitted angle \(\theta_t\) in degrees.

Returns:

Fresnel reflection amplitude coefficients for s and p polarisations stacked along the last axis. The array contains \([r_s, r_p]\) where \(r_s\) and \(r_p\) are the complex reflection coefficients.

Return type:

numpy.ndarray

Notes

The Fresnel reflection amplitude coefficients are given by (Equation 6 from [Byr16]):

\[\begin{split}r_s &= \frac{n_1 \cos \theta_1 - n_2 \cos \theta_2}{n_1 \cos \theta_1 + n_2 \cos \theta_2} \\ r_p &= \frac{n_2 \cos \theta_1 - n_1 \cos \theta_2}{n_2 \cos \theta_1 + n_1 \cos \theta_2}\end{split}\]

Where:

  • \(r_s\): s-polarisation reflection amplitude (electric field perpendicular to the plane of incidence)

  • \(r_p\): p-polarisation reflection amplitude (electric field parallel to the plane of incidence)

  • \(n_1, n_2\): Refractive indices of incident and transmitted media

  • \(\theta_1, \theta_2\): Incident and transmitted angles

Examples

>>> polarised_light_reflection_amplitude(1.0, 1.5, 0.0, 0.0)
array([-0.2+0.j, -0.2+0.j])