clProbDist
An OpenCL library for probability distributions
lognormal.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_LOGNORMALDIST_H
12 #define CLPROBDIST_LOGNORMALDIST_H
13 
22 #include "clProbDist/clProbDist.h"
23 #include "clProbDist/continuous.h"
24 
29 typedef struct _clprobdistlLognormal clprobdistLognormal;
30 
31 
32 //***********************************************************************
33 // Constructor and Destructor
34 //***********************************************************************
35 
53 clprobdistLognormal* clprobdistLognormalCreate(cl_double mu, cl_double sigma, size_t* bufSize, clprobdistStatus* err);
54 
57 clprobdistStatus clprobdistLognormalDestroy(clprobdistLognormal* dist);
58 
61 //***********************************************************************
62 // Implementation with Dist object
63 //***********************************************************************
64 
72 cl_double clprobdistLognormalDensityWithObject(const clprobdistLognormal* dist, cl_double x, clprobdistStatus* err);
73 
76 cl_double clprobdistLognormalCDFWithObject(const clprobdistLognormal* dist, cl_double x, clprobdistStatus* err);
77 
80 cl_double clprobdistLognormalComplCDFWithObject(const clprobdistLognormal* dist, cl_double x, clprobdistStatus* err);
81 
84 cl_double clprobdistLognormalInverseCDFWithObject(const clprobdistLognormal* dist, cl_double u, clprobdistStatus* err);
85 
88 cl_double clprobdistLognormalMeanWithObject(const clprobdistLognormal* dist, clprobdistStatus* err);
89 
92 cl_double clprobdistLognormalVarianceWithObject(const clprobdistLognormal* dist, clprobdistStatus* err);
93 
96 cl_double clprobdistLognormalStdDeviationWithObject(const clprobdistLognormal* dist, clprobdistStatus* err);
97 
104 cl_double clprobdistLognormalGetMu(const clprobdistLognormal* dist, clprobdistStatus* err);
105 
112 cl_double clprobdistLognormalGetSigma(const clprobdistLognormal* dist, clprobdistStatus* err);
113 
117 //***********************************************************************
118 // Implementation of static functions
119 //***********************************************************************
120 
136 cl_double clprobdistLognormalDensity(cl_double mu, cl_double sigma, cl_double x, clprobdistStatus* err);
137 
148 cl_double clprobdistLognormalCDF(cl_double mu, cl_double sigma, cl_double x, clprobdistStatus* err);
149 
160 cl_double clprobdistLognormalComplCDF(cl_double mu, cl_double sigma, cl_double x, clprobdistStatus* err);
161 
172 cl_double clprobdistLognormalInverseCDF(cl_double mu, cl_double sigma, cl_double u, clprobdistStatus* err);
173 
183 cl_double clprobdistLognormalMean(cl_double mu, cl_double sigma, clprobdistStatus* err);
184 
194 cl_double clprobdistLognormalVariance(cl_double mu, cl_double sigma, clprobdistStatus* err);
195 
205 cl_double clprobdistLognormalStdDeviation(cl_double mu, cl_double sigma, clprobdistStatus* err);
206 
211 #endif
cl_double clprobdistLognormalVariance(cl_double mu, cl_double sigma, clprobdistStatus *err)
Variance of the distribution [device].
cl_double clprobdistLognormalMean(cl_double mu, cl_double sigma, clprobdistStatus *err)
Mean of the distribution [device].
cl_double clprobdistLognormalMeanWithObject(const clprobdistLognormal *dist, clprobdistStatus *err)
Mean of the distribution [device].
cl_double clprobdistLognormalCDF(cl_double mu, cl_double sigma, cl_double x, clprobdistStatus *err)
Cumulative density function [device].
clprobdistStatus clprobdistLognormalDestroy(clprobdistLognormal *dist)
Destroy a distribution object.
cl_double clprobdistLognormalStdDeviation(cl_double mu, cl_double sigma, clprobdistStatus *err)
Standard deviation of the distribution [device].
Library definitions common to all probability distributions.
cl_double clprobdistLognormalDensity(cl_double mu, cl_double sigma, cl_double x, clprobdistStatus *err)
Probability density function [device].
cl_double clprobdistLognormalStdDeviationWithObject(const clprobdistLognormal *dist, clprobdistStatus *err)
Standard deviation of the distribution [device].
cl_double clprobdistLognormalComplCDFWithObject(const clprobdistLognormal *dist, cl_double x, clprobdistStatus *err)
Complementary CDF or reliability function [device].
cl_double clprobdistLognormalInverseCDFWithObject(const clprobdistLognormal *dist, cl_double u, clprobdistStatus *err)
Inverse cumulative density function [device].
cl_double clprobdistLognormalInverseCDF(cl_double mu, cl_double sigma, cl_double u, clprobdistStatus *err)
Inverse cumulative density function [device].
clprobdistLognormal * clprobdistLognormalCreate(cl_double mu, cl_double sigma, size_t *bufSize, clprobdistStatus *err)
Create a distribution object.
cl_double clprobdistLognormalGetMu(const clprobdistLognormal *dist, clprobdistStatus *err)
Return the scale parameter.
cl_double clprobdistLognormalDensityWithObject(const clprobdistLognormal *dist, cl_double x, clprobdistStatus *err)
Probability density function [device].
struct _clprobdistlLognormal clprobdistLognormal
Lognormal distribution object [device].
Definition: lognormal.clh:52
cl_double clprobdistLognormalGetSigma(const clprobdistLognormal *dist, clprobdistStatus *err)
Return the shape parameter.
cl_double clprobdistLognormalVarianceWithObject(const clprobdistLognormal *dist, clprobdistStatus *err)
Variance of the distribution [device].
cl_double clprobdistLognormalComplCDF(cl_double mu, cl_double sigma, cl_double x, clprobdistStatus *err)
Complementary CDF or reliability function [device].
cl_double clprobdistLognormalCDFWithObject(const clprobdistLognormal *dist, cl_double x, clprobdistStatus *err)
Cumulative density function [device].