Optical Phenomena#

CIE Standard General Sky#

colour.phenomena

SkyType_CIE2003(gradation_group, ...)

Define parameters for a CIE Standard General Sky type.

CIE_STANDARD_SKY_PARAMETERS

dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2).

sky_luminance_gradation_CIE2003(Z, a, b)

Compute the CIE Standard General Sky luminance gradation function \(\varphi(Z)\) at the given zenith angle \(Z\).

sky_scattering_indicatrix_CIE2003(chi, c, d, e)

Compute the CIE Standard General Sky scattering indicatrix function \(f(\chi)\) at the given angular distance \(\chi\) between a sky element and the sun.

sky_luminance_distribution_CIE2003(sky_type, ...)

Compute the relative sky luminance \(L_{\alpha} / L_z\) for the given CIE Standard General Sky type.

sky_luminance_distribution_overcast_CIE2003(Z)

Compute the relative sky luminance \(L_{\alpha} / L_z\) for the CIE Traditional Overcast Sky (the 16th sky type).

Prague Sky Model - Wilkie et al. (2021)#

colour.phenomena

SkyDataset_Wilkie2021([path])

Implement support for loading and holding a Prague Sky Model dataset.

SkyParameters_Wilkie2021([theta, gamma, ...])

Hold computed parameters for querying the Prague Sky Model.

compute_sky_parameters_Wilkie2021(...)

Compute parameters for querying the Prague Sky Model.

sky_radiance_Wilkie2021(dataset, parameters, ...)

Compute sky radiance (without direct sun) for given wavelength.

sun_radiance_Wilkie2021(dataset, parameters, ...)

Compute sun radiance (without inscattered sky contribution) for given wavelength.

sky_polarisation_Wilkie2021(dataset, ...)

Compute degree of polarisation for given wavelength.

sky_transmittance_Wilkie2021(dataset, ...[, ...])

Compute atmospheric transmittance for given wavelength and distance.

Rayleigh Scattering#

colour

rayleigh_scattering(wavelength[, ...])

Compute the Rayleigh optical depth \(T_r(\lambda)\) as a function of wavelength \(\lambda\) in centimeters (cm).

scattering_cross_section(wavelength[, ...])

Compute the scattering cross-section per molecule \(\sigma\) of dry air as a function of wavelength \(\lambda\) in centimeters (cm) using the specified \(CO_2\) concentration in parts per million (ppm) and temperature \(T[K]\) in kelvin degrees following the Van de Hulst (1957) method.

sd_rayleigh_scattering([shape, ...])

Generate Rayleigh scattering spectral distribution for the specified spectral shape.

colour.phenomena

rayleigh_optical_depth(wavelength[, ...])

Compute the Rayleigh optical depth \(T_r(\lambda)\) as a function of wavelength \(\lambda\) in centimeters (cm).

Transfer Matrix Method (TMM)#

colour.phenomena

snell_law(n_1, n_2, theta_i)

Compute the refraction angle using Snell's Law.

polarised_light_magnitude_elements(n_1, n_2, ...)

Compute common magnitude elements for Fresnel equations.

polarised_light_reflection_amplitude(n_1, ...)

Compute Fresnel reflection amplitude coefficients.

polarised_light_reflection_coefficient(n_1, ...)

Compute Fresnel reflection power coefficients (reflectance).

polarised_light_transmission_amplitude(n_1, ...)

Compute Fresnel transmission amplitude coefficients.

polarised_light_transmission_coefficient(...)

Compute Fresnel transmission power coefficients (transmittance).

TransferMatrixResult(M_s, M_p, theta, n)

Define the Transfer Matrix Method calculation results.

matrix_transfer_tmm(n, t, theta, wavelength)

Calculate transfer matrices for multilayer thin film structures using the Transfer Matrix Method.

Interference#

colour.phenomena

light_water_molar_refraction_Schiebener1990(...)

Calculate water molar refraction using Schiebener et al. (1990) model.

light_water_refractive_index_Schiebener1990(...)

Calculate water refractive index using Schiebener et al. (1990) model.

thin_film_tmm(n, t, wavelength[, theta])

Calculate thin film reflectance and transmittance using Transfer Matrix Method.

multilayer_tmm(n, t, wavelength[, theta])

Calculate multilayer reflectance and transmittance using Transfer Matrix Method.