AbstractInterfaceProfile#

class optika.materials.profiles.AbstractInterfaceProfile[source]#

Bases: Printable, Shaped

Abstract interface describing the Stearns [1989] interface profile between two layers in a multilayer stack.

Attributes

shape

The array shape of this object.

width

Characteristic length scale of the interface profile.

Methods

__init__()

reflectivity(wavelength, direction, n)

Calculate the loss of the reflectivity due to this interface profile.

to_string([prefix])

Public-facing version of the __repr__ method that allows for defining a prefix string, which can be used to calculate how much whitespace to add to the beginning of each line of the result.

transmissivity(wavelength, direction_before, ...)

The specular transmission amplitude for this interface profile.

Inheritance Diagram

Inheritance diagram of optika.materials.profiles.AbstractInterfaceProfile
reflectivity(wavelength, direction, n)[source]#

Calculate the loss of the reflectivity due to this interface profile.

Parameters:
  • wavelength (Quantity | AbstractScalar) – the wavelength of the incident light in vacuum

  • direction (float | AbstractScalar) – The component of the incident light’s propagation direction antiparallel to the surface normal.

  • n (float | AbstractScalar) – The complex index of refraction of the medium before the interface.

  • normal – the vector perpendicular to the optical surface

Return type:

AbstractScalar

to_string(prefix=None)#

Public-facing version of the __repr__ method that allows for defining a prefix string, which can be used to calculate how much whitespace to add to the beginning of each line of the result.

Parameters:

prefix (None | str) – an optional string, the length of which is used to calculate how much whitespace to add to the result.

Return type:

str

transmissivity(wavelength, direction_before, direction_after, n_before, n_after)[source]#

The specular transmission amplitude for this interface profile.

Parameters:
  • wavelength (Quantity | AbstractScalar) – The wavelength of the incident light in vacuum.

  • direction_before (float | AbstractScalar) – The component of the incident light’s propagation direction before the interface antiparallel to the surface normal.

  • direction_after (float | AbstractScalar) – The component of the incident light’s propagation direction after the interface antiparallel to the surface normal.

  • n_before (float | AbstractScalar) – The complex index of refraction of the medium before the interface.

  • n_after (float | AbstractScalar) – The complex index of refraction of the medium after the interface.

Return type:

AbstractScalar

Notes

The specular transmission amplitude is given by Stearns [1989] Equation 42.

abstract property shape: dict[str, int]#

The array shape of this object.

abstract property width: Quantity | AbstractScalar#

Characteristic length scale of the interface profile.