Skip to content

Optical sim/reco updates#892

Open
mvicenzi wants to merge 142 commits into
release/SBN2025Afrom
feature/pmtsim_gain
Open

Optical sim/reco updates#892
mvicenzi wants to merge 142 commits into
release/SBN2025Afrom
feature/pmtsim_gain

Conversation

@mvicenzi
Copy link
Copy Markdown
Member

@mvicenzi mvicenzi commented Apr 1, 2026

This PR contains the required updates and fhicls to enable the reprocessing of light products for the SBN2025 spring productions (both MC and data). In particular, it includes fixes to the trigger/overlays procedure, as well as model improvements such as the use of time-dependent gain and pmt status databases.

Some highlights:

  • added new MC2 tune (SPR + sim gain tune)
  • added new MC3/4 tune (SPR + sim gain tune)
  • noise in MC waveforms for overlays turned off
  • introduced new PMT overlays module
  • updated trigger shifting module to emit shifted trigger reference
  • added DetectorClocksService configuration overrides for simulation
  • introduced new simulation of timing delays from database in detsim overlays
  • introduced new PMT channel status/voltage database for both detsim and stage0
  • introduced new interface to the PMT gain database in detsim and stage0 for MC-overlays/data
  • introduced new OpHit recalibrator module for data
  • formally enforced same reconstruction algorithms for data and MC (including pedestal's)
  • switched optical reconstruction entry point to local module
  • re-tuned flash PE thresholds based on new PE scale
  • added optional debug tree in optical detsim module
  • updated FHiCLs for database use in MC-overlays/data (fixed/constant values still used for legacy MC)
  • added run number overrides for calibration services
  • added vertical track selection module
  • added DetSim + Overlay stage reprocessing fhicl(s)
  • added “MCStage0” reprocessing fhicl(s)
  • added data “stage0” reprocessing fhicl(s)
  • enfocing use of shared GENIE configuration from sbncode

This PR requires three icarus_data updates:

  • new SPR response files
  • pmt_speareas_data.db to v1r2
  • pmt_voltage_data.db to v1r3

This PR depends on:

(this PR includes developements previously discussed in #876 and #785 )

mvicenzi and others added 30 commits May 23, 2025 00:17
…plate

It used to end when the template SPR goes under 1e-4 ADC#.
Now it needs to stay within +/- 1w-4 ADC# for 20 nanoseconds.
This should make it possible to include undershootings.
All these parameters are currently hard-coded.
Good catches on names and strings.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Trigger simulation modules now support input tags with process name [private]
PetrilloAtWork and others added 12 commits April 21, 2026 21:08
Replaces the functionality of the "generalist" OverlayProducts module
(which has overlapping detection broken and hard-coded simulation baselines,
things that can be in principle fixed).
This module does the minimum it has to in order to make the overlay workflow
work and flow.
Overlay job configuration is changed to adopt it.
A new configuration of DetectorClocksService is introduced for simulation workflows.
A drop-in override is provided (`override_services_for_simulation.fcl`).
Stage0, Stage1, CAF and overlay configurations are updated to use it.
Includes the change of discrimination threshold from Run1 (400 ADC#)
to Run2 standard (390 ADC#) and internal adjustments.
Enabled by the change in PMTsimulationAlg that produces the baselines.
… gate time

In the plain simulation, defined as the one performed with standard DetectorClocks configuration,
simulation time and beam time scales coincide.
Introducing a time scale shift in the workflow, we redefine the beam gate time,
adding a margin before the beam, which separates the two scales.
The beam gate produced at generation stage refers to simulation time,
as all the gates derived by it do.
The beam gate start time in raw::Trigger et al. assumed the input gate to be
in the (current) beam gate time scale, but that may be not true.
The gate is always output in electronics time anyway.
This accounts for the average time it takes the hardware trigger to emit a response.
Beam gates may need to be corrected accordingly, as the beam gate start time is not
subject to this delay.
The delay is encoded in the configurations for Run2. The value, obtained by visual calibration,
is statistically compatible with the one from Run3.
It is now the same for simulation as it is for data.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update the PMT dead/noisy channel list PMT timing corrections should not be applied on simulation

2 participants