G/ChiZeroRegression.h
Go to the documentation of this file.
1 #ifndef FdProfileConstrainedGeometryFitPG_ChiZeroRegression_h
2 #define FdProfileConstrainedGeometryFitPG_ChiZeroRegression_h
3 
4 #include <fevt/EyeRecData.h>
5 #include <utl/PhysicalConstants.h>
6 
7 namespace FdProfileConstrainedGeometryFitPG {
8 
20  public:
21  ChiZeroRegression(const fevt::Eye& eye, unsigned int& telId)
22  {telId = PrepParams(eye);}
23 
25  void
26  operator()(const double chi0,
27  double& chi2,
28  double& rp,
29  double& t0,
30  double Xmax=600*utl::g/utl::cm2) const;
31 
33  void
34  operator()(const double chi0,
35  double& chi2,
36  double& rp, double &rpErr,
37  double& t0, double &t0Err,
38  double Xmax=600*utl::g/utl::cm2) const;
39 
40  unsigned int GetNDof() const { return chii.size() - 2; }
41  void SetUseLightFlux(bool use=true) {fUseLightFlux=use;}
42  void SetRealAtm(bool realAtm, bool deex, bool emissionPointCorrection);
43 
44  protected:
45  unsigned int
46  PrepParams(const fevt::Eye& eye);
47 
48  void
49  LinearFitErrors(const std::vector<double>& x,
50  const std::vector<double>& y,
51  const std::vector<double>& ey,
52  double& a0, double& a0err,
53  double& a1, double& a1err,
54  double& chi2) const;
55 
56  static void MinuitFitFunc(int& npar, double* gin, double& f, double* par, int iflag);
57 
58  void
59  MinuitFitErrors(const double Chi0,
60  double& T0, double& T0err,
61  double& Rp, double& Rperr,
62  double& chi2) const;
63 
64 
65  static std::vector<double> times;
66  static std::vector<double> timeErrs;
67  static std::vector<double> chii;
68  static std::vector<int> tels;
69  static std::vector<int> pixids;
70  static double fsdpTheta;
71  static double fsdpPhi;
72  static int fEyeId;
73  static int fTelId;
74  static double fXmax;
76  bool fRealAtm;
77  bool fDeex;
79 };
80 } //namespace
81 
82 #endif
Fluorescence Detector Eye Event.
Definition: FEvent/Eye.h:29
void LinearFitErrors(const std::vector< double > &x, const std::vector< double > &y, const std::vector< double > &ey, double &a0, double &a0err, double &a1, double &a1err, double &chi2) const
const unsigned int npar
Definition: UnivRec.h:75
void SetRealAtm(bool realAtm, bool deex, bool emissionPointCorrection)
constexpr double g
Definition: AugerUnits.h:200
void MinuitFitErrors(const double Chi0, double &T0, double &T0err, double &Rp, double &Rperr, double &chi2) const
static void MinuitFitFunc(int &npar, double *gin, double &f, double *par, int iflag)
ChiZeroRegression(const fevt::Eye &eye, unsigned int &telId)
void operator()(const double chi0, double &chi2, double &rp, double &t0, double Xmax=600 *utl::g/utl::cm2) const
constexpr double cm2
Definition: AugerUnits.h:118

, generated on Tue Sep 26 2023.