AbstractSystem#

class optika.systems.AbstractSystem[source]#

Bases: DxfWritable, Plottable, Printable, Transformable, Shaped

An interface describing an optical system.

Could potentially be sequential or non-sequential.

Attributes

kwargs_plot

Extra keyword arguments that will be used in the call to named_arrays.plt.plot() within the plot() method.

shape

The array shape of this object.

transformation

the coordinate transformation between the global coordinate system and this object's local coordinate system

Methods

__init__()

image(scene, **kwargs)

Forward model of the optical system.

plot([ax, transformation, components])

Plot the selected components onto the given axes.

to_dxf(file, unit[, transformation])

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

Inheritance diagram of optika.systems.AbstractSystem
abstractmethod image(scene, **kwargs)[source]#

Forward model of the optical system. Maps the given spectral radiance of a scene to detector counts.

Parameters:
Return type:

SpectralPositionalVectorArray

abstractmethod plot(ax=None, transformation=None, components=None, **kwargs)#

Plot the selected components onto the given axes.

Parameters:
Return type:

AbstractScalar | dict[str, AbstractScalar]

to_dxf(file, unit, transformation=None)#
Parameters:
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

abstract property kwargs_plot: None | dict#

Extra keyword arguments that will be used in the call to named_arrays.plt.plot() within the plot() method.

abstract property shape: dict[str, int]#

The array shape of this object.

abstract property transformation: None | AbstractTransformation#

the coordinate transformation between the global coordinate system and this object’s local coordinate system