Skip to content

Add the preliminary ALERT timeline to the main branch#304

Merged
Sangbaek merged 6 commits intomainfrom
alert-dev
Apr 22, 2025
Merged

Add the preliminary ALERT timeline to the main branch#304
Sangbaek merged 6 commits intomainfrom
alert-dev

Conversation

@Sangbaek
Copy link
Copy Markdown
Collaborator

@Sangbaek Sangbaek commented Apr 21, 2025

This PR consists of three major commits and two minor fixes for the ALERT timeline.
These are all prelim in sense that it only produces the ATOF TDC peak location/ sigma/ integral (normalized to the trigger.)
It is timeliy to include in the main branch to get the feedbacks from the ALERT experts.

  1. Add the prelim ALERT monitoring
  • Add the ALERT.java to save the histograms in out_ALERT_runnum.hipo
  • Edit the run_histograms.java to include the ALERT histograms in the task list
  1. Add the prelim ALERT timeline scripts
  1. Include the ALERT in the detector timeline list
  1. Clarify the meaning of the timeline variable
  • Clarify the meaning of normalized integral by changing it from integral_per_trigger to integral_normalized_to_trigger
  1. Save the timeline hipo file for each sector/layer
  • Initialize the timeline per each sector/layer.

@Sangbaek Sangbaek merged commit 09015b8 into main Apr 22, 2025
10 checks passed
@Sangbaek Sangbaek deleted the alert-dev branch April 22, 2025 18:54
@c-dilks
Copy link
Copy Markdown
Member

c-dilks commented Apr 22, 2025

Looks good to me, thanks!

I do have a review comment however: this PR nearly doubles the number of timelines; do you really need so many, or can you combine them?

    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector0_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector0_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector0_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector0_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector10_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector10_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector10_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector10_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector11_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector11_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector11_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector11_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector12_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector12_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector12_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector12_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector13_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector13_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector13_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector13_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector14_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector14_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector14_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector14_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector1_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector1_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector1_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector1_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector2_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector2_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector2_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector2_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector3_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector3_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector3_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector3_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector4_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector4_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector4_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector4_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector5_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector5_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector5_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector5_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector6_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector6_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector6_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector6_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector7_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector7_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector7_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector7_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector8_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector8_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector8_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector8_layer3.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector9_layer0.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector9_layer1.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector9_layer2.hipo
    │   │   ├── alert_atof_tdc_integral_normalized_to_trigger_sector9_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector0_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector0_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector0_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector0_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector10_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector10_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector10_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector10_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector11_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector11_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector11_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector11_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector12_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector12_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector12_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector12_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector13_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector13_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector13_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector13_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector14_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector14_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector14_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector14_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector1_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector1_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector1_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector1_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector2_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector2_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector2_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector2_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector3_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector3_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector3_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector3_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector4_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector4_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector4_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector4_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector5_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector5_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector5_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector5_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector6_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector6_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector6_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector6_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector7_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector7_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector7_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector7_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector8_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector8_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector8_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector8_layer3.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector9_layer0.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector9_layer1.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector9_layer2.hipo
    │   │   ├── alert_atof_tdc_peak_location_sector9_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector0_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector0_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector0_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector0_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector10_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector10_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector10_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector10_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector11_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector11_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector11_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector11_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector12_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector12_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector12_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector12_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector13_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector13_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector13_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector13_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector14_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector14_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector14_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector14_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector1_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector1_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector1_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector1_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector2_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector2_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector2_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector2_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector3_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector3_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector3_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector3_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector4_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector4_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector4_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector4_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector5_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector5_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector5_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector5_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector6_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector6_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector6_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector6_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector7_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector7_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector7_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector7_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector8_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector8_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector8_layer2.hipo
    │   │   ├── alert_atof_tdc_sigma_sector8_layer3.hipo
    │   │   ├── alert_atof_tdc_sigma_sector9_layer0.hipo
    │   │   ├── alert_atof_tdc_sigma_sector9_layer1.hipo
    │   │   ├── alert_atof_tdc_sigma_sector9_layer2.hipo
    │   │   └── alert_atof_tdc_sigma_sector9_layer3.hipo

@Sangbaek
Copy link
Copy Markdown
Collaborator Author

Thank you, Chris.

Yes, I anticipate that the scroll in the clas12mon's alert web page will be super busy.
But each sector/layer comes with 12 combinations of components and orders ( 10 for wedges and 2 for bar), so I don't know if we want to sacrifice the readability in lieu of the number of hipos.
I'll have to ask Whit about optimizing the visualization, and I think this PR will catalyze the discussion, by helping Noemie to produce the timeline.

I think you might want include the options to suppress the ALERT for other run groups except for RG-L. when you publish the new module with this update.

I haven't heard from Raphael about the AHDC input yet, and I didn't include anything for the AHDC.
They might need similar plots with AHDC::adc, so I expect I'm going to submit a follow-up PR shortly.

@Sangbaek
Copy link
Copy Markdown
Collaborator Author

Related issue: #305

@c-dilks
Copy link
Copy Markdown
Member

c-dilks commented Apr 22, 2025

Sounds good, thanks!

It looks like the default behavior when ALERT data are not available is to fill ALERT timelines with flat zero, which is the current convention for other detectors, so that's not a problem for other run groups. Eventually we can add the ability to just not publish irrelevant timelines (you're welcome to send a PR on that if you can think of a general way to do it!)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants