InterpolatedSystem

class kgpy.optics.systems.InterpolatedSystem(distortion, point_spread=None, vignetting=None, effective_area=None, field_stop=None, detector=None)

Bases: AbstractSystem, Generic[DistortionT, PointSpreadT, VignettingT, EffectiveAreaT, FieldStopT]

Parameters:
  • distortion (DistortionT) –

  • point_spread (PointSpreadT | None) –

  • vignetting (VignettingT | None) –

  • effective_area (EffectiveAreaT | None) –

  • field_stop (FieldStopT | None) –

  • detector (DetectorT) –

__init__(distortion, point_spread=None, vignetting=None, effective_area=None, field_stop=None, detector=None)
Parameters:
  • distortion (DistortionT) –

  • point_spread (PointSpreadT | None) –

  • vignetting (VignettingT | None) –

  • effective_area (EffectiveAreaT | None) –

  • field_stop (FieldStopT | None) –

  • detector (DetectorT | None) –

Return type:

None

Attributes

detector

effective_area

field_stop

point_spread

vignetting

distortion

Methods

__init__(distortion[, point_spread, ...])

inverse(image)

rtype:

kgpy.function.Array[kgpy.optics.vectors.SpectralFieldVector, typing.Union[int, float, numpy.ndarray, astropy.units.quantity.Quantity, kgpy.labeled.AbstractArray, kgpy.uncertainty.AbstractArray]]

Inheritance Diagram

digraph inheritance6b1cff87a5 { bgcolor=transparent; rankdir=TB; size="8.0, 12.0"; "abc.ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "kgpy.optics.systems.AbstractSystem" [URL="kgpy.optics.systems.AbstractSystem.html#kgpy.optics.systems.AbstractSystem",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="AbstractSystem()"]; "abc.ABC" -> "kgpy.optics.systems.AbstractSystem" [arrowsize=0.5,style="setlinewidth(0.5)"]; "kgpy.optics.systems.InterpolatedSystem" [URL="kgpy.optics.systems.InterpolatedSystem.html#kgpy.optics.systems.InterpolatedSystem",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="InterpolatedSystem(distortion: 'DistortionT', point_spread: 'typ.Optional[PointSpreadT]' = None, vignetting: 'typ.Optional[VignettingT]' = None, effective_area: 'typ.Optional[EffectiveAreaT]' = None, field_stop: 'typ.Optional[FieldStopT]' = None, detector: 'DetectorT' = None)"]; "kgpy.optics.systems.AbstractSystem" -> "kgpy.optics.systems.InterpolatedSystem" [arrowsize=0.5,style="setlinewidth(0.5)"]; "typing.Generic" -> "kgpy.optics.systems.InterpolatedSystem" [arrowsize=0.5,style="setlinewidth(0.5)"]; "typing.Generic" [URL="https://docs.python.org/3/library/typing.html#typing.Generic",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Abstract base class for generic types."]; }
inverse(image)
Return type:

kgpy.function.Array[kgpy.optics.vectors.SpectralFieldVector, typing.Union[int, float, numpy.ndarray, astropy.units.quantity.Quantity, kgpy.labeled.AbstractArray, kgpy.uncertainty.AbstractArray]]

Parameters:
detector: typing.TypeVar(DetectorT, bound= kgpy.optics.detectors.Detector) = None
distortion: typing.TypeVar(DistortionT, bound= kgpy.optics.aberrations.Distortion)
effective_area: typing.Optional[typing.TypeVar(EffectiveAreaT, bound= kgpy.optics.aberrations.EffectiveArea)] = None
field_stop: typing.Optional[typing.TypeVar(FieldStopT, bound= kgpy.optics.aberrations.FieldStop)] = None
point_spread: typing.Optional[typing.TypeVar(PointSpreadT, bound= kgpy.optics.aberrations.PointSpread)] = None
vignetting: typing.Optional[typing.TypeVar(VignettingT, bound= kgpy.optics.aberrations.Vignetting)] = None