LSST Applications 27.0.0,g0265f82a02+469cd937ee,g02d81e74bb+21ad69e7e1,g1470d8bcf6+cbe83ee85a,g2079a07aa2+e67c6346a6,g212a7c68fe+04a9158687,g2305ad1205+94392ce272,g295015adf3+81dd352a9d,g2bbee38e9b+469cd937ee,g337abbeb29+469cd937ee,g3939d97d7f+72a9f7b576,g487adcacf7+71499e7cba,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g591dd9f2cf+df404f777f,g5a732f18d5+be83d3ecdb,g64a986408d+21ad69e7e1,g858d7b2824+21ad69e7e1,g8a8a8dda67+a6fc98d2e7,g99cad8db69+f62e5b0af5,g9ddcbc5298+d4bad12328,ga1e77700b3+9c366c4306,ga8c6da7877+71e4819109,gb0e22166c9+25ba2f69a1,gb6a65358fc+469cd937ee,gbb8dafda3b+69d3c0e320,gc07e1c2157+a98bf949bb,gc120e1dc64+615ec43309,gc28159a63d+469cd937ee,gcf0d15dbbd+72a9f7b576,gdaeeff99f8+a38ce5ea23,ge6526c86ff+3a7c1ac5f1,ge79ae78c31+469cd937ee,gee10cc3b42+a6fc98d2e7,gf1cff7945b+21ad69e7e1,gfbcc870c63+9a11dc8c8f
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
lsst.scarlet.lite.component.Component Class Reference
Inheritance diagram for lsst.scarlet.lite.component.Component:
lsst.scarlet.lite.component.FactorizedComponent lsst.scarlet.lite.io.ComponentCube lsst.scarlet.lite.models.parametric.ParametricComponent lsst.scarlet.lite.models.free_form.FreeFormComponent lsst.scarlet.lite.models.parametric.EllipticalParametricComponent

Public Member Functions

 __init__ (self, tuple bands, Box bbox)
 
Box bbox (self)
 
tuple bands (self)
 
bool resize (self, Box model_box)
 
None update (self, int it, np.ndarray input_grad)
 
Image get_model (self)
 
None parameterize (self, Callable parameterization)
 

Protected Attributes

 _bands
 
 _bbox
 

Detailed Description

A base component in scarlet lite.

Parameters
----------
bands:
    The bands used when the component model is created.
bbox: Box
    The bounding box for this component.

Definition at line 41 of file component.py.

Constructor & Destructor Documentation

◆ __init__()

lsst.scarlet.lite.component.Component.__init__ ( self,
tuple bands,
Box bbox )

Member Function Documentation

◆ bands()

tuple lsst.scarlet.lite.component.Component.bands ( self)
The bands in the component model

Definition at line 66 of file component.py.

66 def bands(self) -> tuple:
67 """The bands in the component model"""
68 return self._bands
69

◆ bbox()

Box lsst.scarlet.lite.component.Component.bbox ( self)
The bounding box that contains the component in the full image

Definition at line 61 of file component.py.

61 def bbox(self) -> Box:
62 """The bounding box that contains the component in the full image"""
63 return self._bbox
64
AmpInfoBoxKey bbox
Definition Amplifier.cc:117

◆ get_model()

Image lsst.scarlet.lite.component.Component.get_model ( self)
Generate a model for the component

This must be implemented in inherited classes.

Returns
-------
model: Image
    The image of the component model.

Reimplemented in lsst.scarlet.lite.component.FactorizedComponent, lsst.scarlet.lite.io.ComponentCube, and lsst.scarlet.lite.models.parametric.ParametricComponent.

Definition at line 91 of file component.py.

91 def get_model(self) -> Image:
92 """Generate a model for the component
93
94 This must be implemented in inherited classes.
95
96 Returns
97 -------
98 model: Image
99 The image of the component model.
100 """
101

◆ parameterize()

None lsst.scarlet.lite.component.Component.parameterize ( self,
Callable parameterization )
Convert the component parameter arrays into Parameter instances

Parameters
----------
parameterization: Callable
    A function to use to convert parameters of a given type into
    a `Parameter` in place. It should take a single argument that
    is the `Component` or `Source` that is to be parameterized.

Reimplemented in lsst.scarlet.lite.component.FactorizedComponent, lsst.scarlet.lite.io.ComponentCube, and lsst.scarlet.lite.models.parametric.ParametricComponent.

Definition at line 103 of file component.py.

103 def parameterize(self, parameterization: Callable) -> None:
104 """Convert the component parameter arrays into Parameter instances
105
106 Parameters
107 ----------
108 parameterization: Callable
109 A function to use to convert parameters of a given type into
110 a `Parameter` in place. It should take a single argument that
111 is the `Component` or `Source` that is to be parameterized.
112 """
113
114

◆ resize()

bool lsst.scarlet.lite.component.Component.resize ( self,
Box model_box )
Test whether or not the component needs to be resized

This should be overriden in inherited classes and return `True`
if the component needs to be resized.

Reimplemented in lsst.scarlet.lite.component.FactorizedComponent, lsst.scarlet.lite.io.ComponentCube, lsst.scarlet.lite.models.free_form.FreeFormComponent, and lsst.scarlet.lite.models.parametric.ParametricComponent.

Definition at line 71 of file component.py.

71 def resize(self, model_box: Box) -> bool:
72 """Test whether or not the component needs to be resized
73
74 This should be overriden in inherited classes and return `True`
75 if the component needs to be resized.
76 """
77

◆ update()

None lsst.scarlet.lite.component.Component.update ( self,
int it,
np.ndarray input_grad )
Update the component parameters from an input gradient

Parameters
----------
it:
    The current iteration of the optimizer.
input_grad:
    Gradient of the likelihood wrt the component model

Reimplemented in lsst.scarlet.lite.component.FactorizedComponent, lsst.scarlet.lite.io.ComponentCube, lsst.scarlet.lite.models.parametric.ParametricComponent, and lsst.scarlet.lite.models.parametric.EllipticalParametricComponent.

Definition at line 79 of file component.py.

79 def update(self, it: int, input_grad: np.ndarray) -> None:
80 """Update the component parameters from an input gradient
81
82 Parameters
83 ----------
84 it:
85 The current iteration of the optimizer.
86 input_grad:
87 Gradient of the likelihood wrt the component model
88 """
89

Member Data Documentation

◆ _bands

lsst.scarlet.lite.component.Component._bands
protected

Definition at line 57 of file component.py.

◆ _bbox

lsst.scarlet.lite.component.Component._bbox
protected

Definition at line 58 of file component.py.


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