QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
Burley2020SobolRsg Class Reference

Scrambled sobol sequence according to Burley, 2020. More...

#include <burley2020sobolrsg.hpp>

+ Collaboration diagram for Burley2020SobolRsg:

Public Types

typedef Sample< std::vector< Real > > sample_type
 

Public Member Functions

 Burley2020SobolRsg (Size dimensionality, unsigned long seed=42, SobolRsg::DirectionIntegers directionIntegers=SobolRsg::Jaeckel, unsigned long scrambleSeed=43)
 
const std::vector< std::uint32_t > & skipTo (std::uint32_t n) const
 
const std::vector< std::uint32_t > & nextInt32Sequence () const
 
const SobolRsg::sample_typenextSequence () const
 
const sample_typelastSequence () const
 
Size dimension () const
 

Private Member Functions

void reset () const
 

Private Attributes

Size dimensionality_
 
unsigned long seed_
 
SobolRsg::DirectionIntegers directionIntegers_
 
ext::shared_ptr< SobolRsgsobolRsg_
 
std::vector< std::uint32_t > integerSequence_
 
sample_type sequence_
 
std::uint32_t nextSequenceCounter_
 
std::vector< std::uint32_t > group4Seeds_
 

Detailed Description

Scrambled sobol sequence according to Burley, 2020.

Reference: Brent Burley: Practical Hash-based Owen Scrambling, Journal of Computer Graphics Techniques, Vol. 9, No. 4, 2020

Definition at line 35 of file burley2020sobolrsg.hpp.

Member Typedef Documentation

◆ sample_type

typedef Sample<std::vector<Real> > sample_type

Definition at line 37 of file burley2020sobolrsg.hpp.

Constructor & Destructor Documentation

◆ Burley2020SobolRsg()

Burley2020SobolRsg ( Size  dimensionality,
unsigned long  seed = 42,
SobolRsg::DirectionIntegers  directionIntegers = SobolRsg::Jaeckel,
unsigned long  scrambleSeed = 43 
)
explicit

Definition at line 26 of file burley2020sobolrsg.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ skipTo()

const std::vector< std::uint32_t > & skipTo ( std::uint32_t  n) const

Definition at line 45 of file burley2020sobolrsg.cpp.

+ Here is the call graph for this function:

◆ nextInt32Sequence()

const std::vector< std::uint32_t > & nextInt32Sequence ( ) const

Definition at line 127 of file burley2020sobolrsg.cpp.

+ Here is the caller graph for this function:

◆ nextSequence()

const SobolRsg::sample_type & nextSequence ( ) const

Definition at line 145 of file burley2020sobolrsg.cpp.

+ Here is the call graph for this function:

◆ lastSequence()

const sample_type & lastSequence ( ) const

Definition at line 46 of file burley2020sobolrsg.hpp.

◆ dimension()

Size dimension ( ) const

Definition at line 47 of file burley2020sobolrsg.hpp.

◆ reset()

void reset ( ) const
private

Definition at line 40 of file burley2020sobolrsg.cpp.

+ Here is the caller graph for this function:

Member Data Documentation

◆ dimensionality_

Size dimensionality_
private

Definition at line 51 of file burley2020sobolrsg.hpp.

◆ seed_

unsigned long seed_
private

Definition at line 52 of file burley2020sobolrsg.hpp.

◆ directionIntegers_

SobolRsg::DirectionIntegers directionIntegers_
private

Definition at line 53 of file burley2020sobolrsg.hpp.

◆ sobolRsg_

ext::shared_ptr<SobolRsg> sobolRsg_
mutableprivate

Definition at line 54 of file burley2020sobolrsg.hpp.

◆ integerSequence_

std::vector<std::uint32_t> integerSequence_
mutableprivate

Definition at line 55 of file burley2020sobolrsg.hpp.

◆ sequence_

sample_type sequence_
mutableprivate

Definition at line 56 of file burley2020sobolrsg.hpp.

◆ nextSequenceCounter_

std::uint32_t nextSequenceCounter_
mutableprivate

Definition at line 57 of file burley2020sobolrsg.hpp.

◆ group4Seeds_

std::vector<std::uint32_t> group4Seeds_
mutableprivate

Definition at line 58 of file burley2020sobolrsg.hpp.