qrand

Class: qrandstream

Generate quasi-random points from stream

x = qrand(q)
X = qrand(q,n)

Description

x = qrand(q) returns the next value x in the quasi-random number stream q of the qrandstream class. x is a 1-by-d vector, where d is the dimension of the stream. The command sets q.State to the index in the underlying point set of the next value to be returned.

X = qrand(q,n) returns the next n values X in an n-by-d matrix.

Objects q of the qrandstream class encapsulate properties of a specified quasi-random number stream. Values of the stream are not generated and stored in memory until q is accessed using qrand.

Examples

Use qrandstream to construct a 3-D Halton stream, based on a point set that skips the first 1000 values and then retains every 101st point:

q = qrandstream('halton',3,'Skip',1e3,'Leap',1e2)
q =
Halton quasi-random stream in 3 dimensions
Point set properties:
Skip : 1000
Leap : 100
ScrambleMethod : none

nextIdx = q.State
nextIdx =
1

Use qrand to generate two samples of size four:

X1 = qrand(q,4)
X1 =
0.0928    0.3475    0.0051
0.6958    0.2035    0.2371
0.3013    0.8496    0.4307
0.9087    0.5629    0.6166
nextIdx = q.State
nextIdx =
5

X2 = qrand(q,4)
X2 =
0.2446    0.0238    0.8102
0.5298    0.7540    0.0438
0.3843    0.5112    0.2758
0.8335    0.2245    0.4694
nextIdx = q.State
nextIdx =
9

Use reset to reset the stream, then generate another sample:

reset(q)
nextIdx = q.State
nextIdx =
1

X = qrand(q,4)
X =
0.0928    0.3475    0.0051
0.6958    0.2035    0.2371
0.3013    0.8496    0.4307
0.9087    0.5629    0.6166