Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-24537

Add Isr calibration base class

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: ip_isr
    • Labels:
      None
    • Story Points:
      14
    • Sprint:
      DRP S20-5 (Apr)
    • Team:
      Data Release Production

      Description

      There is currently no base class defining non-image calibration products, resulting in various methods and accessors unique to each calibration type.  This will create a uniform interface matching/similar to that used for Defects/QE curves to provide some consistency.

        Attachments

          Issue Links

            Activity

            Hide
            tjenness Tim Jenness added a comment -

            Now that we have multiple examples of these calibrations and have a good idea about the methods that are needed, a base class with some shared implementations and/or abstract methods seems like a good idea.

            Note we have a related problem in that we have Defects and Curve in meas_algorithms but code for reading them all in pipe_tasks and the code that does the reading also in obs_base. We have some pretty bad circular dependencies going on there (pipe_tasks depends on obs_base and ip_isr but obs_base relies on code from pipe_tasks). Moving the calibration classes to ip_isr doesn't help us much because ip_isr depends on meas_algorithms and pipe_base and meas_algorithms depends on pipe_base and obs_test which depends on obs_base which depends on pipe_base. It seems that we really could do with these fundamental calibration classes being pulled out into some package that ip_isr and obs_base can depend on independently of the meas_algorithms/pipe_base loop.

            Show
            tjenness Tim Jenness added a comment - Now that we have multiple examples of these calibrations and have a good idea about the methods that are needed, a base class with some shared implementations and/or abstract methods seems like a good idea. Note we have a related problem in that we have Defects and Curve in meas_algorithms but code for reading them all in pipe_tasks and the code that does the reading also in obs_base. We have some pretty bad circular dependencies going on there (pipe_tasks depends on obs_base and ip_isr but obs_base relies on code from pipe_tasks). Moving the calibration classes to ip_isr doesn't help us much because ip_isr depends on meas_algorithms and pipe_base and meas_algorithms depends on pipe_base and obs_test which depends on obs_base which depends on pipe_base. It seems that we really could do with these fundamental calibration classes being pulled out into some package that ip_isr and obs_base can depend on independently of the meas_algorithms/pipe_base loop.
            Hide
            czw Christopher Waters added a comment -

            That was my hope as well, and I've implemented methods that hopefully take care of some of the obvious common things.  Everything that currently exists will need to be migrated to this format, but I would like this work separate from the obs_decam/Crosstalk ticket that prompted this work.

            For the circular definitions: it looks like other than Defects and Curve, ip_isr depends on meas_algorithms for only a couple masking related methods (a psf for Defect growing; edge masking of detectors), so that can hopefully be straightened out once the calibrations are migrated.  I'm also hoping that this wards off cp_pipe becoming a circular dependency as obs_lsst brings cameras online.

            Show
            czw Christopher Waters added a comment - That was my hope as well, and I've implemented methods that hopefully take care of some of the obvious common things.  Everything that currently exists will need to be migrated to this format, but I would like this work separate from the obs_decam/Crosstalk ticket that prompted this work. For the circular definitions: it looks like other than Defects and Curve, ip_isr depends on meas_algorithms for only a couple masking related methods (a psf for Defect growing; edge masking of detectors), so that can hopefully be straightened out once the calibrations are migrated.  I'm also hoping that this wards off cp_pipe becoming a circular dependency as obs_lsst brings cameras online.

              People

              Assignee:
              czw Christopher Waters
              Reporter:
              czw Christopher Waters
              Reviewers:
              Tim Jenness
              Watchers:
              Andrés Alejandro Plazas Malagón, Christopher Waters, John Swinbank, Merlin Fisher-Levine, Simon Krughoff, Tim Jenness
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Jenkins

                  No builds found.