qrand
Generate quasirandom points from stream
Syntax
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 =
1Use 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 =
9Use 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