MRPT logo

RandomGenerators.h File Reference

#include <mrpt/utils/utils_defs.h>
#include <mrpt/math/CMatrixTemplateNumeric.h>

Go to the source code of this file.


Classes

class  mrpt::random::CRandomGenerator
 A thred-safe pseudo random number generator, based on an internal MT19937 randomness generator. More...
struct  mrpt::random::CRandomGenerator::TMT19937_data
 Data used internally by the MT19937 PRNG algorithm. More...

Namespaces

namespace  mrpt
 This is the global namespace for all Mobile Robot Porgramming Toolkit (MRPT) libraries.
namespace  mrpt::random
 A namespace of pseudo-random numbers genrators of diferent distributions.

Functions

 mrpt::random::MRPT_DECLARE_DEPRECATED_FUNCTION ("** deprecated **: Use mrpt::random::randomGenerator instead", double normalizedGaussian(double *likelihood=NULL))
 Generate a normalized normally distributed pseudo-random number.
 mrpt::random::MRPT_DECLARE_DEPRECATED_FUNCTION ("** deprecated **: Use mrpt::random::randomGenerator instead", double RandomNormal(double mean=0, double std=1))
 Generate a normally distributed pseudo-random number.
 mrpt::random::MRPT_DECLARE_DEPRECATED_FUNCTION ("** deprecated **: Use mrpt::random::randomGenerator instead", uint32_t RandomUniInt())
 Generate a uniformly distributed pseudo-random number using the MT19937 algorithm, in the whole range of 32-bit integers.
 mrpt::random::MRPT_DECLARE_DEPRECATED_FUNCTION ("** deprecated **: Use mrpt::random::randomGenerator instead", double RandomUni(const double min, const double max))
 Generate a uniformly distributed pseudo-random number using the MT19937 algorithm, scaled to the selected range.
template<class MAT >
void mrpt::random::matrixRandomUni (MAT &matrix, const double unif_min=0, const double unif_max=1)
 Fills the given matrix with independent, uniformly distributed samples.
template<class T >
void mrpt::random::vectorRandomUni (std::vector< T > &v_out, const T &unif_min=0, const T &unif_max=1)
 Fills the given matrix with independent, uniformly distributed samples.
template<class MAT >
void mrpt::random::matrixRandomNormal (MAT &matrix, const double mean=0, const double std=1)
 Fills the given matrix with independent, normally distributed samples.
template<class T >
void mrpt::random::vectorRandomNormal (std::vector< T > &v_out, const T &mean=0, const T &std=1)
 Generates a random vector with independent, normally distributed samples.
void mrpt::random::Randomize (const uint32_t seed)
 Randomize the generators.
void mrpt::random::Randomize ()
template<class T >
void mrpt::random::randomPermutation (const std::vector< T > &in_vector, std::vector< T > &out_result)
 Returns a random permutation of a vector: all the elements of the input vector are in the output but at random positions.
template<typename T >
void mrpt::random::randomNormalMultiDimensional (const CMatrixTemplateNumeric< T > &cov, std::vector< T > &out_result)
 Generate multidimensional random samples according to a given covariance matrix.
template<typename T >
void mrpt::random::randomNormalMultiDimensionalMany (const CMatrixTemplateNumeric< T > &cov, size_t desiredSamples, std::vector< std::vector< T > > &ret, std::vector< T > *samplesLikelihoods=NULL)
 Generate a given number of multidimensional random samples according to a given covariance matrix.
template<typename T , size_t N>
void mrpt::random::randomNormalMultiDimensionalMany (const CMatrixFixedNumeric< T, N, N > &cov, size_t desiredSamples, std::vector< std::vector< T > > &ret)
 Generate multidimensional random samples according to a given covariance matrix.
template<typename T , size_t N>
void mrpt::random::randomNormalMultiDimensional (const CMatrixFixedNumeric< T, N, N > &cov, std::vector< T > &out_result)
 Generate multidimensional random samples according to a given covariance matrix.

Variables

MRPTDLLIMPEXP CRandomGenerator mrpt::random::randomGenerator
 A static instance of a CRandomGenerator class, for use in single-thread applications.




Page generated by Doxygen 1.5.9 for MRPT 0.7.1 SVN: at Mon Aug 17 22:27:43 EDT 2009