intprb_ldgen — Returns uniform numbers from a low discrepancy sequence.
[ evalf , u ] = intprb_ldgen ( callf , n ) [ evalf , u ] = intprb_ldgen ( callf , n , ldseq ) [ evalf , u ] = intprb_ldgen ( callf , n , ldseq , strict ) [ evalf , u ] = intprb_ldgen ( callf , n , ldseq , strict , verbose )
a 1 x 1 matrix of floating point integers, the number of calls to the function.
a 1 x 1 matrix of floating point integers, the spatial dimension.
a 1 x 1 matrix of strings, the name of the sequence. The list of available sequences can be computed by lowdisc_methods().
a 1 x 1 matrix of boolean, set to %t to make so that evalf==callf. (default = %f)
a 1 x 1 matrix of boolean, set to %t to enable verbose messages. (default = %f)
a 1 x 1 matrix of floating point integers, the actual number of function evaluations. We have evalf >= callf.
a evalf x n matrix of doubles, the uniform random numbers in [0,1]^n.
In dimension n, generate more than callf experiments with low discrepancy sequence ldseq.
The "lowdisc" module must be installed to use this function. To install this module, run
atomsInstall("lowdisc")
then restart Scilab.
Returns the number of suggested function evaluations evalf and the uniform numbers u in [0,1]^n.
If strict is false, then the optimum number of simulations evalf is used. If strict is true, the number of simulations is equal to the required one, that is, we have evalf == callf.
When the optimum number of simulations is used, the value of evalf might be extremely large. Indeed, the rule of thumb is that the asymptotic rate of a low discrepancy sequence is reached when the number of experiments is greater than b^n, where b is the base of the sequence and n is the dimension of the space. If the generated number of experiments is too large, we should set strict to %t.
TODO : remove this function when it is integrated to the lowdisc module.