clProbDist
An OpenCL library for probability distributions
|
Device-side API for the lognormal distribution. More...
#include "clProbDist.clh"
#include "continuous.clh"
#include "normal.clh"
#include "private/lognormal.c.h"
Typedefs | |
typedef struct _clprobdistlLognormal | clprobdistLognormal |
Lognormal distribution object [device]. More... | |
Functions | |
clprobdistStatus | clprobdistLognormalCopyOverFromGlobal (_CLPROBDIST_LOGNORMAL_OBJ_MEM clprobdistLognormal *destDist, __global const clprobdistLognormal *srcDist) |
Copy a distribution object into already allocated memory [device-only]. More... | |
Functions for use with a distribution object | |
double | clprobdistLognormalDensityWithObject (_CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal *dist, double x, clprobdistStatus *err) |
Probability density function [device]. More... | |
double | clprobdistLognormalCDFWithObject (_CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal *dist, double x, clprobdistStatus *err) |
Cumulative density function [device]. More... | |
double | clprobdistLognormalComplCDFWithObject (_CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal *dist, double x, clprobdistStatus *err) |
Complementary CDF or reliability function [device]. More... | |
double | clprobdistLognormalInverseCDFWithObject (_CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal *dist, double u, clprobdistStatus *err) |
Inverse cumulative density function [device]. More... | |
double | clprobdistLognormalMeanWithObject (_CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal *dist, clprobdistStatus *err) |
Mean of the distribution [device]. More... | |
double | clprobdistLognormalVarianceWithObject (_CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal *dist, clprobdistStatus *err) |
Variance of the distribution [device]. More... | |
double | clprobdistLognormalStdDeviationWithObject (_CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal *dist, clprobdistStatus *err) |
Standard deviation of the distribution [device]. More... | |
double | clprobdistLognormalGetMu (_CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal *dist, clprobdistStatus *err) |
Return the scale parameter. More... | |
double | clprobdistLognormalGetSigma (_CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal *dist, clprobdistStatus *err) |
Return the shape parameter. More... | |
Functions for use with explicit distribution parameters | |
double | clprobdistLognormalDensity (double mu, double sigma, double x, clprobdistStatus *err) |
Probability density function [device]. More... | |
double | clprobdistLognormalCDF (double mu, double sigma, double x, clprobdistStatus *err) |
Cumulative density function [device]. More... | |
double | clprobdistLognormalComplCDF (double mu, double sigma, double x, clprobdistStatus *err) |
Complementary CDF or reliability function [device]. More... | |
double | clprobdistLognormalInverseCDF (double mu, double sigma, double u, clprobdistStatus *err) |
Inverse cumulative density function [device]. More... | |
double | clprobdistLognormalMean (double mu, double sigma, clprobdistStatus *err) |
Mean of the distribution [device]. More... | |
double | clprobdistLognormalVariance (double mu, double sigma, clprobdistStatus *err) |
Variance of the distribution [device]. More... | |
double | clprobdistLognormalStdDeviation (double mu, double sigma, clprobdistStatus *err) |
Standard deviation of the distribution [device]. More... | |
Device-side API for the lognormal distribution.
In the function declarations of this file, the preprocessor symbol _CLPROBDIST_LOGNORMAL_OBJ_MEM expands to the selected memory type for this distribution type.
typedef struct _clprobdistlLognormal clprobdistLognormal |
Lognormal distribution object [device].
A structure that represents a lognormal distribution object.
double clprobdistLognormalDensityWithObject | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal * | dist, |
double | x, | ||
clprobdistStatus * | err | ||
) |
Probability density function [device].
Return \(f(x)\), the value at \(x=\)x
of the probability density function associated with the distribution object dist
.
This function is defined only for continuous distributions (see Implemented distributions).
[in] | dist | Distribution object. |
[in] | x | Value of \(x\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalCDFWithObject | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal * | dist, |
double | x, | ||
clprobdistStatus * | err | ||
) |
Cumulative density function [device].
Return \(F(x)\), the value at \(x=\)x
of the distribution function associated with the distribution object dist
.
[in] | dist | Distribution object. |
[in] | x | Value of \(x\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalComplCDFWithObject | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal * | dist, |
double | x, | ||
clprobdistStatus * | err | ||
) |
Complementary CDF or reliability function [device].
Return \(\bar F(x)\), the value of the complementary distribution function associated with the distribution object dist
.
[in] | dist | Distribution object. |
[in] | x | Value of \(x\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalInverseCDFWithObject | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal * | dist, |
double | u, | ||
clprobdistStatus * | err | ||
) |
Inverse cumulative density function [device].
Return \(F^{-1}(u)\), the value at \(u=\)u
of the inverse distribution function associated with the distribution object dist
. The type of the return value is cl_int
for a discrete distribution of cl_double
for a continuous distribution.
[in] | dist | Distribution object. |
[in] | u | Value of \(u \in [0,1]\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalMeanWithObject | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal * | dist, |
clprobdistStatus * | err | ||
) |
Mean of the distribution [device].
Return the mean of the distribution associated with the distribution object dist
.
[in] | dist | Distribution object. |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalVarianceWithObject | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal * | dist, |
clprobdistStatus * | err | ||
) |
Variance of the distribution [device].
Return the variance of the distribution associated with the distribution object dist
.
[in] | dist | Distribution object. |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalStdDeviationWithObject | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal * | dist, |
clprobdistStatus * | err | ||
) |
Standard deviation of the distribution [device].
Return the standard deviation of the distribution associated with the distribution object dist
.
[in] | dist | Distribution object. |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalGetMu | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal * | dist, |
clprobdistStatus * | err | ||
) |
Return the scale parameter.
[in] | dist | Distribution object. |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalGetSigma | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal * | dist, |
clprobdistStatus * | err | ||
) |
Return the shape parameter.
[in] | dist | Distribution object. |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalDensity | ( | double | mu, |
double | sigma, | ||
double | x, | ||
clprobdistStatus * | err | ||
) |
Probability density function [device].
[in] | mu | Value of the scale parameter \(\mu\). |
[in] | sigma | Value of the shape parameter \(\sigma\). |
[in] | x | Value of \(x\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalCDF | ( | double | mu, |
double | sigma, | ||
double | x, | ||
clprobdistStatus * | err | ||
) |
Cumulative density function [device].
[in] | mu | Value of the scale parameter \(\mu\). |
[in] | sigma | Value of the shape parameter \(\sigma\). |
[in] | x | Value of \(x\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalComplCDF | ( | double | mu, |
double | sigma, | ||
double | x, | ||
clprobdistStatus * | err | ||
) |
Complementary CDF or reliability function [device].
[in] | mu | Value of the scale parameter \(\mu\). |
[in] | sigma | Value of the shape parameter \(\sigma\). |
[in] | x | Value of \(x\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalInverseCDF | ( | double | mu, |
double | sigma, | ||
double | u, | ||
clprobdistStatus * | err | ||
) |
Inverse cumulative density function [device].
[in] | mu | Value of the scale parameter \(\mu\). |
[in] | sigma | Value of the shape parameter \(\sigma\). |
[in] | u | Value of \(u \in [0,1]\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalMean | ( | double | mu, |
double | sigma, | ||
clprobdistStatus * | err | ||
) |
Mean of the distribution [device].
[in] | mu | Value of the scale parameter \(\mu\). |
[in] | sigma | Value of the shape parameter \(\sigma\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalVariance | ( | double | mu, |
double | sigma, | ||
clprobdistStatus * | err | ||
) |
Variance of the distribution [device].
[in] | mu | Value of the scale parameter \(\mu\). |
[in] | sigma | Value of the shape parameter \(\sigma\). |
[out] | err | Error status variable, or NULL . |
double clprobdistLognormalStdDeviation | ( | double | mu, |
double | sigma, | ||
clprobdistStatus * | err | ||
) |
Standard deviation of the distribution [device].
[in] | mu | Value of the scale parameter \(\mu\). |
[in] | sigma | Value of the shape parameter \(\sigma\). |
[out] | err | Error status variable, or NULL . |
clprobdistStatus clprobdistLognormalCopyOverFromGlobal | ( | _CLPROBDIST_LOGNORMAL_OBJ_MEM clprobdistLognormal * | destDist, |
__global const clprobdistLognormal * | srcDist | ||
) |
Copy a distribution object into already allocated memory [device-only].
Copy the distribution object srcDist
located in global memory into the buffer destDist
located in local or private memory. This function does not allocate memory for the distribution object, it assumes that this has already been done.
When the distribution API is configured to use distribution objects stored in global memory (the default), there is no need to copy distribution objects across memory types, since the kernel already receives them in global memory (see Device memory types). The same applies to constant memory. In such cases, this function is not defined.
[out] | destDist | Destination buffer into which to copy (its content will be overwritten). The qualifier _CLPROBDIST_<DIST>_OBJ_MEM , where <DIST> is the uppercase distribution name, is replaced with the OpenCL keywords __private or __local , respectively. |
[in] | srcDist | Distribution object to be copied. |