g05td Method
関数リスト一覧   NagLibrary Namespaceへ  ライブラリイントロダクション  本ヘルプドキュメントのchm形式版

g05td generates a vector of pseudorandom integers from a discrete distribution with a given PDF (probability density function) or CDF (cumulative distribution function) p.

Syntax

C#
public static void g05td(
	int mode,
	int n,
	double[] p,
	int np,
	int ip1,
	int itype,
	double[] r,
	G05..::.G05State g05state,
	int[] x,
	out int ifail
)
Visual Basic (Declaration)
Public Shared Sub g05td ( _
	mode As Integer, _
	n As Integer, _
	p As Double(), _
	np As Integer, _
	ip1 As Integer, _
	itype As Integer, _
	r As Double(), _
	g05state As G05..::.G05State, _
	x As Integer(), _
	<OutAttribute> ByRef ifail As Integer _
)
Visual C++
public:
static void g05td(
	int mode, 
	int n, 
	array<double>^ p, 
	int np, 
	int ip1, 
	int itype, 
	array<double>^ r, 
	G05..::.G05State^ g05state, 
	array<int>^ x, 
	[OutAttribute] int% ifail
)
F#
static member g05td : 
        mode:int * 
        n:int * 
        p:float[] * 
        np:int * 
        ip1:int * 
        itype:int * 
        r:float[] * 
        g05state:G05..::.G05State * 
        x:int[] * 
        ifail:int byref -> unit 

Parameters

mode
Type: System..::.Int32
On entry: a code for selecting the operation to be performed by the method.
mode=0
Set up reference vector only.
mode=1
Generate variates using reference vector set up in a prior call to g05td.
mode=2
Set up reference vector and generate variates.
Constraint: mode=0, 1 or 2.
n
Type: System..::.Int32
On entry: n, the number of pseudorandom numbers to be generated.
Constraint: n0.
p
Type: array< System..::.Double >[]()[]
An array of size [np]
On entry: the PDF or CDF of the distribution.
Constraints:
  • 0p[i-1]1, for i=1,2,,np;
  • if itype=1, i=1 np p[i-1]=1.0;
  • if itype=2, p[i-1]<p[j], ​i<j​ and ​p[np-1]=1.0.
np
Type: System..::.Int32
On entry: the number of values supplied in p defining the PDF or CDF of the discrete distribution.
Constraint: np>0.
ip1
Type: System..::.Int32
On entry: the value of the variate, a whole number, to which the probability in p[0] corresponds.
itype
Type: System..::.Int32
On entry: indicates the type of information contained in p.
itype=1
p contains a probability distribution function (PDF).
itype=2
p contains a cumulative distribution function (CDF).
Constraint: itype=1 or 2.
r
Type: array< System..::.Double >[]()[]
An array of size [lr]
Note: lr must satisfy the constraint: lrnp+8
On entry: if mode=1, the reference vector from the previous call to g05td.
On exit: the reference vector.
g05state
Type: NagLibrary..::.G05..::.G05State
An object of type G05.G05State.
x
Type: array< System..::.Int32 >[]()[]
An array of size [n]
On exit: contains n pseudorandom numbers from the specified discrete distribution.
ifail
Type: System..::.Int32 %
On exit: ifail=0 unless the method detects an error (see [Error Indicators and Warnings]).

Description

g05td generates a sequence of n integers xi, from a discrete distribution defined by information supplied in p. This may either be the PDF or CDF of the distribution. A reference vector is first set up to contain the CDF of the distribution in its higher elements, followed by an index.
Setting up the reference vector and subsequent generation of variates can each be performed by separate calls to g05td or may be combined in a single call.

References

Error Indicators and Warnings

Accuracy

Further Comments

Example

See Also