RIZDetectionCoaddExposureTime

class rubin_sim.maf.metrics.RIZDetectionCoaddExposureTime(*, bins, binCol='night', expTimeCol='visitExposureTime', filterCol='filter', ebvlim=0.2, min_expTime=15, det_bands=None, min_bands=None, **kwargs)

Bases: VectorMetric

A metric computing the total exposure time of an riz coadd.

This metric is intended to be used as a proxy for depth fluctuations in catalogs detected from coadds of the r, i and z bands together. This coadding + detection scheme is used by metadetection (weak lensing shear estimator) and will likely be adopted by the Rubin science pipelines.

It counts the total exposure time in all three bands, excluding dusty regions, exposures that are too short, or areas where not all bands ugrizY are present. We do not make a depth cut explicitly since that is circular (and thus confuses MRB’s feeble mind :/).

TODO maybe:
  • apply some sort of inverse variance weighting to the coadd based on sky level?

  • use some sort of effective exposure time that accounts for the PSF?

  • @rhiannonlynne nicely suggested this Teff computation: rubin_sim/rubin_sim/maf/metrics/technicalMetrics.py

However, given the unknown nature of detection will look like in LSST, a simple sum of exposure time is probably ok.

Parameters:
binslist of float

The bin edges. Typically this will be a list of nights for which to compute the riz coadd exposure times.

bin_colstr, optional

The column to bin on. The default is ‘night’.

exp_time_colstr, optional

The column name for the exposure time.

filter_colstr, optional

The column name for the filter name.

ebvlimfloat, optional

The upper limit on E(B-V). Regions with E(B-V) greater than this limit are excluded.

min_exp_timefloat, optional

The minimal exposure time for a visit to contribute to a coadd.

det_bandslist of str, optional

If not None, the bands to use for detection. If None, defaults to riz.

min_bandslist of str, optional

If not None, the bands whose presence is used to cut the survey data. If None, defaults to ugrizY.

Methods Summary

run(data_slice, slice_point)

Calculate metric values.

Methods Documentation

run(data_slice, slice_point)

Calculate metric values.

Parameters:
data_slicenumpy.recarray

Values passed to metric by the slicer, which the metric will use to calculate metric values at each slice_point.

slice_pointdict or None

Dictionary of slice_point metadata passed to each metric. E.g. the ra/dec of the healpix pixel or opsim fieldId.

Returns:
metricValue: int float or object

The metric value at each slice_point.