BaseSurvey¶
- class rubin_sim.scheduler.surveys.BaseSurvey(basis_functions, extra_features=None, extra_basis_functions=None, ignore_obs=None, survey_name='', nside=None, detailers=None, scheduled_obs=None)¶
Bases:
object
A baseclass for survey objects.
- Parameters:
- basis_functionslist
List of basis_function objects
- extra_featureslist XXX–should this be a dict for clarity?
List of any additional features the survey may want to use e.g., for computing final dither positions.
- extra_basis_functionsdict of rubin_sim.scheduler.basis_function objects
Extra basis function objects. Typically not psased in, but et in the __init__.
- ignore_obslist of str (None)
If an incoming observation has this string in the note, ignore it. Handy if one wants to ignore DD fields or observations requested by self. Take note, if a survey is called ‘mysurvey23’, setting ignore_obs to ‘mysurvey2’ will ignore it because ‘mysurvey2’ is a substring of ‘mysurvey23’.
- detailerslist of rubin_sim.scheduler.detailers objects
The detailers to apply to the list of observations.
- scheduled_obsnp.array
An array of MJD values for when observations should execute.
Methods Summary
add_observation
(observation, **kwargs)Add an array of observations rather than one at a time
calc_reward_function
(conditions)- Parameters:
generate_observations
(conditions)generate_observations_rough
(conditions)- Returns:
make_reward_df
(conditions)Create a pandas.DataFrame describing the reward from the survey.
reward_changes
(conditions)List the rewards for each basis function used by the survey.
Methods Documentation
- add_observation(observation, **kwargs)¶
- add_observations_array(observations_array_in, observations_hpid_in)¶
Add an array of observations rather than one at a time
- Parameters:
- observations_array_innp.array
An array of completed observations (with columns like rubin_sim.scheduler.utils.empty_observation).
- observations_hpid_innp.array
Same as observations_array_in, but larger and with an additional column for HEALpix id. Each observation is listed mulitple times, once for every HEALpix it overlaps.
- calc_reward_function(conditions)¶
- Parameters:
- conditionsrubin_sim.scheduler.features.Conditions object
- Returns:
- rewardfloat (or array)
- generate_observations(conditions)¶
- generate_observations_rough(conditions)¶
- Returns:
- one of:
None
A list of observations
- get_scheduled_obs()¶
- make_reward_df(conditions)¶
Create a pandas.DataFrame describing the reward from the survey.
- Parameters:
- conditions
rubin_sim.scheduler.features.Conditions
Conditions for which rewards are to be returned
- conditions
- Returns:
- reward_df
pandas.DataFrame
A table of surveys listing the rewards.
- reward_df
- reward_changes(conditions)¶
List the rewards for each basis function used by the survey.
- Parameters:
- conditions
rubin_sim.scheduler.features.Conditions
Conditions for which rewards are to be returned
- conditions
- Returns:
- rewards
list
A list of tuples, each with a basis function name and the maximum reward returned by that basis function for the provided conditions.
- rewards
- viz_config()¶