GaisserHillas4Parameter.h
Go to the documentation of this file.
1 #ifndef _evt_GaisserHillas4Parameter_h_
2 #define _evt_GaisserHillas4Parameter_h_
3 
4 #include <evt/VGaisserHillasParameter.h>
5 #include <evt/GaisserHillasTypes.h>
6 #include <utl/TabulatedFunction.h>
7 #include <iostream>
8 #include <vector>
9 #include <utility>
10 
11 
12 namespace io {
13  class GaisserHillasParameters_ROOT;
14 }
15 
16 namespace evt {
17 
30 
31  public:
32  typedef std::pair<gh::EShapeParameter, double> ShapeParameter;
33 
35  GaisserHillas4Parameter(const double nmax, const double xmax,
36  const ShapeParameter par1, ShapeParameter par2,
37  const gh::EFunctionType functionType = gh::eClassic);
39 
41  { return new GaisserHillas4Parameter; }
42 
44  { return new GaisserHillas4Parameter(*this); }
45 
47 
49  double GetShapeParameter(const gh::EShapeParameter par) const;
50  double GetShapeParameterError(const gh::EShapeParameter par) const;
51 
59 
61  bool IsInternal(const gh::EShapeParameter par) const;
62 
64  double Eval(const double depth) const;
66  void Dump(std::ostream& os = std::cout) const;
68  double GetIntegral() const;
70  double GetIntegralError() const;
71 
73  double InverseLeft(const double h) const;
75  double InverseRight(const double h) const;
76 
78 
83  const double value, const double error);
85  const double rho);
87  const double rho);
88  void SetCorrelationShapeParameters(const double rho) { fRhoShapePar1Par2 = rho; }
89 
90  // \\deprecated
91  double GetXZero() const;
92  double GetXZeroError() const;
93  double GetLambda() const;
94  double GetLambdaError() const;
95  double GetNMaxLambdaCorrelation() const;
96  double GetNMaxX0Correlation() const;
97  double GetXMaxLambdaCorrelation() const;
98  double GetXMaxX0Correlation() const;
99  double GetLambdaX0Correlation() const;
100 
101  private:
102  double Inverse(const double h, const int branch) const;
104  eFirst = 0,
106  };
107 
112 
113  double CalculateR(const double asym) const;
114 
116 
117  double fShapePar[eLast+1];
122 
124 
126 
127  };
128 
129 }
130 
131 
132 #endif
133 
double GetShapeParameter(const gh::EShapeParameter par) const
access to all variants of shape parameters (see GaisserHillasTypes.h)
double GetCorrelationXMaxShapeParameter(const gh::EShapeParameter par) const
EInternalShapeParameter ExternalToInternal(const gh::EShapeParameter par) const
double GetCorrelationNMaxShapeParameter(const gh::EShapeParameter par) const
double GetIntegralError() const
return relative error of integral
Class to hold collection (x,y) points and provide interpolation between them.
double CalculateR(const double asym) const
GaisserHillas4Parameter * Create() const
std::pair< gh::EShapeParameter, double > ShapeParameter
void SetShapeParameter(const gh::EShapeParameter par, const double value, const double error)
Setters.
GaisserHillas4Parameter * Clone() const
double InverseLeft(const double h) const
return depth left of XMax for which GH = h*NMax
double InverseRight(const double h) const
return depth right of XMax for which GH = h*NMax
GaisserHillas4Parameter(const gh::EFunctionType functionType=gh::eClassic)
bool IsInternal(const gh::EShapeParameter par) const
check if parameter &quot;par&quot; is one of the internal shape parameters
gh::EShapeParameter InternalToExternal(const EInternalShapeParameter) const
double Eval(const double depth) const
evaluate function a X = depth
double Inverse(const double h, const int branch) const
Inverse of GH function. branch = -1 is right of XMax, branch = 0 left of XMax.
Interface class for access to the Gaisser-Hillas parameters.
void SetCorrelationNMaxShapeParameter(const gh::EShapeParameter par, const double rho)
static utl::TabulatedFunction fRvsAsymTable
double GetShapeParameterError(const gh::EShapeParameter par) const
double GetIntegral() const
calculate integral
gh::EFunctionType GetFunctionType() const
Gaisser Hillas with 4 parameters.
void SetCorrelationShapeParameters(const double rho)
void SetCorrelationXMaxShapeParameter(const gh::EShapeParameter par, const double rho)
void Dump(std::ostream &os=std::cout) const
dump the parameters

, generated on Tue Sep 26 2023.