MeasuredRulings#
- class optika.rulings.MeasuredRulings(spacing, diffraction_order, efficiency_measured)[source]#
Bases:
AbstractRulingsA set of rulings where the efficiency has been measured or calculated by an independent source.
Attributes
The diffraction order to simulate.
The discrete measurements of the efficiency.
The array shape of this object.
Spacing between adjacent rulings at the given position.
A normalized version of
spacingthat is guaranteed to be an instance ofoptika.rulings.AbstractRulingSpacing.Methods
__init__(spacing, diffraction_order, ...)efficiency(rays, normal)The fraction of light that is diffracted into a given order.
incident_effective(rays, normal)Compute the effective propagation direction of the given rays using
incident_effective().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

- Parameters:
spacing (Quantity | AbstractScalar | AbstractRulingSpacing)
diffraction_order (int | AbstractScalar)
efficiency_measured (FunctionArray[SpectralDirectionalVectorArray, AbstractScalar])
- efficiency(rays, normal)[source]#
The fraction of light that is diffracted into a given order.
- Parameters:
rays (RayVectorArray) – The light rays incident on the rulings
normal (AbstractCartesian3dVectorArray) – The vector normal to the surface on which the rulings are placed.
- Return type:
- incident_effective(rays, normal)#
Compute the effective propagation direction of the given rays using
incident_effective().- Parameters:
rays (RayVectorArray) – The light rays incident on the rulings
normal (AbstractCartesian3dVectorArray) – The vector normal to the surface on which the rulings are placed.
- 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.
- diffraction_order: int | AbstractScalar = <dataclasses._MISSING_TYPE object>#
The diffraction order to simulate.
- efficiency_measured: FunctionArray[SpectralDirectionalVectorArray, AbstractScalar] = <dataclasses._MISSING_TYPE object>#
The discrete measurements of the efficiency.
- spacing: Quantity | AbstractScalar | AbstractRulingSpacing = <dataclasses._MISSING_TYPE object>#
Spacing between adjacent rulings at the given position.
- property spacing_: AbstractRulingSpacing#
A normalized version of
spacingthat is guaranteed to be an instance ofoptika.rulings.AbstractRulingSpacing.