Skip to content

Having some trouble finding trouble #69

@toqduj

Description

@toqduj

While trying to troubleshoot a rather complex pipeline, I found out that such trouble is hard to trace. To make it easier to find where changes are happening, I suggest making a handler that records changes to datasets, units, etc.

Current pipeline:

flowchart TD
    AU["AU: Multiply another DataBundle"]
    AV["AV: Indexed Averager"]
    AV_i["AV_i: Indexed Averager"]
    BG["BG: Subtract another DataBundle"]
    BG_i["BG_i: Subtract another DataBundle"]
    DC["DC: Subtract by IoSource data"]
    DC_bg["DC_bg: Subtract by IoSource data"]
    DC_i["DC_i: Subtract by IoSource data"]
    DC_i_bg["DC_i_bg: Subtract by IoSource data"]
    DS_data["DS_data: Append Source"]
    DS_defaults["DS_defaults: Append Source"]
    DS_gc_calibration["DS_gc_calibration: Append Source"]
    FA["FA: average or sum, weighted or unweighted, over axes"]
    FA_bg["FA_bg: average or sum, weighted or unweighted, over axes"]
    FA_i["FA_i: average or sum, weighted or unweighted, over axes"]
    FA_i_bg["FA_i_bg: average or sum, weighted or unweighted, over axes"]
    FL["FL: Divide by IoSource data"]
    FL_bg["FL_bg: Divide by IoSource data"]
    FL_i["FL_i: Divide by IoSource data"]
    FL_i_bg["FL_i_bg: Divide by IoSource data"]
    GM["GM: Add Q, Psi, TwoTheta, Omega"]
    GM_i["GM_i: Add Q, Psi, TwoTheta, Omega"]
    IP["IP: Index Pixels"]
    IP_i["IP_i: Index Pixels"]
    PD_intensity_calibration["PD_intensity_calibration: Append Processing Data"]
    PD_intensity_calibration_background["PD_intensity_calibration_background: Append Processing Data"]
    PD_intensity_calibration_reference_I["PD_intensity_calibration_reference_I: Append Processing Data"]
    PD_intensity_calibration_reference_Q["PD_intensity_calibration_reference_Q: Append Processing Data"]
    PD_sample["PD_sample: Append Processing Data"]
    PD_sample_background["PD_sample_background: Append Processing Data"]
    PU["PU: Add Poisson Uncertainties"]
    PU_bg["PU_bg: Add Poisson Uncertainties"]
    PU_i["PU_i: Add Poisson Uncertainties"]
    PU_i_bg["PU_i_bg: Add Poisson Uncertainties"]
    SF_i["SF_i: Scale 1D curve to reference (compute-only)"]
    SP["SP: Solid Angle Correction"]
    SP_i["SP_i: Solid Angle Correction"]
    TI["TI: Divide by IoSource data"]
    TI_bg["TI_bg: Divide by IoSource data"]
    TI_i["TI_i: Divide by IoSource data"]
    TI_i_bg["TI_i_bg: Divide by IoSource data"]
    TR["TR: Divide by IoSource data"]
    TR_bg["TR_bg: Divide by IoSource data"]
    TR_i["TR_i: Divide by IoSource data"]
    TR_i_bg["TR_i_bg: Divide by IoSource data"]
    DS_data --> PD_sample
    DS_data --> PD_sample_background
    DS_data --> PD_intensity_calibration
    DS_data --> PD_intensity_calibration_background
    DS_gc_calibration --> PD_intensity_calibration_reference_I
    PD_intensity_calibration_reference_I --> PD_intensity_calibration_reference_Q
    FA_bg --> BG
    FA --> BG
    FA_i --> BG_i
    FA_i_bg --> BG_i
    BG --> GM
    BG_i --> GM_i
    GM --> SP
    GM_i --> SP_i
    SP --> IP
    IP --> AV
    SP_i --> IP_i
    IP_i --> AV_i
    AV_i --> SF_i
    PD_intensity_calibration_reference_Q --> SF_i
    SF_i --> AU
    AV --> AU
    DS_defaults --> PU_bg
    PD_sample_background --> PU_bg
    PU_bg --> TI_bg
    TI_bg --> DC_bg
    DC_bg --> FL_bg
    FL_bg --> TR_bg
    TR_bg --> FA_bg
    PD_sample --> PU
    DS_defaults --> PU
    PU --> TI
    TI --> DC
    DC --> FL
    FL --> TR
    TR --> FA
    PD_intensity_calibration_background --> PU_i_bg
    DS_defaults --> PU_i_bg
    PU_i_bg --> TI_i_bg
    TI_i_bg --> DC_i_bg
    DC_i_bg --> FL_i_bg
    FL_i_bg --> TR_i_bg
    TR_i_bg --> FA_i_bg
    PD_intensity_calibration --> PU_i
    DS_defaults --> PU_i
    PU_i --> TI_i
    TI_i --> DC_i
    DC_i --> FL_i
    FL_i --> TR_i
    TR_i --> FA_i
Loading

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions