Generate Poisson-distributed random integers

Random Data Sources sublibrary of Comm Sources

The Poisson Integer Generator block generates random integers
using a Poisson distribution. The probability of generating a nonnegative
integer *k* is

$${\lambda}^{k}\mathrm{exp}(-\lambda )/(k!)$$

where λ is a positive number known as the Poisson parameter.

You can use the Poisson Integer Generator to generate noise
in a binary transmission channel. In this case, the Poisson parameter **Lambda** should
be less than 1, usually much less.

The output signal can be a column or row vector, a two-dimensional
matrix, or a scalar. The number of rows in the output signal corresponds
to the number of samples in one frame and is determined by the **Samples
per frame** parameter. The number of columns in the output
signal corresponds to the number of channels and is determined by
the number of elements in the **Lambda** parameter.
See Sources and Sinks in *Communications System Toolbox™ User's
Guide* for more details.

**Lambda**The Poisson parameter λ. Specify λ as a scalar or row vector whose elements are real numbers. If

**Lambda**is a scalar, then every element in the output vector shares the same Poisson parameter. If**Lambda**is a row vector, then the number of elements correspond to the number of independent channels output from the block.**Source of initial seed**The source of the initial seed for the random number generator. Specify the source as either

`Auto`

or`Parameter`

. When set to`Auto`

, the block uses the global random number stream.**Note:**When**Source of initial seed**is`Auto`

in`Code generation`

mode, the random number generator uses an initial seed of zero. Therefore, the block generates the same random numbers each time it is started. Use`Interpreted execution`

to ensure that the model uses different initial seeds. If`Interpreted execution`

is run in`Rapid accelerator`

mode, then it behaves the same as`Code generation`

mode.**Initial seed**The initial seed value for the random number generator. Specify the seed as a nonnegative integer scalar.

**Initial seed**is available when the**Source of initial seed**parameter is set to`Parameter`

.**Sample time**The time between each sample of a column of the output signal.

**Samples per frame**The number of samples per frame in one channel of the output signal. Specify

**Samples per frame**as a positive integer scalar.**Note:**The time between output updates is equal to the product of**Samples per frame**and**Sample time**. For example, if**Sample time**and**Samples per frame**equal one, the block outputs an integer every second. If**Samples per frame**is increased to 10, then a 10-by-1 vector is output every 10 seconds. This ensures that the equivalent output rate is not dependent on the**Samples per frame**parameter.**Output data type**The output type of the block can be specified as a

`boolean`

,`uint8`

,`uint16`

,`uint32`

,`single`

, or`double`

. The default is`double`

. Single outputs may lead to different results when compared with double outputs for the same set of parameters.**Simulate using**Select the simulation mode.

`Code generation`

On the first model run, simulate and generate code. If the structure of the block does not change, subsequent model runs do not regenerate the code.

If the simulation mode is

`Code generation`

, System objects corresponding to the blocks accept a maximum of nine inputs.`Interpreted execution`

Simulate model without generating code. This option results in faster start times but can slow subsequent simulation performance.

Random Integer Generator; `poissrnd`

(Statistics and Machine
Learning Toolbox™)

Was this topic helpful?