orca.transform.post_process_science =================================== .. py:module:: orca.transform.post_process_science .. autoapi-nested-parse:: Phase 3 — Post-subband wideband science aggregation. Runs AFTER all per-subband workers complete. Operates on Lustre. Steps ----- 1. Wideband stacking: inverse-variance weighted co-adds across subbands (Red 18–41 MHz, Green 41–64 MHz, Blue 64–85 MHz). 2. 3-colour PNG composites. 3. Wideband transient search on stacked images. 4. Wideband solar system photometry. 5. Detection gathering (target, transient, solar system CSVs from all bands). 6. Email summary report. Ported from ``ExoPipe/post_process_science.py`` into the orca package. Attributes ---------- .. autoapisummary:: orca.transform.post_process_science.logger orca.transform.post_process_science.EMAIL_RECIPIENT orca.transform.post_process_science.OUTPUT_CAT_DIR orca.transform.post_process_science.SECRETS_FILE orca.transform.post_process_science.WIDEBAND_BANDS orca.transform.post_process_science.parser Functions --------- .. autoapisummary:: orca.transform.post_process_science.get_inner_rms orca.transform.post_process_science.run_wideband_stacking orca.transform.post_process_science.gather_detections orca.transform.post_process_science.send_email_report orca.transform.post_process_science.run_post_processing Module Contents --------------- .. py:data:: logger .. py:data:: EMAIL_RECIPIENT :value: 'gh@astro.caltech.edu' .. py:data:: OUTPUT_CAT_DIR :value: '/lustre/gh/main/catalogs/' .. py:data:: SECRETS_FILE .. py:data:: WIDEBAND_BANDS .. py:function:: get_inner_rms(fits_path: str) -> float RMS of the inner 25 % (50 % per side) of a FITS image. .. py:function:: run_wideband_stacking(run_dir, catalog_path=None) Build inverse-variance-weighted wideband co-adds and run transient search. .. py:function:: gather_detections(run_dir) Collect target photometry, transient, and solar system detections. .. py:function:: send_email_report(run_dir, report_lines, attachment_files) Send HTML email summary with attachments. .. py:function:: run_post_processing(run_dir, catalog_path=None) Run the full Phase 3 post-processing pipeline. :param run_dir: Top-level Lustre run directory containing per-subband folders. :param catalog_path: Source catalog CSV for transient search masking. .. py:data:: parser