Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial continuum-subtraction and spectral line prefect flow #192

Merged
merged 66 commits into from
Dec 4, 2024

Conversation

tjgalvin
Copy link
Owner

@tjgalvin tjgalvin commented Dec 3, 2024

This is an initial attempt at implementing a basic workflow to handle the processing of spectral line data.

It is a little hefty. What is in it?

  • Additional option to output a 'source component' list from wsclean with its -save-source-list option. This is a sky-model file of each clean component and the corresponding SED that was constrained.
  • An CLI call to the addmodel program that forms part of Andre Offringa's calibrate program, which can predict the model visibilities of components described by the sky-model at full channel resolution
  • A helper function to subtract a model column from a data column via taql, which should scale to large MSs
  • initial workflow to perform the continuum model prediction, subtraction, imaging, convolving and co-adding of the continuum-subtracted data

Of less importance are:

  • Some initial helper logic to delay the task creation and submission loop across channels
  • The addmodel prediction being carried out in a subflow with a different data runner. This is the first time such an approach has been used, so may change
  • An optional toggle in the singularity command execution to not log container output to the flint logger. This may help lower stress on the prefect server
  • The addition of a flint_no_log_wsclean_output attribute to WSCleanOptions, which is a directive for flint more than something that influences wsclean

Points to think further about:

  • Whether the flint_no_log_wsclean_output is a usage pattern that is acceptable. Would having a separate FlintOptions to control these miscellaneous things be better?
    • Did it this way as WSCleanOptions was already being passed all the way through. Alternatives would include passing any FlintOptions all the way through helper functions, or perhaps using environment variables to control points like this.
  • Are we happy with the current way the subflow is invoked?

@codecov-commenter
Copy link

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

Attention: Patch coverage is 48.91304% with 141 lines in your changes missing coverage. Please review.

Project coverage is 60.48%. Comparing base (2051afd) to head (4c47a9f).

Files with missing lines Patch % Lines
flint/prefect/flows/subtract_cube_pipeline.py 33.33% 70 Missing ⚠️
flint/convol.py 4.00% 24 Missing ⚠️
flint/imager/wsclean.py 58.49% 22 Missing ⚠️
flint/prefect/common/imaging.py 14.28% 12 Missing ⚠️
flint/ms.py 77.77% 6 Missing ⚠️
flint/coadd/linmos.py 0.00% 3 Missing ⚠️
flint/sclient.py 0.00% 2 Missing ⚠️
flint/configuration.py 66.66% 1 Missing ⚠️
flint/prefect/flows/continuum_pipeline.py 0.00% 1 Missing ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #192      +/-   ##
==========================================
- Coverage   60.91%   60.48%   -0.44%     
==========================================
  Files          34       35       +1     
  Lines        5852     6089     +237     
==========================================
+ Hits         3565     3683     +118     
- Misses       2287     2406     +119     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@tjgalvin tjgalvin merged commit 57d1f6d into main Dec 4, 2024
2 checks passed
@tjgalvin tjgalvin deleted the subcubeflow branch December 4, 2024 01:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants