Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

SimSeqs.h File Reference

#include "BaseDefinitions.h"

Include dependency graph for SimSeqs.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Compounds

class  LDSqAfflerbach
 Afflerbach is a special Pseudorandomnumber generator that uses a linear congruence operator (quite fast). More...

class  LDSqAtanassov
 This class implements Atanassov's modified Halton sequence. More...

class  LDSqBase
 This is the base class for all the simulation sequences including Monte Carlo (just random numbers). More...

class  LDSqFaure
 Implementation of the Faure low discrepancy sequence, use a linear field c to store the pascal matrix and multiply it on the previous coefficients by matrix-multiplication to get the new coefficients. More...

class  LDSqHalton
 This class implements the Halton Sequence in the bases stored in b passed to the constructor. More...

class  LDSqHammersley
 This class implements the Hammersley Set by creathing the Halton-sequence in dim-1 dimensions and adding the additional dimension of the form k/N. More...

class  LDSqMonteCarlo
 This class implements pseudo-random numbers. More...

class  LDSqNAlpha
 This class implements the N *Alpha Sequence. More...

class  LDSqNetz
 Implementation of the (0,s) nets, according to an algorithm given by Lecot for Niederreiter's construction using hyperderivatives of polynomials. More...

class  LDSqNiederreiter
 Implementation of (0,s) nets, according to an algorithm given by Niederreiter using monic polynomials. More...

class  LDSqSobol
 This class implements the Sobol Sequence, direction numbers are only available for 51 dimensions, so we can only provide that many dimensions. More...

class  longpoly
 This helper class describes polynomials with long coefficients. More...

struct  polynom

Defines

#define USEMC   1
#define USEHALTON   2
#define USENET   4
#define USENIEDER   8
#define USESOBOL   16
#define USEFAURE   32
#define USEATANASSOV   64
#define USEHAMMERSLEY   128
#define USENALPHA   256
#define USEMAX   USENALPHA
#define GENAU   1E-9
#define BGENAU   29
#define MAXLONG   2147483647
#define MAXPREC   30
#define primefile   "primes.dat"
#define NAlphaOnes   .6180339887498948482045969343656391177203091798058
#define NAlphaTwos   .4142135623730950488016887242096980785696718753769
#define NAlphaThrees   .3027756377319946465596106337352479731256482869226
#define NAlphaFours   .2360679774997896964091736687312762354406183596115
#define maxanz   310
#define max_nieder   900000000
#define maxdim   310
#define MAX_I_NORMAL   1025
#define NTAB   32
#define MC1   1
#define MC2   2
#define MC3   3
#define konst   1073741824

Typedefs

typedef double double_vektor [maxanz]
typedef int int_vektor [maxanz]
typedef polynom polarr [maxdim+4]

Functions

long ReadPrimes (long *primes, long m)
long NextPrime (long current)
long* InitGenericPrimes (long dm)
long* InitGenericInts (long dm)


Define Documentation

#define BGENAU   29
 

#define GENAU   1E-9
 

#define MAXLONG   2147483647
 

#define MAXPREC   30
 

#define MAX_I_NORMAL   1025
 

#define MC1   1
 

These gives the Monte Carlo Method (just pseudo-random numbers), defines constant for the LDSqMonteCarlo class.

#define MC2   2
 

#define MC3   3
 

#define NAlphaFours   .2360679774997896964091736687312762354406183596115
 

#define NAlphaOnes   .6180339887498948482045969343656391177203091798058
 

some numbes for the nAlpha sequence: NAlphaOnes is [0;1,1,1,1,1,1,1,1....] NAlphaTwos is [0;2,2,2,2,2,2,2,2....] NAlphaThrees is [0;3,3,3,3,3,3,3,3....] NAlphaFours is [0;4,4,4,4,4,4,4,4....].

#define NAlphaThrees   .3027756377319946465596106337352479731256482869226
 

#define NAlphaTwos   .4142135623730950488016887242096980785696718753769
 

#define NTAB   32
 

#define USEATANASSOV   64
 

#define USEFAURE   32
 

#define USEHALTON   2
 

#define USEHAMMERSLEY   128
 

#define USEMAX   USENALPHA
 

#define USEMC   1
 

These constants define bitwise masks for variables that describe which sequence to use for your calculation.

e.g. 107 means MC, Halton, Niederreiter, Faure and Atanassov

#define USENALPHA   256
 

#define USENET   4
 

#define USENIEDER   8
 

#define USESOBOL   16
 

#define konst   1073741824
 

#define max_nieder   900000000
 

#define maxanz   310
 

#define maxdim   310
 

#define primefile   "primes.dat"
 


Typedef Documentation

typedef double double_vektor
 

typedef int int_vektor
 

typedef polynom polarr
 


Function Documentation

long* InitGenericInts ( long dm )
 

returns a field of length dm filled with the smalles Integer numbers.

Use this e.g. as bases for the Niederreiter sequence in a base p. The long* field has to be delete[]'ed manually.

long* InitGenericPrimes ( long dm )
 

returns a field of length dm filled with the smalles prime numbers.

Use this e.g. as bases for the Halton sequence. The long* field has to be delete[]'ed manually.

long NextPrime ( long current )
 

Returns the smalles prime larger than or equal to "current".

long ReadPrimes ( long * primes,
long m )
 

This function reads in the first m primes from the file "primes.dat" in the working directory and stores them to primes, which must be large enough to hold all m primes.


Generated at Wed Jun 20 19:47:50 2001 for LDSequences by doxygen1.2.7 written by Dimitri van Heesch, © 1997-2001