1 #ifndef __RAT_FitPathProc__
2 #define __RAT_FitPathProc__
4 #include <Minuit2/FCNBase.h>
6 #include <RAT/Processor.hh>
7 #include <RAT/SimulatedAnnealing.hh>
19 double x, y, z, px, py, pz, t;
29 double operator()(
double *params);
30 double operator()(
const std::vector<double> &lParams)
const;
31 double Up()
const {
return 0.5; }
36 std::vector<hit> fHits;
39 std::vector<double> fSeed;
42 double fDirectProb, fOtherProb, fPhotocathodeArea;
43 double fLightSpeed, fCherenkovMultiplier;
44 double fDirectTime0, fDirectTimeStep, fOtherTime0, fOtherTimeStep;
45 std::vector<double> fDirectTimeProb, fOtherTimeProb;
46 double fCosAlpha0, fCosAlphaStep;
47 std::vector<double> fCosAlphaProb;
52 size_t fNumCycles, fNumEvals;
53 double fPosSigma0, fPosSigma1, fThetaSigma, fPhiSigma, fTimeSigma0, fTimeSigma1;
54 double fTemp0, fTemp1, fAlpha;
56 inline double PDFDirectTime(
const double tresid)
const {
57 const int i = (int)((tresid - fDirectTime0) / fDirectTimeStep);
58 if (i < 0 || i >= (
int)fDirectTimeProb.size())
return 0.0;
59 return fDirectTimeProb[i];
62 inline double PDFOtherTime(
const double tresid)
const {
63 const int i = (int)((tresid - fOtherTime0) / fOtherTimeStep);
64 if (i < 0 || i >= (
int)fOtherTimeProb.size())
return 0.0;
65 return fOtherTimeProb[i];
68 inline double PDFCherenkovAngle(
const double cosalpha)
const {
69 const int i = (int)((cosalpha - fCosAlpha0) / fCosAlphaStep);
70 if (i < 0 || i >= (
int)fCosAlphaProb.size())
return 0.0;
71 return fCosAlphaProb[i];
74 double FTPProbability(
const double x,
const double y,
const double z,
const double dx,
const double dy,
75 const double dz,
const double t)
const;
77 double AvgSquareTimeResid(
double x,
double y,
double z,
double t);
Definition: FitPathProc.hh:22
virtual Processor::Result Event(DS::Root *ds, DS::EV *ev)
Definition: FitPathProc.cc:199
double FTPProbability(const double x, const double y, const double z, const double dx, const double dy, const double dz, const double t) const
Definition: FitPathProc.cc:99
Definition: SimulatedAnnealing.hh:14
Definition: Processor.hh:36
Result
Definition: Processor.hh:59
Definition: CCCrossSecMessenger.hh:29
Definition: FitPathProc.hh:18