QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.8
Public Types | Public Member Functions | Protected Attributes | List of all members
IsotropicRandomWalk< Distribution, Engine > Class Template Reference

Isotropic random walk. More...

#include <ql/experimental/math/isotropicrandomwalk.hpp>

Public Types

typedef boost::variate_generator< Engine, Distribution > VariateGenerator
 

Public Member Functions

 IsotropicRandomWalk (Engine eng, Distribution dist, Size dim, const Array &weights=Array(), unsigned long seed=0)
 
template<class InputIterator >
void nextReal (InputIterator first) const
 
void setDimension (Size dim)
 
void setDimension (Size dim, const Array &weights)
 
void setDimension (Size dim, const Array &lowerBound, const Array &upperBound)
 

Protected Attributes

VariateGenerator variate_
 
MersenneTwisterUniformRng rng_
 
Array weights_
 
Size dim_
 

Detailed Description

template<class Distribution, class Engine>
class QuantLib::IsotropicRandomWalk< Distribution, Engine >

Isotropic random walk.

A variate is used to draw from a random element of a probability distribution. The draw corresponds to the radius of a d-dimensional sphere. The position on the surface of the d-dimensional sphere is randomly chosen with all points on the surface having the same probability, i.e. all directions are isotropic and the step is randomly drawn from the given variate.