NEURON
ivocrand.cpp File Reference
#include <../../nrnconf.h>
#include <stdio.h>
#include <stdlib.h>
#include "random1.h"
#include <InterViews/resource.h>
#include "classreg.h"
#include "oc2iv.h"
#include "nrnisaac.h"
#include <OS/list.h>
#include <ocnotify.h>
#include "ocobserv.h"
#include <nrnran123.h>
#include <RNG.h>
#include <ACG.h>
#include <MLCG.h>
#include <Random.h>
#include <Poisson.h>
#include <Normal.h>
#include <Uniform.h>
#include <Binomial.h>
#include <DiscUnif.h>
#include <Erlang.h>
#include <Geom.h>
#include <LogNorm.h>
#include <NegExp.h>
#include <RndInt.h>
#include <HypGeom.h>
#include <Weibull.h>
#include <mcran4.h>

Go to the source code of this file.

Classes

class  RandomPlay
 
class  NrnRandom123
 
class  MCellRan4
 
class  Isaac64
 

Macros

#define dmaxuint   4294967295.
 

Functions

void nrn_random_play ()
 
 declarePtrList (RandomPlayList, RandomPlay) implementPtrList(RandomPlayList
 
double nrn_random_pick (Rand *r)
 
void nrn_random_reset (Rand *r)
 
Randnrn_random_arg (int)
 
long nrn_get_random_sequence (Rand *r)
 
void nrn_set_random_sequence (Rand *r, long seq)
 
int nrn_random_isran123 (Rand *r, uint32_t *id1, uint32_t *id2, uint32_t *id3)
 
int nrn_random123_setseq (Rand *r, uint32_t seq, char which)
 
int nrn_random123_getseq (Rand *r, uint32_t *seq, char *which)
 
static voidr_cons (Object *obj)
 
static void r_destruct (void *r)
 
static double r_ACG (void *r)
 
static double r_MLCG (void *r)
 
static double r_MCellRan4 (void *r)
 
static double r_nrnran123 (void *r)
 
static double r_ran123_globalindex (void *r)
 
static double r_sequence (void *r)
 
static double r_Isaac64 (void *r)
 
static double r_repick (void *r)
 
static double r_uniform (void *r)
 
static double r_discunif (void *r)
 
static double r_normal (void *r)
 
static double r_lognormal (void *r)
 
static double r_poisson (void *r)
 
static double r_binomial (void *r)
 
static double r_geometric (void *r)
 
static double r_hypergeo (void *r)
 
static double r_negexp (void *r)
 
static double r_erlang (void *r)
 
static double r_weibull (void *r)
 
static double r_play (void *r)
 
void Random_reg ()
 

Variables

static RandomPlay RandomPlayList * random_play_list_
 
static Member_func r_members []
 

Macro Definition Documentation

◆ dmaxuint

#define dmaxuint   4294967295.

Definition at line 41 of file ivocrand.cpp.

Function Documentation

◆ declarePtrList()

declarePtrList ( RandomPlayList  ,
RandomPlay   
)

◆ nrn_get_random_sequence()

long nrn_get_random_sequence ( Rand r)

Definition at line 299 of file ivocrand.cpp.

◆ nrn_random123_getseq()

int nrn_random123_getseq ( Rand r,
uint32_t seq,
char *  which 
)

Definition at line 376 of file ivocrand.cpp.

◆ nrn_random123_setseq()

int nrn_random123_setseq ( Rand r,
uint32_t  seq,
char  which 
)

Definition at line 370 of file ivocrand.cpp.

◆ nrn_random_arg()

Rand * nrn_random_arg ( int  i)

Definition at line 419 of file ivocrand.cpp.

◆ nrn_random_isran123()

int nrn_random_isran123 ( Rand r,
uint32_t id1,
uint32_t id2,
uint32_t id3 
)

Definition at line 311 of file ivocrand.cpp.

◆ nrn_random_pick()

double nrn_random_pick ( Rand r)

Definition at line 405 of file ivocrand.cpp.

◆ nrn_random_play()

void nrn_random_play ( )

Definition at line 598 of file ivocrand.cpp.

◆ nrn_random_reset()

void nrn_random_reset ( Rand r)

Definition at line 413 of file ivocrand.cpp.

◆ nrn_set_random_sequence()

void nrn_set_random_sequence ( Rand r,
long  seq 
)

Definition at line 305 of file ivocrand.cpp.

◆ r_ACG()

static double r_ACG ( void r)
static

Definition at line 244 of file ivocrand.cpp.

◆ r_binomial()

static double r_binomial ( void r)
static

Definition at line 505 of file ivocrand.cpp.

◆ r_cons()

static void* r_cons ( Object obj)
static

Definition at line 218 of file ivocrand.cpp.

◆ r_destruct()

static void r_destruct ( void r)
static

Definition at line 231 of file ivocrand.cpp.

◆ r_discunif()

static double r_discunif ( void r)
static

Definition at line 444 of file ivocrand.cpp.

◆ r_erlang()

static double r_erlang ( void r)
static

Definition at line 568 of file ivocrand.cpp.

◆ r_geometric()

static double r_geometric ( void r)
static

Definition at line 523 of file ivocrand.cpp.

◆ r_hypergeo()

static double r_hypergeo ( void r)
static

Definition at line 538 of file ivocrand.cpp.

◆ r_Isaac64()

static double r_Isaac64 ( void r)
static

Definition at line 382 of file ivocrand.cpp.

◆ r_lognormal()

static double r_lognormal ( void r)
static

Definition at line 474 of file ivocrand.cpp.

◆ r_MCellRan4()

static double r_MCellRan4 ( void r)
static

Definition at line 283 of file ivocrand.cpp.

◆ r_MLCG()

static double r_MLCG ( void r)
static

Definition at line 266 of file ivocrand.cpp.

◆ r_negexp()

static double r_negexp ( void r)
static

Definition at line 553 of file ivocrand.cpp.

◆ r_normal()

static double r_normal ( void r)
static

Definition at line 459 of file ivocrand.cpp.

◆ r_nrnran123()

static double r_nrnran123 ( void r)
static

Definition at line 320 of file ivocrand.cpp.

◆ r_play()

static double r_play ( void r)
static

Definition at line 593 of file ivocrand.cpp.

◆ r_poisson()

static double r_poisson ( void r)
static

Definition at line 489 of file ivocrand.cpp.

◆ r_ran123_globalindex()

static double r_ran123_globalindex ( void r)
static

Definition at line 336 of file ivocrand.cpp.

◆ r_repick()

static double r_repick ( void r)
static

Definition at line 399 of file ivocrand.cpp.

◆ r_sequence()

static double r_sequence ( void r)
static

Definition at line 344 of file ivocrand.cpp.

◆ r_uniform()

static double r_uniform ( void r)
static

Definition at line 430 of file ivocrand.cpp.

◆ r_weibull()

static double r_weibull ( void r)
static

Definition at line 583 of file ivocrand.cpp.

◆ Random_reg()

void Random_reg ( )

Definition at line 630 of file ivocrand.cpp.

Variable Documentation

◆ r_members

Member_func r_members[]
static
Initial value:
= {
"ACG", r_ACG,
"MLCG", r_MLCG,
"Isaac64", r_Isaac64,
"MCellRan4", r_MCellRan4,
"Random123", r_nrnran123,
"Random123_globalindex", r_ran123_globalindex,
"seq", r_sequence,
"repick", r_repick,
"uniform", r_uniform,
"discunif", r_discunif,
"normal", r_normal,
"lognormal", r_lognormal,
"binomial", r_binomial,
"poisson", r_poisson,
"geometric", r_geometric,
"hypergeo", r_hypergeo,
"negexp", r_negexp,
"erlang", r_erlang,
"weibull", r_weibull,
"play", r_play,
0, 0
}
static double r_hypergeo(void *r)
Definition: ivocrand.cpp:538
static double r_normal(void *r)
Definition: ivocrand.cpp:459
static double r_sequence(void *r)
Definition: ivocrand.cpp:344
static double r_ACG(void *r)
Definition: ivocrand.cpp:244
static double r_play(void *r)
Definition: ivocrand.cpp:593
static double r_repick(void *r)
Definition: ivocrand.cpp:399
static double r_negexp(void *r)
Definition: ivocrand.cpp:553
static double r_weibull(void *r)
Definition: ivocrand.cpp:583
static double r_nrnran123(void *r)
Definition: ivocrand.cpp:320
static double r_lognormal(void *r)
Definition: ivocrand.cpp:474
static double r_MCellRan4(void *r)
Definition: ivocrand.cpp:283
static double r_binomial(void *r)
Definition: ivocrand.cpp:505
static double r_uniform(void *r)
Definition: ivocrand.cpp:430
static double r_ran123_globalindex(void *r)
Definition: ivocrand.cpp:336
static double r_erlang(void *r)
Definition: ivocrand.cpp:568
static double r_MLCG(void *r)
Definition: ivocrand.cpp:266
static double r_Isaac64(void *r)
Definition: ivocrand.cpp:382
static double r_discunif(void *r)
Definition: ivocrand.cpp:444
static double r_poisson(void *r)
Definition: ivocrand.cpp:489
static double r_geometric(void *r)
Definition: ivocrand.cpp:523

Definition at line 606 of file ivocrand.cpp.

◆ random_play_list_

RandomPlay RandomPlayList* random_play_list_
static

Definition at line 59 of file ivocrand.cpp.