BaseMarkovSurvey

class rubin_sim.scheduler.surveys.BaseMarkovSurvey(basis_functions, basis_weights, extra_features=None, smoothing_kernel=None, ignore_obs=None, survey_name=None, nside=None, seed=42, dither=True, detailers=None, camera='LSST', fields=None, area_required=None, npositions=7305)

Bases: BaseSurvey

A Markov Decision Function survey object. Uses Basis functions to compute a final reward function and decide what to observe based on the reward. Includes methods for dithering and defaults to dithering nightly.

Parameters:
basis_functionlist of rubin_sim.schuler.basis_function objects
basis_weightslist of float

Must be same length as basis_function

seedhashable

Random number seed, used for randomly orienting sky tessellation.

camerastr (‘LSST’)

Should be ‘LSST’ or ‘comcam’

fieldsnp.array (None)

An array of field positions. Should be numpy array with columns of “RA” and “dec” in radians. If none, site_models.read_fields or utils.comcam_tessellate is used to read field positions.

area_requiredfloat (None)

The valid area that should be present in the reward function (square degrees).

npositionsint (7305)

The number of dither positions to pre-compute. Defaults to 7305 (so good for 20 years)

Methods Summary

calc_reward_function(conditions)

Parameters:

generate_observations_rough(conditions)

Returns:

smooth_reward()

If we want to smooth the reward function.

Methods Documentation

calc_reward_function(conditions)
Parameters:
conditionsrubin_sim.scheduler.features.Conditions object
Returns:
rewardfloat (or array)
generate_observations_rough(conditions)
Returns:
one of:
  1. None

  2. A list of observations

smooth_reward()

If we want to smooth the reward function.