104 The code from CERNLIB has been extended such that also smaller values are possible.
105
106 - epsilon corresponds to \f$\epsilon\f$ in Eq. (4.10) of Schorr's paper.
107 It determines the accuracy of the series expansion.
108 Schorr recommends \f$\epsilon = 10^{-5}\f$.
109
110 For the quantile calculation, the algorithm given by Schorr is not used,
111 because it turns out to be very slow and still inaccurate.
112 Instead, an initial estimate is calculated based on a pre-calculated table,
113 which is subsequently improved by Newton iterations.
114
115 While the CERNLIB implementation calculates at most 156 terms in the series expansion
116 for the pdf and cdf calculation, this class calculates up to 500 terms, depending
117 on the values of epsilonPM and epsilon.
118
119 Average times on a Pentium Core2 Duo P8400 2.26GHz:
120 - 38us per call to SetKappaBeta2 or constructor
121 - 0.49us per call to Pdf, Cdf
122 - 8.2us per first call to Quantile after SetKappaBeta2 or constructor
123 - 0.83us per subsequent call to Quantile
124
125 Benno List, June 2010
126
127 @ingroup StatFunc
128 */
129
130
131class VavilovAccurate: public Vavilov {
132
133public:
134
135
136 /**
137 Initialize an object to calculate the Vavilov distribution
138
139 @param kappa The parameter \f$\kappa\f$, which must be in the range \f$\kappa \ge 0.001 \f$
140 @param beta2 The parameter \f$\beta^2\f$, which must be in the range \f$0 \le \beta^2 \le 1 \f$
141 @param epsilonPM: \f$\epsilon^+ = \epsilon^-\f$ in Eqs. (2.1) and (2.2) of Schorr's paper; gives an estimate on the integral of the cumulative distribution function
142 outside the range \f$\lambda_{min} \le \lambda \le \lambda_{max}\f$
143 where the approximation is valid.
144 @param epsilon: \f$\epsilon\f$ in Eq. (4.10) of Schorr's paper; determines the accuracy of the series expansion.
254 @param kappa The parameter \f$\kappa\f$, which must be in the range \f$\kappa \ge 0.001 \f$
255 @param beta2 The parameter \f$\beta^2\f$, which must be in the range \f$0 \le \beta^2 \le 1 \f$
256 @param epsilonPM \f$\epsilon^+ = \epsilon^-\f$ in Eqs. (2.1) and (2.2) of Schorr's paper; gives an estimate on the integral of the cumulative distribution function
257 outside the range \f$\lambda_{min} \le \lambda \le \lambda_{max}\f$
258 where the approximation is valid.
259 @param epsilon \f$\epsilon\f$ in Eq. (4.10) of Schorr's paper; determines the accuracy of the series expansion.