Fermat
Functions
Stochastic Processes

Detailed Description

Functions

template<typename Generator , uint32 DIM>
Vector< float, DIM > cugar::brownian_bridge (const uint32 L, const uint32 t, Generator gaussian)
 
template<uint32 DIM, typename Distribution , typename Sampler_type >
Vector< float, DIM > cugar::generate_point (Sampler_type &sampler, Distribution &gaussian)
 
template<uint32 DIM, typename Sequence , typename Distribution >
Vector< float, DIM > cugar::brownian_bridge (Distribution &gaussian, const float sigma, const uint32 N, const uint32 i, const uint32 L, const uint32 t, const Sequence &sequence)
 

Function Documentation

◆ brownian_bridge() [1/2]

template<typename Generator , uint32 DIM>
Vector< float, DIM > cugar::brownian_bridge ( const uint32  L,
const uint32  t,
Generator  gaussian 
)

Evaluate a DIM-dimensional Brownian bridge of length L at time t, using a black-box Gaussian generator.

◆ brownian_bridge() [2/2]

template<uint32 DIM, typename Sequence , typename Distribution >
Vector< float, DIM > cugar::brownian_bridge ( Distribution &  gaussian,
const float  sigma,
const uint32  N,
const uint32  i,
const uint32  L,
const uint32  t,
const Sequence &  sequence 
)

Evaluate the i/N-th DIM-dimensional Brownian bridge of length L at time t. The bridges are created using L copies of a DIM-dimensional Sobol sequence, first permuted and then shifted through Cranley-Patterson rotations. The vector of permutations must contain L permutations of the indices [0,N-1], and the vector of rotations must contain L * (DIM + (DIM & 1)) entries.

◆ generate_point()

template<uint32 DIM, typename Distribution , typename Sampler_type >
Vector< float, DIM > cugar::generate_point ( Sampler_type &  sampler,
Distribution &  gaussian 
)

A simple utility function to generate a DIM-dimensional Gaussian point using the i-th point of a sample sequence, shifted by a Cranley-Patterson rotation.