1 #ifndef _un2_Functions_h_
2 #define _un2_Functions_h_
16 return (M_PI/180)*
deg;
25 return (180/M_PI)*
rad;
31 Mean(
const std::vector<double>& v)
33 return std::accumulate(v.begin(), v.end(), 0.) / v.size();
53 const double DeltaXmax,
54 const double DeltaXref,
72 return a0 + x * (a1 + x * (a2 + x * (a3 + x * a4)));
85 return a * exp(x / b) +
c;
133 const std::vector<double>& nvec);
138 const std::vector<double>& sigmavec,
139 const std::vector<double>& muvec,
140 const std::vector<double>& nvec);
148 const double Xvert = 883,
149 const double hs = 8380,
150 const double hs2 = 0.07);
158 const double Xvert = 883,
159 const double hs = 8380,
160 const double hs2 = 0.07,
161 const double height = 1400.);
190 const double ns_bin = 8.3333);
196 const double ns_bin = 8.3333);
202 const double ns_bin = 8.3333);
208 const double quantile,
209 const double ns_bin = 8.3333);
214 const double quantile,
216 const double ns_bin = 8.3333);
238 const double Xvert = 883,
239 const double hs = 8380,
240 const double hs2 = 0.07,
241 const double height = 1400);
249 const double Xvert = 883,
250 const double hs = 8380,
251 const double hs2 = 0.07,
252 const double height = 1400);
258 const double xVertGround,
265 const bool realEvent =
false);
270 const bool realEvent =
false);
277 const double lambda);
280 avgXmax0(
const double lgE,
const bool realEvent);
283 avglnRmu0(
const double lgE,
const bool realEvent);
286 XmaxFromRmu(
const double Rmu,
const double lgE,
const bool realEvent);
292 XmaxDistribution(
const double Rmu,
const double Xmax,
const double lgE,
const bool realEvent);
295 lnA(
const double Rmu,
const double Xmax,
const double lgE,
const bool realEvent);
double TwoFormAzimuthCorrectionFactor(const double theta, const double psi, const double M1, const double M3)
double StandardDeviation(const std::vector< double > &v, const double mean)
constexpr double Exponential(const double x, const double a, const double b, const double c)
double BiasCorrectionXmax(const double sst, const double lgE, const bool realEvent)
double BiasCorrectionRmu(const double sst, const double lgE, const bool realEvent)
constexpr double Rad2Deg(const double rad)
double SpikyFunction(const double x, const double sigma, const double delta, const std::vector< double > &nvec)
double AnalyticXmax(const double r, const double psi, const double theta, const double DX, const double Xvert, const double hs, const double hs2, const double height)
double ErfcInv(const double x)
double XmaxFromRmu(const double Rmu, const double lgE, const bool realEvent)
double LogarithmOfTruncatedGaussianPDF(const double x, const double mu, const double sigma)
double avglnRmu0(const double lgE, const bool realEvent)
double LogNormalMuFromModeAndSigma(const double mode, const double sigma, const double ns_bin)
double SignalStartTimePlaneFront(const double r, const double psi, const double theta, const double DX, const double Xvert, const double hs, const double hs2, const double height)
double ActivationFunctionBackground(const double f, const double fThrsh, const double cThrsh, const double bg)
double ModifiedGH(const double deltaX, const double sRef, const double lgE, const double gamma, const double deltaX0, const double deltaXMax, const double deltaXRef, const double lambda0, const double lambda1, const double lambda2)
double XmaxDistribution(const double Rmu, const double Xmax, const double lgE, const bool realEvent)
double LogNormalMuFromExpAndStd(const double exp_val, const double std, const double ns_bin)
double LogNormalSigmaFromExpAndStd(const double exp_val, const double std, const double ns_bin)
double Gaussian(const double x, const double mu, const double sigma)
constexpr double Polynomial4(const double x, const double a0, const double a1, const double a2, const double a3, const double a4)
double lnA(const double Rmu, const double Xmax, const double lgE, const bool realEvent)
double AnalyticDX(const double r, const double psi, const double theta, const double Xmax, const double Xvert, const double hs, const double hs2, const double height)
double SigmaXmaxFromRmu(const double Rmu, const double lgE, const bool realEvent)
double GHGauss(const double r, const double psi, const double theta, const double Xmax, const double lambda)
double LogNormalTimeQuantileFromMuAndSigma(const double mu, const double sigma, const double quantile, const double ns_bin)
double avgXmax0(const double lgE, const bool realEvent)
double LogNormalMuFromTimeQuantileAndSigma(const double timeQuantile, const double quantile, const double sigma, const double ns_bin)
double AnalyticHeightFromDepth(const double depth, const double theta, const double xVertGround, const double hs, const double hs2)
double Mean(const std::vector< double > &v)
double LogNormalPDF(const double x, const double mu, const double sigma)
double LogNormalCDF(const double x, const double mu, const double sigma)
double GammaPDF(const double x, const double mu, const double theta)
double LogarithmOfRayleighPDF(const double x, const double sigma)
double AzimuthCorrectionFactor(const double theta, const double psi, const double r, const double r0, const double l)
double NKG(const double r, const double n, const double rG, const double s)
double SignalStartTime(const double r, const double psi, const double theta, const double DX, const double Xvert, const double hs, const double hs2)
constexpr double Deg2Rad(const double deg)