AstroHuntsman / huntsman-pocs

POCS on the Huntsman Telescope
MIT License
7 stars 8 forks source link

Observation revamp #406

Closed danjampro closed 3 years ago

danjampro commented 3 years ago

Adds new abstract base classes for Observation and Field to make it easier to define fields consisting of multiple subfields (e.g. dithered fields, target + sky fields).

Adds CompoundField and CompoundObservation to serve as base classes to observations with multiple fields. These can be configured from the config file since panoptes/POCS#1103. CompoundObservation objects have a batch_size parameter that allows us to take batch_size exposures for each subfield before moving on to the next one.

Adds DitheredField as a subclass of CompoundField, which is the input to DitheredObservation objects. It is possible to create a CompoundField consisting of multiple DitheredFields (e.g. for dithered target + dithered sky fields). See test_scheduler.test_compound_dithered_observation for example.

Eventually to be merged into POCS.

Closes #401

codecov[bot] commented 3 years ago

Codecov Report

Merging #406 (d7e779f) into develop (e803b6e) will increase coverage by 1.22%. The diff coverage is 82.35%.

Impacted file tree graph

@@             Coverage Diff             @@
##           develop     #406      +/-   ##
===========================================
+ Coverage    53.59%   54.81%   +1.22%     
===========================================
  Files           60       62       +2     
  Lines         3495     3689     +194     
  Branches       364      380      +16     
===========================================
+ Hits          1873     2022     +149     
- Misses        1537     1582      +45     
  Partials        85       85              
Impacted Files Coverage Δ
src/huntsman/pocs/camera/zwo.py 0.00% <0.00%> (ø)
tests/test_camera.py 73.40% <21.05%> (-3.05%) :arrow_down:
src/huntsman/pocs/scheduler/observation/base.py 72.46% <75.00%> (-9.02%) :arrow_down:
src/huntsman/pocs/utils/flats.py 80.31% <84.61%> (+1.32%) :arrow_up:
src/huntsman/pocs/scheduler/field.py 95.58% <95.58%> (ø)
src/huntsman/pocs/observatory.py 70.00% <100.00%> (-0.43%) :arrow_down:
src/huntsman/pocs/scheduler/observation/dark.py 83.87% <100.00%> (-2.25%) :arrow_down:
...rc/huntsman/pocs/scheduler/observation/dithered.py 100.00% <100.00%> (+17.24%) :arrow_up:
src/huntsman/pocs/scheduler/observation/flat.py 100.00% <100.00%> (ø)
src/huntsman/pocs/utils/dither.py 91.48% <100.00%> (ø)
... and 3 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update e803b6e...d7e779f. Read the comment docs.