Estructuras de datos | |
struct | PdsCongruential |
La estructura tipo PdsCongruential. Esta estructura genera una secuencia aleatoria congruential. Esta secuencia está generada mediante el método congruencial mixto para 2^N, N=31. Para usar, incluir pdsrv/pdsrv.h. Más... | |
'defines' | |
#define | PDS_RAND_MAX 2147483648UL |
#define | LN_PDS_RAND_MAX 21.487562597 |
#define | _2LN_PDS_RAND_MAX 42.975125195 |
Funciones | |
PdsCongruential * | pds_congruential_new (void) |
Crea una secuencia aleatoria de tipo PdsCongruential. Más... | |
int | pds_congruential_init (PdsCongruential *X, PdsRvNaturalD x0) |
Inicializa la secuencia aleatoria de tipo PdsCongruential con x0. Más... | |
int | pds_congruential_get_value (PdsCongruential *X, PdsRvNaturalD *x) |
Retorna un número de la secuencia pseudo aleatorio entre [0,PDS_RAND_MAX). Más... | |
int | pds_congruential_get_last_value (PdsCongruential *X, PdsRvNaturalD *x) |
Retorna el último número entregado por la secuencia pseudo aleatorio entre [0,PDS_RAND_MAX). Más... | |
void | pds_congruential_free (PdsCongruential *X) |
Libera la variable secuencia aleatoria de tipo puntero PdsCongruential. Más... | |
void | pds_congruential_destroy (PdsCongruential **X) |
Libera la variable secuencia aleatoria de tipo puntero PdsCongruential, y la carga con NULL. Más... | |
#define PDS_RAND_MAX 2147483648UL |
Máximo número de elementos de las secuencias aleatorias. PDS_RAND_MAX es un número primo o una potencia de un número primo. Este número indica que la secuencia generada tiene un periodo de PDS_RAND_MAX>. Se ha usado el método congruencial multiplicativo 2^N, N=31, para generar la variable aleatoria congruentialemente distribuida.
Definición en la línea 55 del archivo pdscongruential.h.
#define LN_PDS_RAND_MAX 21.487562597 |
Logaritmo natural del máximo número de elementos de las secuencias aleatorias. ln(PDS_RAND_MAX).
Definición en la línea 61 del archivo pdscongruential.h.
#define _2LN_PDS_RAND_MAX 42.975125195 |
Dos veces el logaritmo natural del máximo número de elementos de las secuencias aleatorias. 2 ln(PDS_RAND_MAX).
Definición en la línea 67 del archivo pdscongruential.h.
PdsCongruential * pds_congruential_new | ( | void | ) |
Crea una secuencia aleatoria de tipo PdsCongruential.
int pds_congruential_init | ( | PdsCongruential * | X, |
PdsRvNaturalD | x0 | ||
) |
Inicializa la secuencia aleatoria de tipo PdsCongruential con x0.
[in] | X | Variable secuencia aleatoria congruential. |
[in] | x0 | X{inicial}=x0 % PDS_RAND_MAX. |
int pds_congruential_get_value | ( | PdsCongruential * | X, |
PdsRvNaturalD * | x | ||
) |
Retorna un número de la secuencia pseudo aleatorio entre [0,PDS_RAND_MAX).
[in] | X | Variable secuencia aleatoria congruential. |
[out] | x | x es cargado con un número entre [0,PDS_RAND_MAX). Incluye 0 pero no PDS_RAND_MAX. Si X es NULL entonces retorna 0. |
int pds_congruential_get_last_value | ( | PdsCongruential * | X, |
PdsRvNaturalD * | x | ||
) |
Retorna el último número entregado por la secuencia pseudo aleatorio entre [0,PDS_RAND_MAX).
[in] | X | Variable secuencia aleatoria congruential. |
[out] | x | x es cargado con un número entre [0,PDS_RAND_MAX). Incluye 0 pero no PDS_RAND_MAX. Si X es NULL entonces retorna 0. |
void pds_congruential_free | ( | PdsCongruential * | X | ) |
Libera la variable secuencia aleatoria de tipo puntero PdsCongruential.
[in] | X | La variable secuencia aleatoria a liberar. |
void pds_congruential_destroy | ( | PdsCongruential ** | X | ) |
Libera la variable secuencia aleatoria de tipo puntero PdsCongruential, y la carga con NULL.
[in] | X | La variable secuencia aleatoria a liberar. |