kevin218 / Eureka

Eureka! is a data reduction and analysis pipeline intended for time-series observations with JWST.
https://eurekadocs.readthedocs.io/
MIT License
60 stars 47 forks source link

[Enhancement]: Reorganize stages to run more like the jwst pipeline #513

Open taylorbell57 opened 1 year ago

taylorbell57 commented 1 year ago

Instrument

Other (any stage)

What is your suggestion?

At present, our main files for each stage are quite massive and make it very challenging to get an overview of what is happening in the stage. It is also very challenging for users to swap out custom versions of functions without editing large chunks of the source code. And changing the order in which operations are performed in Stage 3 is also impossible without directly editing the source code.

Ideally, our main files for each stage should basically just be a for-loop that iterates over a list of functions that will be called in order, similar to how the jwst pipeline works. That way, if you want to skip doing background subtraction, then you can easily remove that function from the list. And if you want to replace the background subtraction method with one of your own, then you just replace that index in the list.

This is primarily an issue with Stages 3-4 but is worth considering for Stages 5-6 as well.

Code of Conduct