Riferimenti per la classe Random

Questa classe implemementa un motore di generazione di numeri casuali. Continua...

#include <Random.h>

Diagramma delle classi per Random

Inheritance graph
[legenda]
Diagramma di collaborazione per Random:

Collaboration graph
[legenda]
Lista di tutti i membri.

Membri pubblici

 Random (const float &sr=44100, const bool &seed=true)
 Costruttore.
virtual ~Random ()
 Distruttore.
void setRange (const float &range=1)
 Setta il limite di estrazione dei numeri.
void setSeed (const bool &seed)
 Setta l'innesto del generatore.
void setPolar (const bool &polariti=false)
 Setta il tipo di generatore per outSig ().
void setSigma (const float &sigma)
 Setta l'argomento sigma per la distribuzione gaussiana.
virtual float outSig ()
 Calcola il campione (sample) e ritorna il valore riscalato sul "range".
float rangeRand (const float &min=0, const float &max=1)
 Calcola il campione (sample) e ritorna un valore compreso tra "min e max".
float gaussRand ()
 Generatore randomico a distribuzione Gaussiana.
float uniRand (const float &range)
 Generatore unipolare.
float biRand (const float &range)
 Generatore bipolare.

Attributi protetti

float _range
float _sigma

Descrizione Dettagliata

Questa classe implemementa un motore di generazione di numeri casuali.

by Alessandro Petrolati 2006. www.alessandro-petrolati.com ale_petrolati@alice.it

Definizione alla linea 20 del file Random.h.


Documentazione dei costruttori e dei distruttori

Random::Random ( const float &  sr = 44100,
const bool &  seed = true 
)

Costruttore.

Inizializza l'oggetto con un fattore di campionamento (Sampling Rate). Il valore espresso deve essere supportato dall' hardware device. Il parametro "seed" se "true" (default), inizializza l'oggetto con il valore del tempo corrente, se "false" il generatore assume lo stesso valore, quindi per ogni istanziazione della classe, l'oggetto, ritorna la stessa serie di valori.


Documentazione delle funzioni membro

float Random::biRand ( const float &  range  ) 

Generatore bipolare.

Equivale alla funzione membro outSig() configurata "true" mediante setPolar (true). Ritorna un valore "psuedo-random" assoluto BIPOLARE trà -range e +range.

float Random::gaussRand (  ) 

Generatore randomico a distribuzione Gaussiana.

Gaussian distribution random number generator. Polar (Box-Mueller) method; See Knuth v2, 3rd ed, p122.

virtual float Random::outSig (  )  [virtual]

Calcola il campione (sample) e ritorna il valore riscalato sul "range".

Per ogni chiamata della funzione viene generato un numero casuale, il numero è rimappato sul "range" in funzione del parametro unipolare o bipolare.

Reimplementata in HoldRandom, e InterpRandom.

float Random::rangeRand ( const float &  min = 0,
const float &  max = 1 
)

Calcola il campione (sample) e ritorna un valore compreso tra "min e max".

Per ogni chiamata della funzione viene generato un numero casuale, il numero è uniformemente distribuito tra il valore minimo e massimo.

void Random::setPolar ( const bool &  polariti = false  ) 

Setta il tipo di generatore per outSig ().

Se "false" (default) ritorna un valore "psuedo-random" assoluto UNIPOLARE trà 0 e +range. Se "true" ritorna un valore BIPOLARE, distribuito uniformemente tra -range e il +range.

void Random::setRange ( const float &  range = 1  ) 

Setta il limite di estrazione dei numeri.

Quando unipolare, la soglia numerica spazia da 0 a +range, se bipolare, da -range a +range

void Random::setSigma ( const float &  sigma  ) 

Setta l'argomento sigma per la distribuzione gaussiana.

Quando sigma == 1 ritorna una distribuzione uniforme gaussiana. Polar (Box-Mueller) method; See Knuth v2, 3rd ed, p122

float Random::uniRand ( const float &  range  ) 

Generatore unipolare.

Equivale alla funzione membro outSig() configurata "false" (default) mediante setPolar (false). Ritorna un valore "psuedo-random" assoluto UNIPOLARE trà 0 e +range.


La documentazione per questa classe è stata generata a partire dal seguente file:
Generato il Tue Dec 26 14:42:45 2006 per AudioDrome da  doxygen 1.4.7