Releases: lsst/rubin_scheduler
v3.4.0
v3.4.0 adds the StartFieldSequenceDetailer
detailer, which allows the insertion of a set of observations before the execution of following observations (say, adding an AOS visit before a sequence for a field survey).
In addition, the default start date for the survey is updated from May 1, 2025 to November 1, 2025, to better align simulations with the expected date of the survey.
A bugfix update added the sun's azimuth value to the Conditions object.
What's Changed
- update default start date to mjd=60949 (Oct 1, 2025) by @yoachim in #130
- missing sun azimuth by @yoachim in #137
- Tickets/sp 1756 by @yoachim in #138
Full Changelog: v3.3.1...v3.4.0
v3.3.1
v3.3.1
Bugfix for ComCamGridDitherDetailer.
The update also includes fixes to unit tests to run faster, primarily by reducing redundancy in more time-consuming tests. This update also fixed some bugs in not commonly used code where radians and degrees were not set appropriately, and expanded unit test coverage to run basic tests on all basis functions.
Some additional basis functions were identified as to-be-deprecated and flagged as such.
What's Changed
- Tickets/sp 1739-speed up unit tests by @yoachim in #132
- SP-1751: Patch ComCamGridDitherDetailer by @bechtol in #136
Full Changelog: v3.3.0...v3.3.1
v3.3.0
v3.3.0 adds the ComCamGridDitherDetailer for commissioning observations with comcam in a 2x2 grid.
The opsim output column "scripted_id" is also removed, and the content that was in that column will be placed inside the "scheduler_note" column instead, preserving links between scripted survey visits and their metadata - within the scheduler_note metadata.
What's Changed
- remove scripted_id by @yoachim in #131
- SP-1745: Add ComCamGridDitherDetailer to scheduler config by @bechtol in #135
New Contributors
Full Changelog: v3.2.1...v3.3.0
v3.2.1
v3.2.1 fixes a bug in the FieldAltAzSurvey to properly set the requested sequence of visits.
It also fixes a bug in the AltAz2RaDecDetailer calculation of the expected RA/Dec value.
The creation of snapshots of the scheduler for simulation testing and debugging purposes from sim_runner is also now supported.
What's Changed
- tickets/SP-1721: add option to save snapshots by @ehneilsen in #133
- FieldAltAzSurvey pass init kwarg properly by @yoachim in #134
Full Changelog: v3.2.0...v3.2.1
v3.2.0
v3.2.0 adds a rotation converter appropriate for use with comcam.
Set "telescope='comcam'" when using a rotation converter to pick up the comcam version.
What's Changed
- OPSIM-1209: Add rotation converter for comcam by @rhiannonlynne in #129
Full Changelog: v3.1.0...v3.2.0
v3.1.0
v3.1.0
- addition of the FieldAltAzSurvey
- update for ToO surveys to split long exposures which may saturate and add
target_name
- bugfix for CameraRotSmallDitherDetailer
- support for reading multiple nights from the consdb for conversion to opsim visit format or ObservationArrays
- deprecation warning added to SolarElongMaskBasisFunction (a duplicate basis function)
What's Changed
- tickets/SP-1667: support reading multiple nights by @ehneilsen in #120
- add target_name to observations competed by ToO surveys by @yoachim in #122
- tickets/SP-1685 by @ehneilsen in #121
- Dep warning added to SolarElongMaskBasisFunction by @yoachim in #123
- Make sure ToO surveys won't saturate if nsnaps is set to 1 by @yoachim in #124
- SP-1722: add FieldAltAzSurvey by @yoachim in #125
- tickets/SP-1723: impove support for data from consdb by @ehneilsen in #126
- Fix bug in CameraRotSmallDitherDetailer by @rhiannonlynne in #127
- SP-1737: Fix tab formatting error by @rhiannonlynne in #128
Full Changelog: v3.0.0...v3.1.0
v3.0.0
Major update 3.0.0
V3.0.0 introduces some breaking changes from v2.0.2 -- primarily in deprecation of some keyword arguments and basis functions, where before backwards-compatible shims had been left in place.
The tel_alt_limit
and tel_az_limit
values in the Conditions object should come from the telescope kinematic model limits. sky_alt_limit
and sky_az_limit
lists now are the arbitrary masked zones that can come from the Conditions object.
The previously deprecated empty_observation()
was removed, and ObservationArray
should be used instead.
Previously deprecated kwargs for FieldSurvey have been removed; sequences should be defined via dictionaries of nvisits
, exptimes
, and nexps
for each of the filters in sequence
(or a list of ObservationArray
s may be passed).
Previously deprecated survey_start_mjd()
and set_default_nside()
were removed; use SURVEY_START_MJD and DEFAULT_NSIDE instead.
BaseSurveyFeature was made an abstract class, to enforce definition of both add_observation
and add_observation_array
to subclasses.
The padding method for the AltAzShadowMaskBasisFunction
was updated, so that the mask is grown appropriately along the edges of the defined region.
The example_scheduler will now configure and run (while successfully creating reward dataframes) at any nside.
There were also updates in the code used to read the ConsDb and generate and manage pre-night simulations in the archive module.
What's Changed
- DM-45888: Remove mambaforge for miniforge by @roceb in #111
- OPSIM-1196: more cleanup for summit use by @rhiannonlynne in #110
- remove core sched rotator checking. add whole queue kwarg to request_… by @yoachim in #112
- Tickets/opsim 1197 by @yoachim in #113
- Tickets/sp 1619 by @yoachim in #114
- fix healpy mask growth to work beyond small angle approx by @yoachim in #115
- Tickets/sp 1629 by @yoachim in #116
- docstring updating by @yoachim in #118
- tickets/SP-1623: refactor metadata storage in the prenight scheduler simulation archive to improve performance by @ehneilsen in #117
- tickets/SP-1675: accommodate new shape of seq_num in the consdb by @ehneilsen in #119
New Contributors
Full Changelog: v2.0.2...v3.0.0
v2.0.2
v2.0.2 includes a small update to the ModelObservatory, to account for downtimes which could last less than a full night. Previous behavior was to skip the remainder of the night, if a downtime was encountered; now the ModelObservatory will just skip to the end of the downtime.
This behavior was not relevant before v2.0.0, as older downtime (Unscheduled and Scheduled downtimes) only included full nights; with v2.0.0, the additional unscheduled downtime in UnscheduledDowntimeMoreY1Data
within the first year includes downtimes that are as short as 1 hour.
What's Changed
Full Changelog: v2.0.1...v2.0.2
v2.0.1
v2.0.1 features small bug fixes:
-
SURVEY_START_MJD replaces
survey_start_mjd()
.. the function survey_start_mjd is still available, but will be deprecated. -
DEFAULT_NSIDE replaces
set_default_nside()
.. the function is still available but will be deprecated. -
The
make_rolling_footprint
function works more consistently with current expectations, if called with defaults. -
The conditions object will print its values more consistently.
-
The two-shutter-motion warning was made appropriately less sensitive.
-
The documentation pages were brought up to date with the new schema and
archive
pages added.
What's Changed
- Tickets/opsim 1191 by @yoachim in #105
- OPSIM-1192: make_rolling_footprint work with default values by @yoachim in #106
- tiickets/OPSIM-1193: add SURVEY_START_MJD and DEFAULT_NSIDE to replace functions by @yoachim in #108
- Bring documentation up to date by @rhiannonlynne in #107
Full Changelog: v2.0.0...v2.0.1
v2.0.0
v2.0.0 has several important changes from v1.2.1.
-
Removed Basis functions:
LimitObsPnightBasisFunction
SunHighLimitBasisFunction
TargetMapBasisFunction
AvoidLongGapsBasisFunction
AvoidFastRevisits
GoalStrictFilterBasisFunction
AggressiveSlewtimeBasisFunction
SkybrightnessLimitAtHpixBasisFunction
SkybrightnessLimitBasisFunction
CablewrapUnwrapBasisFunction
TemplateGenerateBasisFunction
FootprintNvisBasisFunction
ThirdObservationBasisFunction
NearSunTwilightBasisFunction
ObservedTwiceBasisFunction
LimitRepeatBasisFunction
ZenithShadowMaskBasisFunction
MaskAzimuthBasisFunction
TargetMapModuloBasisFunction
-
Removed features:
NObsSurvey
(and note thatNObsCount
now accepts a note as well as a filter name to double for what was previously inNObsSurvey
),LastsequenceObservation
LastFilterChange
CoaddedDepth
NObservationsSeason
NObsCountSeason
SurveyInNight
-
empty_observation
has been replaced byObservationsArray
so is now a numpy subclass rather than a simple array. Note that a single-element ObservationArray should be handed to the scheduler inadd_observation
, as well as in unit tests of basis functions and features. Multiple observations (to potentially be added at the same time) would also be passed in a single ObservationArray, however this would be multi-element. All basis functions and features should have the capability to add multiple observations, inadd_observations_array
functions.
In addition,science_program
,observation_reason
andtarget_name
are now elements of the ObservationArray. -
The kinematic model (used in simulations) now will appropriately handle slew calculations if the azimuth range available to the telescope is < 360 degrees. Jerk is now included when estimating slew times. Two new utilities (
tma_movement
androtator_movement
) allow quick setting of telescope parameters at a given percentage of maximum capability. -
The Conditions object now keeps
tel_alt_limit
andtel_az_limit
as potential "good observing region" pieces of information, and will also keepkinematic_alt_limit
andkinematic_az_limit
which should be set from the current kinematic capabilities of the telescope. In simulations these will automatically be picked up from the Kinematic Model; in operations they could be passed from observatory model yaml configuration. Several unused attributes and keyword arguments were also removed fromConditions
. -
The AltAzShadowMaskBasisFunction is updated to pick up
tel_alt_limit
,tel_az_limit
,kinematic_alt_limit
andkinematic_az_limit
from the conditions object, as well as key word arguments for both alt and azimuth in the keywords. This allows configuration of surveys that will automatically pick up the limits of accessible regions of sky, and use these to mask out un-observable regions, including regions that will enter those parts of the sky withinshadow_minutes
. -
sim_runner
arguments have been updated to be more clearly named;mjd_start
was intended to indicate the start of the simulated survey, not the current starting time (which ismjd
), so has been renamedsim_start_mjd
. (note that this is true for other basis function or survey use ofmjd_start
orsurvey_start
; both of these are intended to indicate the start of the entire survey and not the current starting time. -
functions useful for configuring surveys according to the v3.6 baseline were added to
rubin_scheduler
-
additional simple survey configuration utilities were added in
rubin_scheduler.scheduler.example.simple_examples
, including a greedy and pairs survey which (when configured as the default) should be able to provide observations at any time without ranging out of bounds. An example forFieldSurvey
configuration is also included. -
Some unused kwargs are removed from the BlobSurvey
-
Small updates to the DDF locations to match the 2018 cadence white paper
-
Euclid deep drilling field dither detailer updates
-
Increase the default read out time to 2.4s
-
Add jerk to slewtime calculations, with a default value
-
Increase downtime estimates in year one (ramping down over first year)
-
Updates to FieldSurvey (addition of the option to only count observations with a particular survey note)
-
SchemaConverter is more robust against missing or changed columns
-
Support for retrieving visits from the ConsDB is added
-
Support to automatically run daily one-night auxtel sims to support the prenight briefing
What's Changed
- PREOPS-5256: make rubin_scheduler.scheduler.utils.SchemaConverter.opsim2obs robust to columns of unexpected type by @ehneilsen in #69
- Pin scipy by @rhiannonlynne in #70
- PREOPS-5190: Automatically run one-night auxtel sims daily to support the prenight briefing by @ehneilsen in #71
- OPSIM-1163: Update DDF locations to 2018 white paper by @rhiannonlynne in #73
- OPSIM-1164: cleanup deprecation warnings, skip unit test if lsst.ts not available by @yoachim in #74
- OPSIM-1140: swap note to scheduler_note by @yoachim in #77
- add switch to use old ddf locs by @yoachim in #75
- increase read time to 2.4s by @yoachim in #78
- Euclid detailer updates (doc and field coordinates) U/yoachim/euclid detailer clean by @yoachim in #79
- Fix bug in "NObsSurvey" feature to add_observation/add_observation_array by @yoachim in #81
- OPSIM-1170: convert observation schema from target to target_name by @yoachim in #82
- PREOPS-5245: Add support for reading visits from ConsDB by @ehneilsen in #80
- PREOPS-5361: Gracefully handle missing columns in SchemaConverter by @ehneilsen in #83
- OPSIM-1173: : change basis function names, small bug fix by @rhiannonlynne in #85
- OPSIM-1174: modify FieldSurvey, add new fields to observation by @rhiannonlynne in #87
- PREOPS-5366: remove old minimum pair time kwarg since blob no longer adjust pair time by @yoachim in #89
- OPSIM-1178: update defaults to add more downtime in year and add jerk by @yoachim in #90
- Unpin scipy by @rhiannonlynne in #92
- OPSIM-1181: backwards compatibility for field survey kwargs by @rhiannonlynne in #94
- OPSIM-1176 : Add additional tools for comcam sv surveys by @rhiannonlynne in #91
- OPSIM-1180: Updates to bring rubin_scheduler in line with v3.5 simulations by @yoachim in #93
- OPSIM-1184: use ra/dec to order series of observations in BlobSurvey by @yoachim in #95
- OPSIM-1175: update the kinematic model and altazshadowmask basis function by @rhiannonlynne in #88
- OPSIM-1186: Add science_program, observation_reason, target_name via TrackingInfoDetailer by @yoachim in #98
- OPSIM-1182: Refactor add_observation to use an observation array (like empty_observation). by @yoachim in #97
- OPSIM-1188: remove comcam sv experiments, go to just simple greedy/pairs/field survey examples by @rhiannonlynne in #96
- OPSIM-1189: Remove unused attributes from Conditions object by @yoachim in #100
- increase fast coord tolerance by 1 second by @yoachim in #101
- OPSIM-1157: Add ObservationsArray - change observations to proper numpy subclass by @yoachim in #102
- PREOPS-5526: Rename sim_runner args to distinguish simulation start and duration from survey start and duration by @ehneilsen in #104
- OPSIM-1190: remove deprecated features and basis functions by @rhiannonlynne in #103
Full Changelog: v1.2.1...v2.0.0