Belle II Software  release-05-02-19
OfflineFitFunction.h
1 #include <ecl/digitization/algorithms.h>
2 
3 #pragma once
4 
5 namespace Belle2 {
10  namespace ECL {
11  double WaveFuncTwoComponent(double* x, double* par)
12  {
13  //Used for fitting with ROOT::FIT and drawing offline fit results
14  //p0 = trigger time
15  //p1 = baseline
16  //p2 = photon component amp
17  //p3 = hadron component amp
18  //p4-p13 =photon shape template parameters (fixed)
19  //p14-p23 = hadron or didoe shape template parameters (fixed)
20  //p24 = photon scale (fixed)
21  //p25 = hadron scale (fixed)
22 
23  const double time = x[0] - par[0];
24  const double PhotonScale = par[24];
25  const double HadronScale = par[25];
26 
27  double GammaComponent = 0;
28  double HadronComponent = 0;
29  double photonTemplate10[10];
30  double hadronTemplate10[10];
31  for (int k = 0; k < 10; k++) {
32  photonTemplate10[k] = par[4 + k];
33  hadronTemplate10[k] = par[10 + 4 + k];
34  }
35  GammaComponent = Belle2::ECL::ShaperDSPofflineFit(time, photonTemplate10, PhotonScale);
36  HadronComponent = Belle2::ECL::ShaperDSPofflineFit(time, hadronTemplate10, HadronScale);
37  return (par[2] * GammaComponent + par[3] * HadronComponent) + par[1];
38  }
39  }
41 }
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19