colour.phenomena.polarised_light_reflection_coefficient#

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

Compute Fresnel reflection power coefficients (reflectance).

This function computes the reflection power coefficients, which represent the fraction of incident power that is reflected at a dielectric interface for both s-polarisation (perpendicular) and p-polarisation (parallel) components.

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 power coefficients (reflectance) for s and p polarisations stacked along the last axis. The array contains \([R_s, R_p]\).

Return type:

numpy.ndarray

Notes

The Fresnel reflection power coefficients (reflectance) are given by:

\[\begin{split}R_s &= |r_s|^2 = \left|\frac{n_1 \cos \theta_i - n_2 \cos \theta_t}{n_1 \cos \theta_i + n_2 \cos \theta_t}\right|^2 \\ R_p &= |r_p|^2 = \left|\frac{n_1 \cos \theta_t - n_2 \cos \theta_i}{n_1 \cos \theta_t + n_2 \cos \theta_i}\right|^2\end{split}\]

Where:

  • \(R_s\): s-polarisation reflectance (fraction of incident power reflected)

  • \(R_p\): p-polarisation reflectance (fraction of incident power reflected)

  • \(r_s, r_p\): complex reflection amplitude coefficients

  • The s-polarisation electric field is perpendicular to the plane of incidence

  • The p-polarisation electric field is parallel to the plane of incidence

The reflectance values satisfy: \(0 \leq R_s, R_p \leq 1\).

References

[Byr16]

Examples

>>> result = polarised_light_reflection_coefficient(1.0, 1.5, 0.0, 0.0)
>>> result.real
array([ 0.04,  0.04])