LSST Applications g00d0e8bbd7+8c5ae1fdc5,g013ef56533+603670b062,g083dd6704c+2e189452a7,g199a45376c+0ba108daf9,g1c5cce2383+bc9f6103a4,g1fd858c14a+cd69ed4fc1,g210f2d0738+c4742f2e9e,g262e1987ae+612fa42d85,g29ae962dfc+83d129e820,g2cef7863aa+aef1011c0b,g35bb328faa+8c5ae1fdc5,g3fd5ace14f+5eaa884f2a,g47891489e3+e32160a944,g53246c7159+8c5ae1fdc5,g5b326b94bb+dcc56af22d,g64539dfbff+c4742f2e9e,g67b6fd64d1+e32160a944,g74acd417e5+c122e1277d,g786e29fd12+668abc6043,g87389fa792+8856018cbb,g88cb488625+47d24e4084,g89139ef638+e32160a944,g8d7436a09f+d14b4ff40a,g8ea07a8fe4+b212507b11,g90f42f885a+e1755607f3,g97be763408+34be90ab8c,g98df359435+ec1fa61bf1,ga2180abaac+8c5ae1fdc5,ga9e74d7ce9+43ac651df0,gbf99507273+8c5ae1fdc5,gc2a301910b+c4742f2e9e,gca7fc764a6+e32160a944,gd7ef33dd92+e32160a944,gdab6d2f7ff+c122e1277d,gdb1e2cdc75+1b18322db8,ge410e46f29+e32160a944,ge41e95a9f2+c4742f2e9e,geaed405ab2+0d91c11c6d,w.2025.44
LSST Data Management Base Package
Loading...
Searching...
No Matches
lsst.scarlet.lite.component.Component Class Reference
Inheritance diagram for lsst.scarlet.lite.component.Component:
lsst.scarlet.lite.component.FactorizedComponent lsst.scarlet.lite.io.cube_component.ComponentCube lsst.scarlet.lite.models.free_form.FreeFormComponent lsst.scarlet.lite.models.parametric.ParametricComponent lsst.scarlet.lite.models.free_form.FactorizedFreeFormComponent 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)
 
ScarletComponentBaseData to_data (self)
 

Protected Attributes

tuple _bands = bands
 
Box _bbox = 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 46 of file component.py.

Constructor & Destructor Documentation

◆ __init__()

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

Definition at line 57 of file component.py.

61 ):
62 self._bands = bands
63 self._bbox = bbox
64

Member Function Documentation

◆ bands()

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

Definition at line 71 of file component.py.

71 def bands(self) -> tuple:
72 """The bands in the component model"""
73 return self._bands
74

◆ bbox()

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

Definition at line 66 of file component.py.

66 def bbox(self) -> Box:
67 """The bounding box that contains the component in the full image"""
68 return self._bbox
69

◆ 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.cube_component.ComponentCube, lsst.scarlet.lite.models.free_form.FreeFormComponent, and lsst.scarlet.lite.models.parametric.ParametricComponent.

Definition at line 96 of file component.py.

96 def get_model(self) -> Image:
97 """Generate a model for the component
98
99 This must be implemented in inherited classes.
100
101 Returns
102 -------
103 model: Image
104 The image of the component model.
105 """
106

◆ 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.cube_component.ComponentCube, lsst.scarlet.lite.models.free_form.FreeFormComponent, and lsst.scarlet.lite.models.parametric.ParametricComponent.

Definition at line 108 of file component.py.

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

◆ 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.cube_component.ComponentCube, lsst.scarlet.lite.models.free_form.FactorizedFreeFormComponent, lsst.scarlet.lite.models.free_form.FreeFormComponent, and lsst.scarlet.lite.models.parametric.ParametricComponent.

Definition at line 76 of file component.py.

76 def resize(self, model_box: Box) -> bool:
77 """Test whether or not the component needs to be resized
78
79 This should be overriden in inherited classes and return `True`
80 if the component needs to be resized.
81 """
82

◆ to_data()

ScarletComponentBaseData lsst.scarlet.lite.component.Component.to_data ( self)
Convert the component to persistable ScarletComponentBaseData

Returns
-------
component_data: ScarletComponentBaseData
    The data object containing the component information

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

Definition at line 120 of file component.py.

120 def to_data(self) -> ScarletComponentBaseData:
121 """Convert the component to persistable ScarletComponentBaseData
122
123 Returns
124 -------
125 component_data: ScarletComponentBaseData
126 The data object containing the component information
127 """
128
129

◆ 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.cube_component.ComponentCube, lsst.scarlet.lite.models.free_form.FreeFormComponent, lsst.scarlet.lite.models.parametric.EllipticalParametricComponent, and lsst.scarlet.lite.models.parametric.ParametricComponent.

Definition at line 84 of file component.py.

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

Member Data Documentation

◆ _bands

tuple lsst.scarlet.lite.component.Component._bands = bands
protected

Definition at line 62 of file component.py.

◆ _bbox

Box lsst.scarlet.lite.component.Component._bbox = bbox
protected

Definition at line 63 of file component.py.


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