Skip to Main Content Skip to Search
Product Documentation

codistributed.rand - Create codistributed array of uniformly distributed pseudo-random numbers

Syntax

R = codistributed.rand(n)
R = codistributed.rand(m, n, ...)
R = codistributed.rand([m, n, ...])
R = rand(n, codist)
R = rand(m, n, codist)
R = rand([m, n], codist)

Description

R = codistributed.rand(n) creates an n-by-n codistributed array of underlying class double.

R = codistributed.rand(m, n, ...) or R = codistributed.rand([m, n, ...]) creates an m-by-n-by-... codistributed array of underlying class double.

Optional arguments to codistributed.rand must be specified after the required arguments, and in the following order:

R = rand(n, codist) is the same as R = codistributed.rand(n, codist). You can also use the optional arguments with this syntax. To use the default distribution scheme, specify a codistributor constructor without arguments. For example:

spmd
    R = codistributed.rand(8, codistributor1d());
end

R = rand(m, n, codist) and R = rand([m, n], codist) are the same as R = codistributed.rand(m, n, ...) and R = codistributed.rand([m, n, ...]), respectively. You can also use the optional arguments with this syntax.

Tips

When you use rand on the workers in the MATLAB pool, or in a distributed or parallel job (including pmode), each worker or lab sets its random generator seed to a value that depends only on the lab index or task ID. Therefore, the array on each lab is unique for that job. However, if you repeat the job, you get the same random data.

Examples

With four labs,

spmd(4)
    R = codistributed.rand(1000, codistributor())
end

creates a 1000-by-1000 codistributed double array R, distributed by its second dimension (columns). Each lab contains a 1000-by-250 local piece of R.

spmd(4)
    codist = codistributor('1d', 2, 1:numlabs);
    R = codistributed.rand(10, 10, 'uint16', codist);
end

creates a 10-by-10 codistributed uint16 array R, distributed by its columns. Each lab contains a 10-by-labindex local piece of R.

See Also

codistributed.randn | codistributed.sprand | codistributed.sprandn | distributed.rand | rand

  


Free Parallel Computing Interactive Kit

See how to solve large problems with minimal effort and reduce simulation time.

Get free kit

Trials Available

Try the latest versions of parallel computing products.

Get trial software
 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS