simonsobs / simonsobs/scheduler

Second Jupiter scan gets cut when I'm not sure it should

Open
#202 2 comments 0 reactions 1 assignee View on GitHub

@mmccrackan is already working on this.

Since Mar 15, 2025.

Dominant language
Python
Stars
0
Forks
1
Avg merge
12h 45m
Merged PRs (30d)
6

Description

Long term it will be rare to try and do two Jupiter scans in one night. But have been trying them now. When I put two scans in (exact config below), it looks like it's finding that the second Jupiter scan totally overlaps with with other one. But if I start the schedule later, (~21:42) and tell it to plan the second scan, it's able to put in the second scan. I think if I had allow_partial=False it makes sense to cut the scan because detector setup will clear things. But I don't think it makes sense with allow_partial=True

kmharrin@compute21:~/software/scheduler-scripts/sat$ python gen_schedule.py run_satp1.yaml 
2025-03-15 14:58:34,434 [INFO] applying sun avoidance rule: {'min_angle': 41, 'min_sun_time': 1980, 'min_el': 48} 
2025-03-15 14:58:35,996 [INFO] planning calibration scans... 
2025-03-15 14:58:35,996 [INFO] -> planning calibration scans for CalTarget(source='jupiter', array_query='ws1,ws0', el_bore=48.0, tag='ws1,ws0', boresight_rot=0.0, allow_partial=True, drift=True, az_branch=180.0, az_speed=0.8, az_accel=1.0)... 
2025-03-15 14:58:36,301 [INFO] -> allow_partial = True: trimming scan options by sun rule 
2025-03-15 14:58:44,973 [INFO] -> found 2 scan options for jupiter (ws1,ws0): [
  ScanBlock(jupiter, 25-03-16 18:55:37 -> 25-03-16 21:42:43, az=41.01, el=48.00, throw=15.34, drift=-0.00449)),
  ScanBlock(jupiter, 25-03-16 21:42:28 -> 25-03-17 00:29:19, az=352.43, el=48.00, throw=15.64, drift=-0.00471))
], adding the first one... 
2025-03-15 14:58:44,973 [INFO] -> planning calibration scans for CalTarget(source='jupiter', array_query='ws2', el_bore=48.0, tag='ws2', boresight_rot=0.0, allow_partial=True, drift=True, az_branch=90, az_speed=0.8, az_accel=1.0)... 
2025-03-15 14:58:45,173 [INFO] -> allow_partial = True: trimming scan options by sun rule 
2025-03-15 14:58:45,347 [WARNING] -> all scan options overlap with already planned source scans... 
2025-03-15 14:58:45,347 [INFO] -> planning calibration scans for CalTarget(source='moon', array_query='ws1,ws0,ws4', el_bore=48.0, tag='ws1,ws0,ws4', boresight_rot=0.0, allow_partial=False, drift=True, az_branch=180.0, az_speed=0.8, az_accel=1.0)... 
2025-03-15 14:58:45,914 [INFO] -> allow_partial = False: filtering scan options by sun rule 

running with this config:

platform: satp1

# yaml loads iso format automatically into datetimes
t0: 2025-03-16T16:00:00+00:00
t1: 2025-03-17T16:00:00+00:00
#t0_state_file: None
t0_state_file: satp1/state_files/state_2025-03-16T16:00:00+00:00.npy

elevation: 50
min_hwp_el: 48

# optional, only needed if running non-defaults
#hwp_override: False # True: forwards, False: backwards
az_motion_override: False # True: overwrite azspeed as set above, False: use
#azspeed written in the master schedule.
relock_cadence: 86400 # Relock every 24 hours
#home_at_end: True # Home: spin down HWP and go to (180,60)
bias_step_cadence: 1800
#no_cmb: True

cal_targets:
  - source: jupiter
    elevation: 48.0
    boresight: 0
    focus: 'ws1,ws0'
    allow_partial: True
    az_speed: 0.8
    az_accel: 1.0
  - source: jupiter
    elevation: 48.0
    boresight: 0
    focus: 'ws2'
    allow_partial: True
    az_speed: 0.8
    az_accel: 1.0
    az_branch: 90

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.