LSST Applications g0603fd7c41+501e3db9f9,g0aad566f14+23d8574c86,g0dd44d6229+a1a4c8b791,g2079a07aa2+86d27d4dc4,g2305ad1205+a62672bbc1,g2bbee38e9b+047b288a59,g337abbeb29+047b288a59,g33d1c0ed96+047b288a59,g3a166c0a6a+047b288a59,g3d1719c13e+23d8574c86,g487adcacf7+cb7fd919b2,g4be5004598+23d8574c86,g50ff169b8f+96c6868917,g52b1c1532d+585e252eca,g591dd9f2cf+4a9e435310,g63cd9335cc+585e252eca,g858d7b2824+23d8574c86,g88963caddf+0cb8e002cc,g99cad8db69+43388bcaec,g9ddcbc5298+9a081db1e4,ga1e77700b3+a912195c07,gae0086650b+585e252eca,gb0e22166c9+60f28cb32d,gb2522980b2+793639e996,gb3a676b8dc+b4feba26a1,gb4b16eec92+63f8520565,gba4ed39666+c2a2e4ac27,gbb8dafda3b+a5d255a82e,gc120e1dc64+d820f8acdb,gc28159a63d+047b288a59,gc3e9b769f7+f4f1cc6b50,gcf0d15dbbd+a1a4c8b791,gdaeeff99f8+f9a426f77a,gdb0af172c8+b6d5496702,ge79ae78c31+047b288a59,w.2024.19
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: