LSST Applications  21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
LSST Data Management Base Package
Public Member Functions | Static Public Attributes | List of all members
lsst.ip.isr.linearize.LinearizeBase Class Reference
Inheritance diagram for lsst.ip.isr.linearize.LinearizeBase:
lsst.ip.isr.linearize.LinearizeLookupTable lsst.ip.isr.linearize.LinearizeNone lsst.ip.isr.linearize.LinearizePolynomial lsst.ip.isr.linearize.LinearizeProportional lsst.ip.isr.linearize.LinearizeSpline lsst.ip.isr.linearize.LinearizeSquared

Public Member Functions

def __call__ (self, image, **kwargs)
 

Static Public Attributes

 LinearityType = None
 

Detailed Description

Abstract base class functor for correcting non-linearity.

Subclasses must define __call__ and set class variable
LinearityType to a string that will be used for linearity type in
the cameraGeom.Amplifier.linearityType field.

All linearity corrections should be defined in terms of an
additive correction, such that:

corrected_value = uncorrected_value + f(uncorrected_value)

Definition at line 475 of file linearize.py.

Member Function Documentation

◆ __call__()

def lsst.ip.isr.linearize.LinearizeBase.__call__ (   self,
  image,
**  kwargs 
)
Correct non-linearity.

Parameters
----------
image : `lsst.afw.image.Image`
    Image to be corrected
kwargs : `dict`
    Dictionary of parameter keywords:
    ``"coeffs"``
        Coefficient vector (`list` or `numpy.array`).
    ``"table"``
        Lookup table data (`numpy.array`).
    ``"log"``
        Logger to handle messages (`logging.Logger`).

Returns
-------
output : `bool`
    If true, a correction was applied successfully.

Raises
------
RuntimeError:
    Raised if the linearity type listed in the
    detector does not match the class type.

Reimplemented in lsst.ip.isr.linearize.LinearizeNone, lsst.ip.isr.linearize.LinearizeProportional, lsst.ip.isr.linearize.LinearizeSpline, lsst.ip.isr.linearize.LinearizeSquared, lsst.ip.isr.linearize.LinearizePolynomial, and lsst.ip.isr.linearize.LinearizeLookupTable.

Definition at line 490 of file linearize.py.

490  def __call__(self, image, **kwargs):
491  """Correct non-linearity.
492 
493  Parameters
494  ----------
495  image : `lsst.afw.image.Image`
496  Image to be corrected
497  kwargs : `dict`
498  Dictionary of parameter keywords:
499  ``"coeffs"``
500  Coefficient vector (`list` or `numpy.array`).
501  ``"table"``
502  Lookup table data (`numpy.array`).
503  ``"log"``
504  Logger to handle messages (`logging.Logger`).
505 
506  Returns
507  -------
508  output : `bool`
509  If true, a correction was applied successfully.
510 
511  Raises
512  ------
513  RuntimeError:
514  Raised if the linearity type listed in the
515  detector does not match the class type.
516  """
517  pass
518 
519 

Member Data Documentation

◆ LinearityType

lsst.ip.isr.linearize.LinearizeBase.LinearityType = None
static

Definition at line 487 of file linearize.py.


The documentation for this class was generated from the following file: