QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Isotropic random walk. More...
#include <isotropicrandomwalk.hpp>
Public Member Functions | |
IsotropicRandomWalk (Engine eng, Distribution dist, Size dim, Array weights=Array(), unsigned long seed=0) | |
template<class InputIterator > | |
void | nextReal (InputIterator first) |
void | setDimension (Size dim) |
void | setDimension (Size dim, const Array &weights) |
void | setDimension (Size dim, const Array &lowerBound, const Array &upperBound) |
Protected Attributes | |
Engine | engine_ |
Distribution | distribution_ |
MersenneTwisterUniformRng | rng_ |
Array | weights_ |
Size | dim_ |
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.
Definition at line 44 of file isotropicrandomwalk.hpp.
IsotropicRandomWalk | ( | Engine | eng, |
Distribution | dist, | ||
Size | dim, | ||
Array | weights = Array() , |
||
unsigned long | seed = 0 |
||
) |
void nextReal | ( | InputIterator | first | ) |
void setDimension | ( | Size | dim | ) |
The isotropic random walk will not adjust its draw to be within the lower and upper bounds, but if the limits are provided, they are used to rescale the sphere so as to make it to an ellipsoid, with different radius in different dimensions.
Definition at line 93 of file isotropicrandomwalk.hpp.
|
protected |
Definition at line 112 of file isotropicrandomwalk.hpp.
|
protected |
Definition at line 113 of file isotropicrandomwalk.hpp.
|
protected |
Definition at line 114 of file isotropicrandomwalk.hpp.
|
protected |
Definition at line 115 of file isotropicrandomwalk.hpp.
|
protected |
Definition at line 116 of file isotropicrandomwalk.hpp.