Using Cafana to do DUNE-prism fit - We’ve been using Cafana for fits so far to demonstrate the power of DUNEprism. - Moving forward, we will need to do off-axis fit, which means including large number of off-axis samples with many corrections and systematics. - Will show what I did using Cafana for previous studies and how to proceed.
Loading stage 1: preparation - Loading dependent library - CAF-related and all needed libraries containing necessary classes - Set up oscillation adjustable - structure containing oscillation parameters with values, other objects can take the values from the adjustable. Oscillation values can be set up in any pace in the fitter. - Spectrum Loader → LoaderForRunPOT(runnumber) - loader takes run number, the data tree could contain different run numbers meaning different samples, like numu, nue, NC etc. - DUNENoExtrpPredictionGenerator (loaders, RecoAxis, cuts) : - loaders are from above. Reco Axis and cuts are defined by users. IpredictionGenerator - Takes loader, axis in reco. and cuts needed to use - PredictionInterp (syst vec., Osc, PredictionGenerator, syst. shift, weight) - Set up Prediction with systematics vectors, Prediction Generator, some specific systematic shifts and weights.
Loading stage 2 : Generate adjustable prediction - PredictionGenerator → Generate (loaders, Syst. Shift, weight) - Pass loaders, reco axis, cuts, Syst. Shift to PredictionNoExtrap - Syst. Shift can change the event weights/records depending on the kind of systematics one set up. → PredictionNoExtrp - Pass loader, reco axis, cut, shift and weight to PredictionExtrap → PredictionExtrap - Passing to TrivialExtrp → TrivialExtrp - Passing loader, reco axis, cut, shift and weights to Oscillatable spectrum along with selection of neutrino flavor and charge → Oscillatable Spectrum → Reweightable Spectrum - Takes reco axis building a reco axis vs. true axis 2D hist. But the histogram is filled later. Also add spectrum to loader. - Prediction Loader → Go - Process all the tree branches, Fill in reco vs. true histogram for each reweightable spectrum.
Full picture Loading stage Fitting stage (Can handle event-by-event) (taking histograms) Set up IoscCalculatorAdustable Set up Isyst vector Prepare Prediction and Data spectra Spectrum Loader → loaderForRunPOT Single experiment DUNENoExtrpPredictionGenerator (loaders, axis, cut) : → PredictionInterp + fake spectrum IpredictionGenerator Multiple experiment IpredictionGenerator::Generate → single experiment → PredictionNoExtrp → PredictionExtrap Minimization → TrivialExtrp → Oscillatable Spectrum (fHist keeps reco vs. true) → Reweightable Spectrum → Add to loader PredictionInterp (syst vec., Osc, Oscillation PredictionGenerator→Generate , syst shift, weight) (Osc, from, to): Spectrum Loader → Go : Handle File → Syst. Shifts Oscillation probability (1,2,3 sigma for systs.) → Weighting spectrum PredictionInterp → SaveTo
Current way Syst. Of Cafana Pre-loaded fmux + cross sectjon + user defjned loading stage FD ND Fill in spectra Fill in spectra Fill in spectra Pred Data Pred Data Syst. Shifu true-reco true-reco (Interp.) Osc Single Exp. Single Exp. fjttjng stage (Extrap) Multjple. Exp. - The loading stage is event-by-event based. - When go into fjttjng stage, no more single event informatjon -> all needed informatjon should be stored in histogram format (all syst.) -> Oscillatjon is calculated on fmight when fjttjng with probability histograms
loading stage Off-axis Cafana Syst. Fill in spectra Pre-loaded fmux + cross sectjon + user defjned Syst. Shifu (Interp.) ND FD Fill in spectra Fill in spectra Fill in spectra Effjciency Flux Data Data FD and ND correctjon C factor Osc fjttjng stage (Extrap) Single Exp. - All burden gives to predicted FD. Needs pre-calculated stufg at loading stage: - - C with difgerent oscillatjon - - effjciency with difgerent syst., but there are a lot of systs. - - fmux correctjon with difgerent syst. and oscillatjon, lots of variatjons.
Off-axis Cafana - Fitting takes histograms, so we need to implement all ingredients in advance in Spectrum shift format, such as systematics variations, efficiency corrections (as function of systematics), flux corrections (as function of systematics), c factors (as function of oscillation). - Moreover, reco vs. true histogram in pre-filled and not change in fitting stage. - If doing event-by-event fit, one just needs to include weights in single events containing all necessary factors, like systematics weight, C factor weight, efficiency weight, flux weight etc. → Can we use Double Chooz fitter (I am familiar with) or MaCh3 ?
Recommend
More recommend