|
| virtual | ~GammaDistribution () |
| |
| Support | SupportType () const override |
| |
| RealType | MinValue () const override |
| |
| RealType | MaxValue () const override |
| |
| double | GetShape () const noexcept |
| |
| double | GetScale () const noexcept |
| |
| double | GetRate () const noexcept |
| |
| double | GetLogGammaShape () const noexcept |
| |
| double | GetLogShape () const noexcept |
| |
| double | GetDigammaShape () const noexcept |
| |
| double | GetLogRate () const noexcept |
| |
| double | f (const RealType &x) const override |
| |
| double | logf (const RealType &x) const override |
| |
| double | F (const RealType &x) const override |
| |
| double | logF (const RealType &x) const |
| |
| double | S (const RealType &x) const override |
| |
| double | logS (const RealType &x) const |
| |
| template<std::uniform_random_bit_generator G> |
| RealType | operator() (G &g) const |
| |
| long double | Mean () const override |
| |
| long double | GeometricMean () const |
| |
| long double | Variance () const override |
| |
| long double | GeometricVariance () const |
| |
| RealType | Mode () const override |
| | Mode is the value, which has the largest probability to happen, or, in the case of continuous distribution, has the largest value of density function.
|
| |
| RealType | Median () const override |
| |
| long double | Skewness () const override |
| |
| long double | ExcessKurtosis () const override |
| |
Public Member Functions inherited from randlib::ContinuousDistribution< RealType > |
| virtual | ~ContinuousDistribution () |
| |
| void | ProbabilityDensityFunction (std::span< const RealType > x, std::span< double > y) const |
| | fill vector y with f(x)
|
| |
| void | LogProbabilityDensityFunction (std::span< const RealType > x, std::span< double > y) const |
| | fill vector y with logf(x)
|
| |
| double | Hazard (const RealType &x) const override |
| |
| double | LikelihoodFunction (std::span< const RealType > sample) const override |
| |
| double | LogLikelihoodFunction (std::span< const RealType > sample) const override |
| |
| bool | KolmogorovSmirnovTest (std::span< const RealType > orderStatistic, double alpha) const |
| |
Public Member Functions inherited from randlib::UnivariateDistribution< RealType > |
| virtual | ~UnivariateDistribution () |
| |
| bool | isLeftBounded () const |
| |
| bool | isRightBounded () const |
| |
| RealType | Quantile (double p) const |
| |
| RealType | Quantile1m (double p) const |
| |
| void | QuantileFunction (std::span< const double > p, std::span< RealType > y) const |
| |
| void | QuantileFunction1m (std::span< const double > p, std::span< RealType > y) const |
| |
| std::complex< double > | CF (double t) const |
| |
| void | CharacteristicFunction (std::span< const double > t, std::span< std::complex< double > > y) const |
| |
| void | HazardFunction (std::span< const RealType > x, std::span< double > y) const |
| |
| virtual long double | Kurtosis () const |
| |
| virtual long double | SecondMoment () const |
| |
| virtual long double | ThirdMoment () const |
| |
| virtual long double | FourthMoment () const |
| |
Public Member Functions inherited from randlib::ProbabilityDistribution< T > |
| virtual | ~ProbabilityDistribution ()=default |
| |
| virtual std::string | Name () const =0 |
| |
| virtual double | F (const T &x) const =0 |
| |
| void | CumulativeDistributionFunction (std::span< const T > x, std::span< double > y) const |
| |
| virtual double | S (const T &x) const |
| |
| void | SurvivalFunction (std::span< const T > x, std::span< double > y) const |
| |
| template<std::uniform_random_bit_generator G> |
| T | operator() (G &g) const |
| | Draws a variate with the given engine through the virtual interface.
|
| |
| T | Variate () const |
| | Uses the engine of this object, so it is not thread-safe for one object; use operator() with one engine per thread instead.
|
| |
| void | Sample (std::span< T > outputData) const |
| | Fills the output with variates drawn with the engine of this object.
|
| |
| template<std::uniform_random_bit_generator G> |
| void | Sample (G &g, std::span< T > outputData) const |
| | Fills the output with variates drawn with the given engine.
|
| |
| void | Reseed (std::uint64_t seed) |
| |
|
| | GammaDistribution (double shape, double rate) |
| |
| void | SetParameters (double shape, double rate) |
| |
| void | SetShape (double shape) |
| | SetShape.
|
| |
Protected Member Functions inherited from randlib::ContinuousDistribution< RealType > |
| | ContinuousDistribution () |
| |
| std::complex< double > | integrateCharacteristicFunction (double t) const |
| |
| long double | ExpectedValue (const std::function< double(RealType)> &funPtr, RealType minPoint, RealType maxPoint) const override |
| |
| RealType | searchQuantile (double p, bool upperTail, RealType guess, double relativeStep=1e-3) const |
| | Deterministic root search for the quantile: brackets the root, starting from the guess when it is finite, then refines it with the Illinois variant of regula falsi (on a logarithmic scale for small p), falling back to bisection whenever the bracket does not halve.
|
| |
Protected Member Functions inherited from randlib::UnivariateDistribution< RealType > |
| | UnivariateDistribution () |
| |
Protected Member Functions inherited from randlib::ProbabilityDistribution< T > |
| std::string | toStringWithPrecision (const double a_value, const int n=6) const |
| |
| | ProbabilityDistribution ()=default |
| |
| DefaultEngine & | engine () const |
| |
| virtual void | sample (detail::EngineRef g, std::span< T > outputData) const |
| | Fills the output with variate(g); distributions with a faster bulk algorithm override it.
|
| |
| fit_error | fitError (FitErrorCode code, const std::string &explanation) const |
| |
template<typename RealType>
class randlib::GammaDistribution< RealType >
The GammaDistribution class
Abstract class for Gamma distribution.
f(x | α, β) = β^α / Γ(α) * x^(α-1) * exp(-βx), where Γ(α) denotes Gamma function
Notation X ~ Γ(α, β)
Related distributions:
σX ~ Γ(α, σβ)
If X ~ Γ(1, β), then X ~ Exp(β)
If X ~ Γ(0.5 * n, 0.5), then X ~ χ^2(n)
If X ~ Γ(k, β) for integer k, then X ~ Erlang(k, β)