Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

randg

Los números aleatorios gamma con escala unitaria

Sintaxis

Y = randg
Y = randg(A)
Y = randg(A,m)
Y = randg(A,m,n,p,...)
Y = randg(A,[m,n,p,...])

Descripción

Y = randg Devuelve un valor escalar aleatorio elegido de una distribución gamma con la escala y la forma de la unidad.

Y = randg(A) Devuelve una matriz de valores aleatorios elegidos a partir de distribuciones gamma con escala unitaria. es del mismo tamaño que, y genera cada elemento de uso de un parámetro de forma igual al elemento correspondiente de.YArandgYA

Y = randg(A,m) Devuelve una-por-matriz de valores aleatorios elegidos de distribuciones gamma con parámetros de forma. es una-por-matriz o un escalar.mmAAmm Si es un escalar, usa ese valor de parámetro de forma única para generar todos los elementos de.ArandgY

Y = randg(A,m,n,p,...) O Y = randg(A,[m,n,p,...]) Devuelve un-por---por-array de valores aleatorios elegidos de distribuciones gamma con parámetros de forma. es un-por--por--por-Array o un escalar.mnp...AAmnp...

produce números pseudo-aleatorios utilizando las funciones y.randgMATLAB®randrandn La secuencia de números generados viene determinada por la configuración del generador de número aleatorio uniforme que subyace y.randrandn Controle ese generador de números aleatorios compartido usando.rng Consulte la documentación para obtener más información.rng

Nota

Para generar números aleatorios gamma y especificar los parámetros de escala y forma, debe llamar.gamrnd

Ejemplos

Ejemplo 1

Genere una matriz de valores 100-by-1 dibujada a partir de una distribución gamma con el parámetro de forma 3.

r = randg(3,100,1);

Ejemplo 2

Genere una matriz de valores 100-by-2 extraída de distribuciones gamma con los parámetros de forma 3 y 2.

A = [ones(100,1)*3,ones(100,1)*2]; r = randg(A,[100,2]);

Ejemplo 3

Para crear una salida reproducible a partir de, restablezca el generador de números aleatorios utilizado por y a su configuración de inicio predeterminada.randgrandrandn De este modo, se generan los mismos números aleatorios que si se reiniciaba MATLAB.randg

rng('default') randg(3,1,5)  ans =      6.9223    4.3369    1.0505    3.2662   11.3269

Ejemplo 4

Guarde la configuración para el generador de números aleatorios utilizado por y, genere 5 valores, restaure la configuración y repita esos valores.randrandnrandg

s = rng; % Obtain the current state of the random stream r1 = randg(10,1,5)  r1 =      9.4719    9.0433   15.0774   14.7763    6.3775  rng(s); % Reset the stream to the previous state r2 = randg(10,1,5)  r2 =      9.4719    9.0433   15.0774   14.7763    6.3775

contiene exactamente los mismos valores que.r2r1

Ejemplo 5

Reinicializar el generador de números aleatorios utilizado por y con una semilla en base a la hora actual. devuelve valores diferentes cada vez que lo hace.randrandnrandg Tenga en cuenta que normalmente no es necesario hacer esto más de una vez por cada sesión de MATLAB.

rng('shuffle'); randg(2,1,5);

Referencias

[1] Marsaglia, G., and W. W. Tsang. “A Simple Method for Generating Gamma Variables.” ACM Transactions on Mathematical Software. Vol. 26, 2000, pp. 363–372.

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Consulte también

Introducido antes de R2006a