VF_noiseLC | VD_noiseLC | VE_noiseLC |
|
|
Syntax C/C++ | #include <VFstd.h>
void VF_noiseLC( fVector X, ui size, long seed, float Amp, V_RANDOMLCSTATE *state ); |
C++ VecObj | #include <OptiVec.h>
void vector<T>::noiseLC( long seed, const T& Amp, V_RANDOMLCSTATE *state ); |
Pascal/Delphi | uses VFstd;
procedure VF_noiseLC( X:fVector; size:UIntSize; Seed:LongInt; Amp:Single; state:PV_RANDOMLCSTATE ); |
|
CUDA-Funktion C/C++ | #include <cudaVFstd.h>
int cudaVF_noiseLC( fVector X, ui size, long seed, float Amp, V_RANDOMLCSTATE );
|
CUDA-Funktion Pascal/Delphi | uses VFstd;
function cudaVF_noiseLC( X:fVector; size:UIntSize; Seed:LongInt; Amp:Single; state:PV_RANDOMLCSTATE ): IntBool;
|
|
Beschreibung | Weißes Rauschen wird mit der Amplitude Amp generiert, d.h. die erzeugten Werte liegen zwischen -Amp/2 und +Amp/2 (beide Extremwerte eingeschlossen).
Der Parameter seed kann willkürlich gewählt werden, wobei ein Wert ungleich 0 Initialisierung des Generators und Start einer neuen Serie bewirkt, während ein Aufruf mit seed=0 und demselben state zur Fortsetzung der zuletzt generierten Serie führt. Aufrufe mit demselben Wert von seed ergeben identische Resultate; für verschiedene Werte von seed sind die Resultate unkorreliert.
Intern gebrauchen diese Funktionen einen linear-kongruenten (daher der Namensteil "LC") 32-bit-Zufallszahlengenerator nach H.W.Lewis, wobei zusätzliche Schritte (sog. "Bays-Durham shuffle") der Vermeidung sequentieller Korrelationen dienen.
Als vereinfachte Form dieser Funktion steht VF_noise zur Verfügung.
Durch die Beschränkung auf 32-bit ist die Qualität der Zufallszahlen ergibt sich eine gewisse Granularität der erhaltenen Fließkomma-Zahlen. Für höhere Auflösung in den VD_ und VE_ Versionen sollte man VD_randomLC verwenden. |
|
|
|
|