31 #ifndef ROOT_Math_VavilovFast
32 #define ROOT_Math_VavilovFast
116 class VavilovFast:
public Vavilov {
128 VavilovFast(
double kappa=1,
double beta2=1);
134 virtual ~VavilovFast();
144 double Pdf (
double x)
const;
154 double Pdf (
double x,
double kappa,
double beta2);
161 double Cdf (
double x)
const;
171 double Cdf (
double x,
double kappa,
double beta2);
178 double Cdf_c (
double x)
const;
188 double Cdf_c (
double x,
double kappa,
double beta2);
195 double Quantile (
double z)
const;
205 double Quantile (
double z,
double kappa,
double beta2);
212 double Quantile_c (
double z)
const;
222 double Quantile_c (
double z,
double kappa,
double beta2);
230 virtual void SetKappaBeta2 (
double kappa,
double beta2);
236 virtual double GetLambdaMin()
const;
242 virtual double GetLambdaMax()
const;
247 virtual double GetKappa()
const;
252 virtual double GetBeta2()
const;
257 static VavilovFast *GetInstance();
266 static VavilovFast *GetInstance(
double kappa,
double beta2);
279 static VavilovFast *fgInstance;
292 double vavilov_fast_pdf (
double x,
double kappa,
double beta2);
303 double vavilov_fast_cdf (
double x,
double kappa,
double beta2);
314 double vavilov_fast_cdf_c (
double x,
double kappa,
double beta2);
325 double vavilov_fast_quantile (
double z,
double kappa,
double beta2);
336 double vavilov_fast_quantile_c (
double z,
double kappa,
double beta2);