Source code for rubin_scheduler.utils.ddf_locations

__all__ = ("ddf_locations", "ddf_locations_pre3_5", "special_locations", "ddf_locations_skycoord")

import warnings

import astropy.units as u
from astropy.coordinates import SkyCoord


[docs] def special_locations(skycoords=False): """Special locations. Parameters ---------- skycoords : `bool` Return locations as astropy.SkyCoords. If False, returns as a tuple of floats. Default False. """ # Roman bulge field location roman_ra_deg = 268.708 roman_dec_deg = -28.975 result = {} if skycoords: result["Roman_bulge_location"] = SkyCoord(roman_ra_deg * u.deg, roman_dec_deg * u.deg, frame="icrs") result.update(ddf_locations(skycoords=True)) else: result["Roman_bulge_location"] = (roman_ra_deg, roman_dec_deg) result.update(ddf_locations()) return result
def ddf_locations_skycoord(): warnings.warn("ddf_locations_skycoord deprecated, use ddf_locations(skycoords=True)", FutureWarning) return ddf_locations(skycoords=True)
[docs] def ddf_locations(skycoords=False): """Return the DDF locations as a dict in degrees.""" # The DDF locations here are from Neil Brandt's white paper # submitted in response to the 2018 Call for White Papers on observing # strategy # Document-30468 -- AGN-DDF-WP-02.pdf # The locations are chosen based on existing multi-wavelength # coverage, plus an offset to avoid the bright star Mira near XMM-LSS ddf = {} ddf["ELAISS1"] = SkyCoord("00:37:48 −44:01:30", unit=(u.hourangle, u.deg), frame="icrs") ddf["XMM_LSS"] = SkyCoord("02:22:18 −04:49:00", unit=(u.hourangle, u.deg), frame="icrs") ddf["ECDFS"] = SkyCoord("03:31:55 −28:07:00", unit=(u.hourangle, u.deg), frame="icrs") ddf["COSMOS"] = SkyCoord("10:00:26 +02:14:01", unit=(u.hourangle, u.deg), frame="icrs") ddf["EDFS_a"] = SkyCoord(ra=58.90 * u.deg, dec=-49.32 * u.deg, frame="icrs") ddf["EDFS_b"] = SkyCoord(ra=63.60 * u.deg, dec=-47.60 * u.deg, frame="icrs") if not skycoords: # replace SkyCoord with ra/deg tuple in degrees ddf = dict([(key, (ddf[key].ra.deg, ddf[key].dec.deg)) for key in ddf]) return ddf
[docs] def ddf_locations_pre3_5(): """Return the DDF locations used for v1 to v3.4 simulations.""" ddf = {} ddf["ELAISS1"] = (9.45, -44.0) ddf["XMM_LSS"] = (35.708333, -4 - 45 / 60.0) ddf["ECDFS"] = (53.125, -28.0 - 6 / 60.0) ddf["COSMOS"] = (150.1, 2.0 + 10.0 / 60.0 + 55 / 3600.0) ddf["EDFS_a"] = (58.90, -49.315) ddf["EDFS_b"] = (63.6, -47.60) return ddf