AbstractMultilayerMirror#
- class optika.materials.AbstractMultilayerMirror[source]#
Bases:
AbstractMultilayerMaterial,AbstractMirrorA generalized multilayer mirror coating.
Attributes
flag controlling whether this material reflects or transmits light
A sequence of layers representing the multilayer stack.
The array shape of this object.
A layer representing the substrate supporting the reflective surface.
the coordinate transformation between the global coordinate system and this object's local coordinate system
Methods
__init__()attenuation(rays)the attenuation coefficient of the given rays
efficiency(rays, normal)Compute the efficiency of this multilayer film using
optika.materials.multilayer_efficiency().index_refraction(rays)the index of refraction of this material for the given input rays
plot_layers([width, ax, thickness_substrate])Plot the multilayer stack using
optika.materials.AbstractLayer.plot().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.Inheritance Diagram

- attenuation(rays)#
the attenuation coefficient of the given rays
- Parameters:
rays (RayVectorArray) – input rays to calculate the attenuation coefficient for
- Return type:
- efficiency(rays, normal)[source]#
Compute the efficiency of this multilayer film using
optika.materials.multilayer_efficiency().- Parameters:
rays (RayVectorArray) – the input rays with which to compute the efficiency of the multilayer film
normal (AbstractCartesian3dVectorArray) – the vector normal to the interface between successive layers
- Return type:
- index_refraction(rays)#
the index of refraction of this material for the given input rays
- Parameters:
rays (RayVectorArray) – input rays used to evaluate the index of refraction
- Return type:
- plot_layers(width=<Quantity 100. nm>, ax=None, thickness_substrate=<Quantity 10. nm>, **kwargs)[source]#
Plot the multilayer stack using
optika.materials.AbstractLayer.plot().- Parameters:
width (Quantity) – The width of the plotted multilayer stack in physical units.
ax (Axes) – The matplotlib axes on which to plot the multilayer stack.
kwargs – Additional keyword arguments to pass along to
optika.materials.AbstractLayer.plot().thickness_substrate (Quantity)
- Return type:
- 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.
- abstract property layers: AbstractLayer | Sequence[AbstractLayer]#
A sequence of layers representing the multilayer stack.