clProbDist
An OpenCL library for probability distributions
poisson.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_POISSONDIST_H
12 #define CLPROBDIST_POISSONDIST_H
13 
21 #include "clProbDist/clProbDist.h"
22 #include <float.h>
23 
24 
29 typedef struct _clprobdistPoisson clprobdistPoisson;
30 
31 /***********************************
32 * Constructor & destructor
33 ***********************************/
34 
35 
52 clprobdistPoisson* clprobdistPoissonCreate(cl_double lambda, size_t* bufSize, clprobdistStatus* err);
53 
56 clprobdistStatus clprobdistPoissonDestroy(clprobdistPoisson* dist);
57 
60 /***********************************
61 * Implementation
62 ***********************************/
63 
64 
65 //Dynamic Functions
66 
74 cl_double clprobdistPoissonProbWithObject(const clprobdistPoisson* dist, cl_int x, clprobdistStatus* err);
75 
78 cl_double clprobdistPoissonCDFWithObject(const clprobdistPoisson* dist, cl_int x, clprobdistStatus* err);
79 
85 cl_double clprobdistPoissonComplCDFWithObject(const clprobdistPoisson* dist, cl_int x, clprobdistStatus* err);
86 
89 cl_int clprobdistPoissonInverseCDFWithObject(const clprobdistPoisson* dist, cl_double u, clprobdistStatus* err);
90 
93 cl_double clprobdistPoissonMeanWithObject(const clprobdistPoisson* dist, clprobdistStatus* err);
94 
97 cl_double clprobdistPoissonVarianceWithObject(const clprobdistPoisson* dist, clprobdistStatus* err);
98 
101 cl_double clprobdistPoissonStdDeviationWithObject(const clprobdistPoisson* dist, clprobdistStatus* err);
102 
105 cl_double clprobdistPoissonGetLambda(const clprobdistPoisson* dist, clprobdistStatus* err);
106 
124 cl_double clprobdistPoissonProb(cl_double lambda, cl_int x, clprobdistStatus* err);
125 
135 cl_double clprobdistPoissonCDF(cl_double lambda, cl_int x, clprobdistStatus* err);
136 
149 cl_double clprobdistPoissonComplCDF(cl_double lambda, cl_int x, clprobdistStatus* err);
150 
160 cl_int clprobdistPoissonInverseCDF(cl_double lambda, cl_double u, clprobdistStatus* err);
161 
170 cl_double clprobdistPoissonMean(cl_double lambda, clprobdistStatus* err);
171 
180 cl_double clprobdistPoissonVariance(cl_double lambda, clprobdistStatus* err);
181 
190 cl_double clprobdistPoissonStdDeviation(cl_double lambda, clprobdistStatus* err);
191 
200 cl_int clprobdistDiscreteInverseCDF(const clprobdistPoisson* dist, cl_double u, clprobdistStatus* err);
201 
202 #endif /* POISSONDIST_H */
cl_double clprobdistPoissonStdDeviationWithObject(const clprobdistPoisson *dist, clprobdistStatus *err)
Standard deviation of the distribution [device].
struct _clprobdistPoisson clprobdistPoisson
Poisson distribution object [device].
Definition: poisson.clh:52
cl_int clprobdistPoissonInverseCDFWithObject(const clprobdistPoisson *dist, cl_double u, clprobdistStatus *err)
Inverse cumulative density function [device].
Library definitions common to all probability distributions.
cl_double clprobdistPoissonComplCDF(cl_double lambda, cl_int x, clprobdistStatus *err)
Complementary CDF or reliability function [device].
clprobdistStatus clprobdistPoissonDestroy(clprobdistPoisson *dist)
Destroy a distribution object.
cl_double clprobdistPoissonStdDeviation(cl_double lambda, clprobdistStatus *err)
Standard deviation of the distribution [device].
cl_double clprobdistPoissonMeanWithObject(const clprobdistPoisson *dist, clprobdistStatus *err)
Mean of the distribution [device].
clprobdistPoisson * clprobdistPoissonCreate(cl_double lambda, size_t *bufSize, clprobdistStatus *err)
Create a distribution object.
cl_double clprobdistPoissonMean(cl_double lambda, clprobdistStatus *err)
Mean of the distribution [device].
cl_double clprobdistPoissonProb(cl_double lambda, cl_int x, clprobdistStatus *err)
Probability mass function [device].
cl_double clprobdistPoissonProbWithObject(const clprobdistPoisson *dist, cl_int x, clprobdistStatus *err)
Probability mass function [device].
cl_double clprobdistPoissonVarianceWithObject(const clprobdistPoisson *dist, clprobdistStatus *err)
Variance of the distribution [device].
cl_double clprobdistPoissonCDF(cl_double lambda, cl_int x, clprobdistStatus *err)
Cumulative density function [device].
cl_double clprobdistPoissonVariance(cl_double lambda, clprobdistStatus *err)
Variance of the distribution [device].
cl_double clprobdistPoissonGetLambda(const clprobdistPoisson *dist, clprobdistStatus *err)
Return the value of the mean [device].
cl_double clprobdistPoissonComplCDFWithObject(const clprobdistPoisson *dist, cl_int x, clprobdistStatus *err)
Complementary CDF or reliability function [device].
cl_double clprobdistPoissonCDFWithObject(const clprobdistPoisson *dist, cl_int x, clprobdistStatus *err)
Cumulative density function [device].
cl_int clprobdistPoissonInverseCDF(cl_double lambda, cl_double u, clprobdistStatus *err)
Inverse cumulative density function [device].