Multidimensional models: working with parameterized ranges in a fit. 
This an example of a fit with an acceptance that changes per-event
pdf = exp(-t/tau) with t[tmin,5]
where t and tmin are both observables in the dataset
  
import ROOT
 
 
 
 
 
 
 
 
 
 
 
 
 
frame = 
t.frame(Title=
"Fit to data with per-event acceptance")
 
 
 
c = 
ROOT.TCanvas(
"rf314_paramranges", 
"rf314_paramranges", 600, 600)
 
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
  [#1] INFO:Fitting -- RooAbsPdf::fitTo(model_over_model_Int[t]) fixing normalization set for coefficient determination to observables in data
[#1] INFO:Fitting -- using generic CPU library compiled with no vectorizations
[#1] INFO:Fitting -- Creation of NLL object took 1.02937 ms
[#1] INFO:Fitting -- RooAddition::defaultErrorLevel(nll_model_over_model_Int[t]_modelData) Summation contains a RooNLLVar, using its error level
[#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: activating const optimization
[#1] INFO:Minimization -- [fitFCN] No discrete parameters, performing continuous minimization only
[#1] INFO:Minimization -- RooAbsMinimizerFcn::setOptimizeConst: deactivating const optimization
[#1] INFO:Plotting -- RooPlot::updateFitRangeNorm: New event count of 5000 will supersede previous event count of 10000 for normalization of PDF projections
 
  RooFitResult: minimized FCN value: 2823.97, estimated distance to minimum: 3.17108e-08
                covariance matrix quality: Full, accurate covariance matrix
                Status : MINIMIZE=0 HESSE=0 
 
    Floating Parameter  InitialValue    FinalValue +/-  Error     GblCorr.
  --------------------  ------------  --------------------------  --------
                   tau   -1.5400e+00   -1.5335e+00 +/-  2.22e-02  <none>
 
- Date
 - February 2018 
 
- Authors
 - Clemens Lange, Wouter Verkerke (C++ version) 
 
Definition in file rf314_paramfitrange.py.