disrnd
Description
Generates an array of random integers from a general discrete distribution, seeds and generator number passed explicitly
Syntax
int disrnd( long * v, uint n, const double * vP, const uint nSizeP, int iLowerIndex, bool bIsCdf )
Parameters
- v
- [output] Pointer to a double array, which contain the results
- n
- [input] The number of pseudo-random numbers to be generated. n>=1
- vP
- [input] The PDF or CDF of the distribution
- nSizeP
- [input] The number of values supplied in p defining the PDF or CDF of the discrete distribution
- iLowerIndex
- [input] The value of the variate, assumed to be a whole number, to which the probability in vP[0] corresponds
- bIsCdf
- [input] The bool value to indicate whether vP is the PDF or CDF of the distribution
Return
Return NE_NOERROR(0) on success, otherwise error.
Examples
EX1
//This example is to generate pseudo-random numbers from a general discrete distribution
int disrnd_ex1()
{
int n = 20;
long v[20];
int iLowerIndex = -5;
bool bIsCdf = false;
double pP[11] = { 0.01, 0.02, 0.04, 0.08, 0.2, 0.3, 0.2, 0.08, 0.04, 0.02, 0.01 };
uint nSizeP = 11;
int nRet = disrnd( v, n, pP, nSizeP, iLowerIndex, bIsCdf);
if(0 != nRet)
return 0;
for(int i=0;i<n;i++)
printf("v[%d]: %d\n",i, v[i]);
return 1;
}
Remark
See Also
binornd
header to Include
origin.h
Reference
|