TargetMapModuloBasisFunction

class rubin_sim.scheduler.basis_functions.TargetMapModuloBasisFunction(day_offset=None, filtername='r', nside=None, target_maps=None, norm_factor=None, out_of_bounds_val=-10.0, season_modulo=2, max_season=None, season_length=365.25)

Bases: BaseBasisFunction

Basis function that tracks number of observations and tries to match a specified spatial distribution can enter multiple maps that will be used at different times in the survey

Parameters:
day_offsetnp.array

Healpix map that has the offset to be applied to each pixel when computing what season it is on.

filtername(string ‘r’)

The name of the filter for this target map.

nside: int (default_nside)

The healpix resolution.

target_mapslist of numpy array (None)

healpix maps showing the ratio of observations desired for all points on the sky. Last map will be used for season -1. Probably shouldn’t support going to season less than -1.

norm_factorfloat (0.00010519)

for converting target map to number of observations. Should be the area of the camera divided by the area of a healpixel divided by the sum of all your goal maps. Default value assumes LSST foV has 1.75 degree radius and the standard goal maps. If using mulitple filters, see rubin_sim.scheduler.utils.calc_norm_factor for a utility that computes norm_factor.

out_of_bounds_valfloat (-10.)

Reward value to give regions where there are no observations requested (unitless).

season_moduloint (2)

The value to modulate the season by (years).

max_seasonint (None)

For seasons higher than this value (pre-modulo), the final target map is used.