ProductField#

final class lsst.images.fields.ProductField(operands: Iterable[Field])#

Bases: BaseField

A field that multiplies other fields lazily.

Parameters#

operandsIterable [ BaseField ]

The fields to multiply together.

Attributes Summary

bounds

The region over which this field can be evaluated (Bounds).

operands

The fields that are multiplied together (tuple [BaseField, ...]).

unit

The units of the field (astropy.units.UnitBase or None).

Methods Summary

__call__(*, x, y[, quantity])

Call self as a function.

evaluate(*, x, y[, quantity])

Evaluate at non-gridded points.

from_legacy(legacy[, unit, bounds])

Convert from a legacy lsst.afw.math.ProductBoundedField.

multiply_constant(factor)

Multiply by a constant, returning a new field of the same type.

render([bbox, dtype])

Create an image realization of the field.

serialize(archive)

Serialize the field to an output archive.

to_legacy()

Convert to a legacy lsst.afw.math.ProductBoundedField.

Attributes Documentation

bounds#
operands#

The fields that are multiplied together (tuple [BaseField, …]).

unit#

Methods Documentation

__call__(*, x: ndarray, y: ndarray, quantity: bool = False) ndarray | Quantity#

Call self as a function.

evaluate(*, x: ndarray, y: ndarray, quantity: bool = False) ndarray | Quantity#

Evaluate at non-gridded points.

Parameters#

x

X coordinates to evaluate at.

y

Y coordinates to evaluate at; must be broadcast-compatible with x.

quantity

If True, return an astropy.units.Quantity instead of a numpy.ndarray. If unit is None, the returned object will be a dimensionless Quantity.

static from_legacy(legacy: LegacyProductBoundedField, unit: astropy.units.UnitBase | None = None, bounds: Bounds | None = None) ProductField#

Convert from a legacy lsst.afw.math.ProductBoundedField.

Parameters#

legacy

Legacy field to convert.

unit

The units of the returned field (lsst.afw.math.BoundedField objects do not know their units).

bounds

The bounds of the returned field, if they should be different from the bounding box of legacy.

multiply_constant(factor: float | Quantity | UnitBase) ProductField#

Multiply by a constant, returning a new field of the same type.

Parameters#

factor

Factor to multiply by. When this has units, those should multiply self.unit or set the units of the returned field if self.unit is None.

render(bbox: Box | None = None, *, dtype: type[Any] | dtype[Any] | _SupportsDType[dtype[Any]] | tuple[Any, Any] | list[Any] | _DTypeDict | str | None = None) Image#

Create an image realization of the field.

Parameters#

bbox

Bounding box of the image. If not provided, self.bounds.bbox will be used.

dtype

Pixel data type for the returned image.

serialize(archive: OutputArchive[Any]) ProductFieldSerializationModel#

Serialize the field to an output archive.

to_legacy() LegacyProductBoundedField#

Convert to a legacy lsst.afw.math.ProductBoundedField.