clProbDist
An OpenCL library for probability distributions
gamma.h
Go to the documentation of this file.
1 /*
2  * Authors:
3  *
4  * Nabil Kemerchou <kemerchn@iro.umontreal.ca> (2015)
5  * David Munger <mungerd@iro.umontreal.ca> (2015)
6  * Pierre L'Ecuyer <lecuyer@iro.umontreal.ca> (2015)
7  *
8  */
9 
10 #pragma once
11 #ifndef CLPROBDIST_GAMMADIST_H
12 #define CLPROBDIST_GAMMADIST_H
13 
29 #include "clProbDist/clProbDist.h"
30 #include "clProbDist/continuous.h"
31 
36 typedef struct _clprobdistGamma clprobdistGamma;
37 
38 /***********************************
39 * Constructor & destructor
40 ***********************************/
41 
60 clprobdistGamma * clprobdistGammaCreate(cl_double alpha, cl_double lambda, int decprec, size_t* bufSize, clprobdistStatus* err);
61 
64 clprobdistStatus clprobdistGammaDestroy(clprobdistGamma* dist);
65 
69 // Dynamic functions
70 
78 cl_double clprobdistGammaDensityWithObject(const clprobdistGamma* dist, cl_double x, clprobdistStatus* err);
79 
82 cl_double clprobdistGammaCDFWithObject(const clprobdistGamma* dist, cl_double x, clprobdistStatus* err);
83 
86 cl_double clprobdistGammaComplCDFWithObject(const clprobdistGamma* dist, cl_double x, clprobdistStatus* err);
87 
90 cl_double clprobdistGammaInverseCDFWithObject(const clprobdistGamma* dist, cl_double u, clprobdistStatus* err);
91 
94 cl_double clprobdistGammaMeanWithObject(const clprobdistGamma* dist, clprobdistStatus* err);
95 
98 cl_double clprobdistGammaVarianceWithObject(const clprobdistGamma* dist, clprobdistStatus* err);
99 
102 cl_double clprobdistGammaStdDeviationWithObject(const clprobdistGamma* dist, clprobdistStatus* err);
103 
110 cl_double clprobdistGammaGetAlpha(const clprobdistGamma* dist, clprobdistStatus* err);
111 
118 cl_double clprobdistGammaGetLambda(const clprobdistGamma* dist, clprobdistStatus* err);
119 
141 cl_double clprobdistGammaDensity(cl_double alpha, cl_double lambda, int decprec, cl_double x, clprobdistStatus* err);
142 
154 cl_double clprobdistGammaCDF(cl_double alpha, cl_double lambda, int decprec, cl_double x, clprobdistStatus* err);
155 
167 cl_double clprobdistGammaComplCDF(cl_double alpha, cl_double lambda, int decprec, cl_double x, clprobdistStatus* err);
168 
180 cl_double clprobdistGammaInverseCDF(cl_double alpha, cl_double lambda, int decprec, cl_double u, clprobdistStatus* err);
181 
192 cl_double clprobdistGammaMean(cl_double alpha, cl_double lambda, int decprec, clprobdistStatus* err);
193 
204 cl_double clprobdistGammaVariance(cl_double alpha, cl_double lambda, int decprec, clprobdistStatus* err);
205 
216 cl_double clprobdistGammaStdDeviation(cl_double alpha, cl_double lambda, int decprec, clprobdistStatus* err);
217 
226 cl_double clprobdistGammaCDF_1(cl_double alpha, int d, cl_double x, clprobdistStatus* err);
227 
232 cl_double clprobdistGammaComplCDF_1(cl_double alpha, int d, cl_double x, clprobdistStatus* err);
233 
238 cl_double clprobdistGammaInverseCDF_1(cl_double alpha, int d, cl_double u, clprobdistStatus* err);
239 
240 #endif
cl_double clprobdistGammaDensityWithObject(const clprobdistGamma *dist, cl_double x, clprobdistStatus *err)
Probability density function [device].
cl_double clprobdistGammaCDFWithObject(const clprobdistGamma *dist, cl_double x, clprobdistStatus *err)
Cumulative density function [device].
cl_double clprobdistGammaVariance(cl_double alpha, cl_double lambda, int decprec, clprobdistStatus *err)
Variance of the distribution [device].
cl_double clprobdistGammaGetLambda(const clprobdistGamma *dist, clprobdistStatus *err)
Return the scale parameter of the distribution [device].
Library definitions common to all probability distributions.
clprobdistStatus clprobdistGammaDestroy(clprobdistGamma *dist)
Destroy a distribution object.
cl_double clprobdistGammaInverseCDF(cl_double alpha, cl_double lambda, int decprec, cl_double u, clprobdistStatus *err)
Inverse cumulative density function [device].
clprobdistGamma * clprobdistGammaCreate(cl_double alpha, cl_double lambda, int decprec, size_t *bufSize, clprobdistStatus *err)
Create a distribution object.
cl_double clprobdistGammaMean(cl_double alpha, cl_double lambda, int decprec, clprobdistStatus *err)
Mean of the distribution [device].
cl_double clprobdistGammaComplCDF(cl_double alpha, cl_double lambda, int decprec, cl_double x, clprobdistStatus *err)
Complementary CDF or reliability function [device].
cl_double clprobdistGammaCDF(cl_double alpha, cl_double lambda, int decprec, cl_double x, clprobdistStatus *err)
Cumulative density function [device].
cl_double clprobdistGammaMeanWithObject(const clprobdistGamma *dist, clprobdistStatus *err)
Mean of the distribution [device].
cl_double clprobdistGammaDensity(cl_double alpha, cl_double lambda, int decprec, cl_double x, clprobdistStatus *err)
Probability density function [device].
cl_double clprobdistGammaVarianceWithObject(const clprobdistGamma *dist, clprobdistStatus *err)
Variance of the distribution [device].
cl_double clprobdistGammaStdDeviation(cl_double alpha, cl_double lambda, int decprec, clprobdistStatus *err)
Standard deviation of the distribution [device].
struct _clprobdistGamma clprobdistGamma
Gamma distribution object [device].
Definition: gamma.clh:52
cl_double clprobdistGammaComplCDFWithObject(const clprobdistGamma *dist, cl_double x, clprobdistStatus *err)
Complementary CDF or reliability function [device].
cl_double clprobdistGammaGetAlpha(const clprobdistGamma *dist, clprobdistStatus *err)
Return the shape parameter of the distribution [device].
cl_double clprobdistGammaInverseCDFWithObject(const clprobdistGamma *dist, cl_double u, clprobdistStatus *err)
Inverse cumulative density function [device].
cl_double clprobdistGammaStdDeviationWithObject(const clprobdistGamma *dist, clprobdistStatus *err)
Standard deviation of the distribution [device].