clProbDist
An OpenCL library for probability distributions
Typedefs | Functions
lognormal.clh File Reference

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...
 

Detailed Description

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 Documentation

typedef struct _clprobdistlLognormal clprobdistLognormal

Lognormal distribution object [device].

A structure that represents a lognormal distribution object.

Function Documentation

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).

Parameters
[in]distDistribution object.
[in]xValue of \(x\).
[out]errError status variable, or NULL.
Returns
Value of \(f(x)\).
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.

Parameters
[in]distDistribution object.
[in]xValue of \(x\).
[out]errError status variable, or NULL.
Returns
Value of \(F(x)\).
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.

Parameters
[in]distDistribution object.
[in]xValue of \(x\).
[out]errError status variable, or NULL.
Returns
Value of \(\bar F(x)\).
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.

Parameters
[in]distDistribution object.
[in]uValue of \(u \in [0,1]\).
[out]errError status variable, or NULL.
Returns
Value of \(F^{-1}(u)\).
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.

Parameters
[in]distDistribution object.
[out]errError status variable, or NULL.
Returns
Mean of the distribution.
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.

Parameters
[in]distDistribution object.
[out]errError status variable, or NULL.
Returns
Variance of the distribution.
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.

Parameters
[in]distDistribution object.
[out]errError status variable, or NULL.
Returns
Standard deviation of the distribution.
double clprobdistLognormalGetMu ( _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal dist,
clprobdistStatus err 
)

Return the scale parameter.

Parameters
[in]distDistribution object.
[out]errError status variable, or NULL.
Returns
Scale parameter \(\mu\).
double clprobdistLognormalGetSigma ( _CLPROBDIST_LOGNORMAL_OBJ_MEM const clprobdistLognormal dist,
clprobdistStatus err 
)

Return the shape parameter.

Parameters
[in]distDistribution object.
[out]errError status variable, or NULL.
Returns
Shape parameter \(\sigma\).
double clprobdistLognormalDensity ( double  mu,
double  sigma,
double  x,
clprobdistStatus err 
)

Probability density function [device].

See also
clprobdistLognormalDensityWithObject()
Parameters
[in]muValue of the scale parameter \(\mu\).
[in]sigmaValue of the shape parameter \(\sigma\).
[in]xValue of \(x\).
[out]errError status variable, or NULL.
Returns
Value of \(f(x)\).
double clprobdistLognormalCDF ( double  mu,
double  sigma,
double  x,
clprobdistStatus err 
)

Cumulative density function [device].

See also
clprobdistLognormalCDFWithObject()
Parameters
[in]muValue of the scale parameter \(\mu\).
[in]sigmaValue of the shape parameter \(\sigma\).
[in]xValue of \(x\).
[out]errError status variable, or NULL.
Returns
Value of \(F(x)\).
double clprobdistLognormalComplCDF ( double  mu,
double  sigma,
double  x,
clprobdistStatus err 
)

Complementary CDF or reliability function [device].

See also
clprobdistLognormalComplCDFWithObject()
Parameters
[in]muValue of the scale parameter \(\mu\).
[in]sigmaValue of the shape parameter \(\sigma\).
[in]xValue of \(x\).
[out]errError status variable, or NULL.
Returns
Value of \(\bar F(x)\).
double clprobdistLognormalInverseCDF ( double  mu,
double  sigma,
double  u,
clprobdistStatus err 
)

Inverse cumulative density function [device].

See also
clprobdistLognormalInverseCDFWithObject()
Parameters
[in]muValue of the scale parameter \(\mu\).
[in]sigmaValue of the shape parameter \(\sigma\).
[in]uValue of \(u \in [0,1]\).
[out]errError status variable, or NULL.
Returns
Value of \(F^{-1}(u)\).
double clprobdistLognormalMean ( double  mu,
double  sigma,
clprobdistStatus err 
)

Mean of the distribution [device].

See also
clprobdistLognormalMeanWithObject()
Parameters
[in]muValue of the scale parameter \(\mu\).
[in]sigmaValue of the shape parameter \(\sigma\).
[out]errError status variable, or NULL.
Returns
Mean of the distribution.
double clprobdistLognormalVariance ( double  mu,
double  sigma,
clprobdistStatus err 
)

Variance of the distribution [device].

See also
clprobdistLognormalVarianceWithObject()
Parameters
[in]muValue of the scale parameter \(\mu\).
[in]sigmaValue of the shape parameter \(\sigma\).
[out]errError status variable, or NULL.
Returns
Variance of the distribution.
double clprobdistLognormalStdDeviation ( double  mu,
double  sigma,
clprobdistStatus err 
)

Standard deviation of the distribution [device].

See also
clprobdistLognormalStdDeviationWithObject()
Parameters
[in]muValue of the scale parameter \(\mu\).
[in]sigmaValue of the shape parameter \(\sigma\).
[out]errError status variable, or NULL.
Returns
Standard deviation of the distribution.
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.

Parameters
[out]destDistDestination 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]srcDistDistribution object to be copied.
Returns
Error status
Warning
This function is available only on the device.
This function is available only when CLPROBDIST_LOGNORMAL_OBJ_MEM is set to CLPROBDIST_MEM_TYPE_LOCAL or to CLPROBDIST_MEM_TYPE_PRIVATE.