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 | Public Attributes | List of all members
lsst.scarlet.lite.io.ScarletModelData Class Reference

Public Member Functions

 __init__ (self, np.ndarray psf, dict[int, ScarletBlendData]|None blends=None)
 
str json (self)
 
ScarletModelData parse_obj (cls, dict data)
 

Public Attributes

 psf
 
 blends
 

Detailed Description

A container that propagates scarlet models for an entire catalog.

Definition at line 446 of file io.py.

Constructor & Destructor Documentation

◆ __init__()

lsst.scarlet.lite.io.ScarletModelData.__init__ ( self,
np.ndarray psf,
dict[int, ScarletBlendData] | None blends = None )
Initialize an instance

Parameters
----------
bands:
    The names of the bands.
    The order of the bands must be the same as the order of
    the multiband model arrays, and SEDs.
psf:
    The 2D array of the PSF in scarlet model space.
    This is typically a narrow Gaussian integrated over the
    pixels in the exposure.
blends:
    Map from parent IDs in the source catalog
    to scarlet model data for each parent ID (blend).

Definition at line 449 of file io.py.

449 def __init__(self, psf: np.ndarray, blends: dict[int, ScarletBlendData] | None = None):
450 """Initialize an instance
451
452 Parameters
453 ----------
454 bands:
455 The names of the bands.
456 The order of the bands must be the same as the order of
457 the multiband model arrays, and SEDs.
458 psf:
459 The 2D array of the PSF in scarlet model space.
460 This is typically a narrow Gaussian integrated over the
461 pixels in the exposure.
462 blends:
463 Map from parent IDs in the source catalog
464 to scarlet model data for each parent ID (blend).
465 """
466 self.psf = psf
467 if blends is None:
468 blends = {}
469 self.blends = blends
470

Member Function Documentation

◆ json()

str lsst.scarlet.lite.io.ScarletModelData.json ( self)
Serialize the data model to a JSON formatted string

Returns
-------
result : `str`
    The result of the object converted into a JSON format

Definition at line 471 of file io.py.

471 def json(self) -> str:
472 """Serialize the data model to a JSON formatted string
473
474 Returns
475 -------
476 result : `str`
477 The result of the object converted into a JSON format
478 """
479 result = {
480 "psfShape": self.psf.shape,
481 "psf": list(self.psf.flatten().astype(float)),
482 "blends": {bid: blend.as_dict() for bid, blend in self.blends.items()},
483 }
484 return json.dumps(result)
485
std::vector< SchemaItem< Flag > > * items

◆ parse_obj()

ScarletModelData lsst.scarlet.lite.io.ScarletModelData.parse_obj ( cls,
dict data )
Construct a ScarletModelData from python decoded JSON object.

Parameters
----------
data:
    The result of json.load(s) on a JSON persisted ScarletModelData

Returns
-------
result:
    The `ScarletModelData` that was loaded the from the input object

Definition at line 487 of file io.py.

487 def parse_obj(cls, data: dict) -> ScarletModelData:
488 """Construct a ScarletModelData from python decoded JSON object.
489
490 Parameters
491 ----------
492 data:
493 The result of json.load(s) on a JSON persisted ScarletModelData
494
495 Returns
496 -------
497 result:
498 The `ScarletModelData` that was loaded the from the input object
499 """
500 model_psf = np.array(data["psf"]).reshape(data["psfShape"]).astype(np.float32)
501 return cls(
502 psf=model_psf,
503 blends={int(bid): ScarletBlendData.from_dict(blend) for bid, blend in data["blends"].items()},
504 )
505
506

Member Data Documentation

◆ blends

lsst.scarlet.lite.io.ScarletModelData.blends

Definition at line 469 of file io.py.

◆ psf

lsst.scarlet.lite.io.ScarletModelData.psf

Definition at line 466 of file io.py.


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