Source code for lsst.sims.ocs.configuration.science.galactic_plane

import lsst.pex.config as pexConfig

from lsst.sims.ocs.configuration.proposal import General, GeneralBandFilter, Selection
from lsst.sims.ocs.configuration.proposal import general_prop_reg, SELECTION_LIMIT_TYPES

__all__ = ["GalacticPlane"]

[docs]@pexConfig.registerConfig("GalacticPlane", general_prop_reg, General) class GalacticPlane(General): """This class sets the parameters for specifying the Galactic Plane proposal. """
[docs] def setDefaults(self): """Setup all the proposal information. """ self.name = "GalacticPlane" # ------------------------- # Sky Region specifications # ------------------------- # Galactic Plane gal_plane = Selection() gal_plane.limit_type = SELECTION_LIMIT_TYPES[6] gal_plane.minimum_limit = 0.0 gal_plane.maximum_limit = 10.0 gal_plane.bounds_limit = 90.0 self.sky_region.selections = {0: gal_plane} # ----------------------------- # Sky Exclusion specifications # ----------------------------- self.sky_exclusion.dec_window = 90.0 # --------------------------------- # Sky Nightly Bounds specifications # --------------------------------- self.sky_nightly_bounds.twilight_boundary = -12.0 self.sky_nightly_bounds.delta_lst = 60.0 # ------------------------------ # Sky Constraints specifications # ------------------------------ self.sky_constraints.max_airmass = 2.5 self.sky_constraints.max_cloud = 0.7 # ---------------------- # Scheduling information # ---------------------- self.scheduling.max_num_targets = 100 self.scheduling.accept_serendipity = False self.scheduling.accept_consecutive_visits = False self.scheduling.airmass_bonus = 0.5 # -------------------------- # Band Filter specifications # -------------------------- u_filter = GeneralBandFilter() u_filter.name = 'u' u_filter.num_visits = 30 u_filter.bright_limit = 20.8 u_filter.dark_limit = 30.0 u_filter.max_seeing = 3.0 u_filter.exposures = [15.0, 15.0] g_filter = GeneralBandFilter() g_filter.name = 'g' g_filter.num_visits = 30 g_filter.bright_limit = 20.8 g_filter.dark_limit = 30.0 g_filter.max_seeing = 3.0 g_filter.exposures = [15.0, 15.0] r_filter = GeneralBandFilter() r_filter.name = 'r' r_filter.num_visits = 30 r_filter.bright_limit = 20.0 r_filter.dark_limit = 30.0 r_filter.max_seeing = 2.0 r_filter.exposures = [15.0, 15.0] i_filter = GeneralBandFilter() i_filter.name = 'i' i_filter.num_visits = 30 i_filter.bright_limit = 19.5 i_filter.dark_limit = 30.0 i_filter.max_seeing = 2.0 i_filter.exposures = [15.0, 15.0] z_filter = GeneralBandFilter() z_filter.name = 'z' z_filter.num_visits = 30 z_filter.bright_limit = 17.0 z_filter.dark_limit = 21.4 z_filter.max_seeing = 2.0 z_filter.exposures = [15.0, 15.0] y_filter = GeneralBandFilter() y_filter.name = 'y' y_filter.num_visits = 30 y_filter.bright_limit = 16.0 y_filter.dark_limit = 21.4 y_filter.max_seeing = 2.0 y_filter.exposures = [15.0, 15.0] self.filters = {u_filter.name: u_filter, g_filter.name: g_filter, r_filter.name: r_filter, i_filter.name: i_filter, z_filter.name: z_filter, y_filter.name: y_filter}