EigenRand  0.2.0
Eigen::Rand Namespace Reference

namespace for EigenRand More...

Classes

class  MersenneTwister
 A vectorized version of Mersenne Twister Engine. More...
 
class  PacketRandomEngineAdaptor
 Scalar adaptor for random engines which generates packet. More...
 

Typedefs

template<typename Derived , typename Urng >
using RandBitsType = CwiseNullaryOp< internal::scalar_randbits_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using UniformIntType = CwiseNullaryOp< internal::scalar_uniform_int_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using BalancedType = CwiseNullaryOp< internal::scalar_balanced_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using UniformRealType = CwiseNullaryOp< internal::scalar_uniform_real_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using NormalType = CwiseNullaryOp< internal::scalar_norm_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using Normal2Type = CwiseNullaryOp< internal::scalar_norm_dist2_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using LognormalType = CwiseNullaryOp< internal::scalar_lognorm_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using StudentTType = CwiseNullaryOp< internal::scalar_student_t_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using ExponentialType = CwiseNullaryOp< internal::scalar_exp_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using GammaType = CwiseNullaryOp< internal::scalar_gamma_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using WeibullType = CwiseNullaryOp< internal::scalar_weibull_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using ExtremeValueType = CwiseNullaryOp< internal::scalar_extreme_value_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using ChiSquaredType = CwiseNullaryOp< internal::scalar_chi_squared_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using CauchyType = CwiseNullaryOp< internal::scalar_cauchy_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using FisherFType = CwiseNullaryOp< internal::scalar_fisher_f_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using BetaType = CwiseNullaryOp< internal::scalar_beta_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using DiscreteFType = CwiseNullaryOp< internal::scalar_discrete_dist_op< typename Derived::Scalar, Urng, float >, const Derived >
 
template<typename Derived , typename Urng >
using DiscreteDType = CwiseNullaryOp< internal::scalar_discrete_dist_op< typename Derived::Scalar, Urng, double >, const Derived >
 
template<typename Derived , typename Urng >
using DiscreteType = CwiseNullaryOp< internal::scalar_discrete_dist_op< typename Derived::Scalar, Urng, int32_t >, const Derived >
 
template<typename Derived , typename Urng >
using PoissonType = CwiseNullaryOp< internal::scalar_poisson_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using BinomialType = CwiseNullaryOp< internal::scalar_binomial_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using NegativeBinomialType = CwiseNullaryOp< internal::scalar_negative_binomial_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Derived , typename Urng >
using GeometricType = CwiseNullaryOp< internal::scalar_geometric_dist_op< typename Derived::Scalar, Urng >, const Derived >
 
template<typename Packet >
using Pmt19937_64 = MersenneTwister< Packet, 312, 156, 31, 0xb5026f5aa96619e9, 29, 0x5555555555555555, 17, 0x71d67fffeda60000, 37, 0xfff7eee000000000, 43, 6364136223846793005 >
 Alias of Eigen::Rand::MersenneTwister, equivalent to std::mt19937_64. More...
 
template<typename UIntType , typename Rng >
using UniversalRandomEngine = typename std::conditional< IsPacketRandomEngine< typename std::remove_reference< Rng >::type >::value, PacketRandomEngineAdaptor< UIntType, typename std::remove_reference< Rng >::type >, typename std::conditional< IsScalarRandomEngine< typename std::remove_reference< Rng >::type >::value, RandomEngineWrapper< typename std::remove_reference< Rng >::type >, void >::type >::type
 
using Vmt19937_64 = std::mt19937_64
 same as std::mt19937_64 when EIGEN_DONT_VECTORIZE, Pmt19937_64<internal::Packet4i> when SSE2 enabled and Pmt19937_64<internal::Packet8i> when AVX2 enabled More...
 

Enumerations

enum  RandomEngineType { none, scalar, packet }
 

Functions

template<typename Derived , typename Urng >
const RandBitsType< Derived, Urng > randBits (Index rows, Index cols, Urng &&urng)
 generates integers with random bits More...
 
template<typename Derived , typename Urng >
const RandBitsType< Derived, Urng > randBitsLike (Derived &o, Urng &&urng)
 generates integers with random bits More...
 
template<typename Derived , typename Urng >
const UniformIntType< Derived, Urng > uniformInt (Index rows, Index cols, Urng &&urng, typename Derived::Scalar min, typename Derived::Scalar max)
 generates integers with a given range [min, max] More...
 
template<typename Derived , typename Urng >
const UniformIntType< Derived, Urng > uniformIntLike (Derived &o, Urng &&urng, typename Derived::Scalar min, typename Derived::Scalar max)
 generates integers with a given range [min, max] More...
 
template<typename Derived , typename Urng >
const BalancedType< Derived, Urng > balanced (Index rows, Index cols, Urng &&urng)
 generates reals in a range [-1, 1] More...
 
template<typename Derived , typename Urng >
const BalancedType< Derived, Urng > balancedLike (const Derived &o, Urng &&urng)
 generates reals in a range [-1, 1] More...
 
template<typename Derived , typename Urng >
const UniformRealType< Derived, Urng > uniformReal (Index rows, Index cols, Urng &&urng)
 generates reals in a range [0, 1) More...
 
template<typename Derived , typename Urng >
const UniformRealType< Derived, Urng > uniformRealLike (Derived &o, Urng &&urng)
 generates reals in a range [0, 1) More...
 
template<typename Derived , typename Urng >
const NormalType< Derived, Urng > normal (Index rows, Index cols, Urng &&urng)
 generates reals on a standard normal distribution (mean = 0, stdev=1) More...
 
template<typename Derived , typename Urng >
const NormalType< Derived, Urng > normalLike (Derived &o, Urng &&urng)
 generates reals on a standard normal distribution (mean = 0, stdev=1) More...
 
template<typename Derived , typename Urng >
const Normal2Type< Derived, Urng > normal (Index rows, Index cols, Urng &&urng, typename Derived::Scalar mean, typename Derived::Scalar stdev=1)
 generates reals on a normal distribution with arbitrary mean and stdev. More...
 
template<typename Derived , typename Urng >
const Normal2Type< Derived, Urng > normalLike (Derived &o, Urng &&urng, typename Derived::Scalar mean, typename Derived::Scalar stdev=1)
 generates reals on a normal distribution with arbitrary mean and stdev. More...
 
template<typename Derived , typename Urng >
const LognormalType< Derived, Urng > lognormal (Index rows, Index cols, Urng &&urng, typename Derived::Scalar mean=0, typename Derived::Scalar stdev=1)
 generates reals on a lognormal distribution with arbitrary mean and stdev. More...
 
template<typename Derived , typename Urng >
const LognormalType< Derived, Urng > lognormalLike (Derived &o, Urng &&urng, typename Derived::Scalar mean=0, typename Derived::Scalar stdev=1)
 generates reals on a lognormal distribution with arbitrary mean and stdev. More...
 
template<typename Derived , typename Urng >
const StudentTType< Derived, Urng > studentT (Index rows, Index cols, Urng &&urng, typename Derived::Scalar n=1)
 generates reals on the Student's t distribution with arbirtrary degress of freedom. More...
 
template<typename Derived , typename Urng >
const StudentTType< Derived, Urng > studentTLike (Derived &o, Urng &&urng, typename Derived::Scalar n=1)
 generates reals on the Student's t distribution with arbirtrary degress of freedom. More...
 
template<typename Derived , typename Urng >
const ExponentialType< Derived, Urng > exponential (Index rows, Index cols, Urng &&urng, typename Derived::Scalar lambda=1)
 generates reals on an exponential distribution with arbitrary scale parameter. More...
 
template<typename Derived , typename Urng >
const ExponentialType< Derived, Urng > exponentialLike (Derived &o, Urng &&urng, typename Derived::Scalar lambda=1)
 generates reals on an exponential distribution with arbitrary scale parameter. More...
 
template<typename Derived , typename Urng >
const GammaType< Derived, Urng > gamma (Index rows, Index cols, Urng &&urng, typename Derived::Scalar alpha=1, typename Derived::Scalar beta=1)
 generates reals on a gamma distribution with arbitrary shape and scale parameter. More...
 
template<typename Derived , typename Urng >
const GammaType< Derived, Urng > gammaLike (Derived &o, Urng &&urng, typename Derived::Scalar alpha=1, typename Derived::Scalar beta=1)
 generates reals on a gamma distribution with arbitrary shape and scale parameter. More...
 
template<typename Derived , typename Urng >
const WeibullType< Derived, Urng > weibull (Index rows, Index cols, Urng &&urng, typename Derived::Scalar a=1, typename Derived::Scalar b=1)
 generates reals on a Weibull distribution with arbitrary shape and scale parameter. More...
 
template<typename Derived , typename Urng >
const WeibullType< Derived, Urng > weibullLike (Derived &o, Urng &&urng, typename Derived::Scalar a=1, typename Derived::Scalar b=1)
 generates reals on a Weibull distribution with arbitrary shape and scale parameter. More...
 
template<typename Derived , typename Urng >
const ExtremeValueType< Derived, Urng > extremeValue (Index rows, Index cols, Urng &&urng, typename Derived::Scalar a=0, typename Derived::Scalar b=1)
 generates reals on an extreme value distribution (a.k.a Gumbel Type I, log-Weibull, Fisher-Tippett Type I) with arbitrary shape and scale parameter. More...
 
template<typename Derived , typename Urng >
const ExtremeValueType< Derived, Urng > extremeValueLike (Derived &o, Urng &&urng, typename Derived::Scalar a=0, typename Derived::Scalar b=1)
 generates reals on an extreme value distribution (a.k.a Gumbel Type I, log-Weibull, Fisher-Tippett Type I) with arbitrary shape and scale parameter. More...
 
template<typename Derived , typename Urng >
const ChiSquaredType< Derived, Urng > chiSquared (Index rows, Index cols, Urng &&urng, typename Derived::Scalar n=1)
 generates reals on the Chi-squared distribution with arbitrary degrees of freedom. More...
 
template<typename Derived , typename Urng >
const ChiSquaredType< Derived, Urng > chiSquaredLike (Derived &o, Urng &&urng, typename Derived::Scalar n=1)
 generates reals on the Chi-squared distribution with arbitrary degrees of freedom. More...
 
template<typename Derived , typename Urng >
const CauchyType< Derived, Urng > cauchy (Index rows, Index cols, Urng &&urng, typename Derived::Scalar a=0, typename Derived::Scalar b=1)
 generates reals on the Cauchy distribution. More...
 
template<typename Derived , typename Urng >
const CauchyType< Derived, Urng > cauchyLike (Derived &o, Urng &&urng, typename Derived::Scalar a=0, typename Derived::Scalar b=1)
 generates reals on the Cauchy distribution. More...
 
template<typename Derived , typename Urng >
const FisherFType< Derived, Urng > fisherF (Index rows, Index cols, Urng &&urng, typename Derived::Scalar m=1, typename Derived::Scalar n=1)
 generates reals on the Fisher's F distribution. More...
 
template<typename Derived , typename Urng >
const FisherFType< Derived, Urng > fisherFLike (Derived &o, Urng &&urng, typename Derived::Scalar m=1, typename Derived::Scalar n=1)
 generates reals on the Fisher's F distribution. More...
 
template<typename Derived , typename Urng >
const BetaType< Derived, Urng > beta (Index rows, Index cols, Urng &&urng, typename Derived::Scalar a=1, typename Derived::Scalar b=1)
 generates reals on the beta distribution. More...
 
template<typename Derived , typename Urng >
const BetaType< Derived, Urng > betaLike (Derived &o, Urng &&urng, typename Derived::Scalar a=1, typename Derived::Scalar b=1)
 generates reals on the beta distribution. More...
 
template<typename Derived , typename Urng , typename RealIter >
const DiscreteFType< Derived, Urng > discreteF (Index rows, Index cols, Urng &&urng, RealIter first, RealIter last)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is float(23bit precision). More...
 
template<typename Derived , typename Urng , typename RealIter >
const DiscreteFType< Derived, Urng > discreteFLike (Derived &o, Urng &&urng, RealIter first, RealIter last)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is float(23bit precision). More...
 
template<typename Derived , typename Urng , typename Real >
const DiscreteFType< Derived, Urng > discreteF (Index rows, Index cols, Urng &&urng, const std::initializer_list< Real > &il)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is float(23bit precision). More...
 
template<typename Derived , typename Urng , typename Real >
const DiscreteFType< Derived, Urng > discreteFLike (Derived &o, Urng &&urng, const std::initializer_list< Real > &il)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is float(23bit precision). More...
 
template<typename Derived , typename Urng , typename RealIter >
const DiscreteDType< Derived, Urng > discreteD (Index rows, Index cols, Urng &&urng, RealIter first, RealIter last)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is double(52bit precision). More...
 
template<typename Derived , typename Urng , typename RealIter >
const DiscreteDType< Derived, Urng > discreteDLike (Derived &o, Urng &&urng, RealIter first, RealIter last)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is double(52bit precision). More...
 
template<typename Derived , typename Urng , typename Real >
const DiscreteDType< Derived, Urng > discreteD (Index rows, Index cols, Urng &&urng, const std::initializer_list< Real > &il)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is double(52bit precision). More...
 
template<typename Derived , typename Urng , typename Real >
const DiscreteDType< Derived, Urng > discreteDLike (Derived &o, Urng &&urng, const std::initializer_list< Real > &il)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is double(52bit precision). More...
 
template<typename Derived , typename Urng , typename RealIter >
const DiscreteType< Derived, Urng > discrete (Index rows, Index cols, Urng &&urng, RealIter first, RealIter last)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is int32(32bit precision). More...
 
template<typename Derived , typename Urng , typename RealIter >
const DiscreteType< Derived, Urng > discreteLike (Derived &o, Urng &&urng, RealIter first, RealIter last)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is int32(32bit precision). More...
 
template<typename Derived , typename Urng , typename Real >
const DiscreteType< Derived, Urng > discrete (Index rows, Index cols, Urng &&urng, const std::initializer_list< Real > &il)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is int32(32bit precision). More...
 
template<typename Derived , typename Urng , typename Real >
const DiscreteType< Derived, Urng > discreteLike (Derived &o, Urng &&urng, const std::initializer_list< Real > &il)
 generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is int32(32bit precision). More...
 
template<typename Derived , typename Urng >
const PoissonType< Derived, Urng > poisson (Index rows, Index cols, Urng &&urng, double mean=1)
 generates reals on the Poisson distribution. More...
 
template<typename Derived , typename Urng >
const PoissonType< Derived, Urng > poissonLike (Derived &o, Urng &&urng, double mean=1)
 generates reals on the Poisson distribution. More...
 
template<typename Derived , typename Urng >
const BinomialType< Derived, Urng > binomial (Index rows, Index cols, Urng &&urng, typename Derived::Scalar trials=1, double p=0.5)
 generates reals on the binomial distribution. More...
 
template<typename Derived , typename Urng >
const BinomialType< Derived, Urng > binomialLike (Derived &o, Urng &&urng, typename Derived::Scalar trials=1, double p=0.5)
 generates reals on the binomial distribution. More...
 
template<typename Derived , typename Urng >
const NegativeBinomialType< Derived, Urng > negativeBinomial (Index rows, Index cols, Urng &&urng, typename Derived::Scalar trials=1, double p=0.5)
 generates reals on the negative binomial distribution. More...
 
template<typename Derived , typename Urng >
const NegativeBinomialType< Derived, Urng > negativeBinomialLike (Derived &o, Urng &&urng, typename Derived::Scalar trials=1, double p=0.5)
 generates reals on the negative binomial distribution. More...
 
template<typename Derived , typename Urng >
const GeometricType< Derived, Urng > geometric (Index rows, Index cols, Urng &&urng, double p=0.5)
 generates reals on the geometric distribution. More...
 
template<typename Derived , typename Urng >
const GeometricType< Derived, Urng > geometricLike (Derived &o, Urng &&urng, double p=0.5)
 generates reals on the geometric distribution. More...
 
template<typename UIntType , typename Rng >
UniversalRandomEngine< UIntType, Rng > makeUniversalRng (Rng &&rng)
 Helper function for making a PacketRandomEngineAdaptor. More...
 

Detailed Description

namespace for EigenRand

Typedef Documentation

◆ Pmt19937_64

template<typename Packet >
using Eigen::Rand::Pmt19937_64 = typedef MersenneTwister<Packet, 312, 156, 31, 0xb5026f5aa96619e9, 29, 0x5555555555555555, 17, 0x71d67fffeda60000, 37, 0xfff7eee000000000, 43, 6364136223846793005>

Alias of Eigen::Rand::MersenneTwister, equivalent to std::mt19937_64.

Template Parameters
Packet

◆ Vmt19937_64

using Eigen::Rand::Vmt19937_64 = typedef std::mt19937_64

same as std::mt19937_64 when EIGEN_DONT_VECTORIZE, Pmt19937_64<internal::Packet4i> when SSE2 enabled and Pmt19937_64<internal::Packet8i> when AVX2 enabled

Function Documentation

◆ balanced()

template<typename Derived , typename Urng >
const BalancedType<Derived, Urng> Eigen::Rand::balanced ( Index  rows,
Index  cols,
Urng &&  urng 
)
inline

generates reals in a range [-1, 1]

Template Parameters
Deriveda type of Eigen::DenseBase
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
Returns
a random matrix expression with a shape (rows, cols)

◆ balancedLike()

template<typename Derived , typename Urng >
const BalancedType<Derived, Urng> Eigen::Rand::balancedLike ( const Derived &  o,
Urng &&  urng 
)
inline

generates reals in a range [-1, 1]

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
Returns
a random matrix expression of the same shape as o

◆ beta()

template<typename Derived , typename Urng >
const BetaType<Derived, Urng> Eigen::Rand::beta ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  a = 1,
typename Derived::Scalar  b = 1 
)
inline

generates reals on the beta distribution.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
a,bshape parameter
Returns
a random matrix expression with a shape (rows, cols)

◆ betaLike()

template<typename Derived , typename Urng >
const BetaType<Derived, Urng> Eigen::Rand::betaLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  a = 1,
typename Derived::Scalar  b = 1 
)
inline

generates reals on the beta distribution.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
a,bshape parameter
Returns
a random matrix expression of the same shape as o

◆ binomial()

template<typename Derived , typename Urng >
const BinomialType<Derived, Urng> Eigen::Rand::binomial ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  trials = 1,
double  p = 0.5 
)
inline

generates reals on the binomial distribution.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
trialsthe number of trials
pprobability of a trial generating true
Returns
a random matrix expression with a shape (rows, cols)

◆ binomialLike()

template<typename Derived , typename Urng >
const BinomialType<Derived, Urng> Eigen::Rand::binomialLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  trials = 1,
double  p = 0.5 
)
inline

generates reals on the binomial distribution.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
trialsthe number of trials
pprobability of a trial generating true
Returns
a random matrix expression of the same shape as o

◆ cauchy()

template<typename Derived , typename Urng >
const CauchyType<Derived, Urng> Eigen::Rand::cauchy ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  a = 0,
typename Derived::Scalar  b = 1 
)
inline

generates reals on the Cauchy distribution.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
aa location parameter of the distribution
ba scale parameter of the distribution
Returns
a random matrix expression with a shape (rows, cols)

◆ cauchyLike()

template<typename Derived , typename Urng >
const CauchyType<Derived, Urng> Eigen::Rand::cauchyLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  a = 0,
typename Derived::Scalar  b = 1 
)
inline

generates reals on the Cauchy distribution.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
aa location parameter of the distribution
ba scale parameter of the distribution
Returns
a random matrix expression of the same shape as o

◆ chiSquared()

template<typename Derived , typename Urng >
const ChiSquaredType<Derived, Urng> Eigen::Rand::chiSquared ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  n = 1 
)
inline

generates reals on the Chi-squared distribution with arbitrary degrees of freedom.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
nthe degrees of freedom of the distribution
Returns
a random matrix expression with a shape (rows, cols)

◆ chiSquaredLike()

template<typename Derived , typename Urng >
const ChiSquaredType<Derived, Urng> Eigen::Rand::chiSquaredLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  n = 1 
)
inline

generates reals on the Chi-squared distribution with arbitrary degrees of freedom.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
nthe degrees of freedom of the distribution
Returns
a random matrix expression of the same shape as o

◆ discrete() [1/2]

template<typename Derived , typename Urng , typename Real >
const DiscreteType<Derived, Urng> Eigen::Rand::discrete ( Index  rows,
Index  cols,
Urng &&  urng,
const std::initializer_list< Real > &  il 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is int32(32bit precision).

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
ilan instance of initializer_list containing the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression with a shape (rows, cols)

◆ discrete() [2/2]

template<typename Derived , typename Urng , typename RealIter >
const DiscreteType<Derived, Urng> Eigen::Rand::discrete ( Index  rows,
Index  cols,
Urng &&  urng,
RealIter  first,
RealIter  last 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is int32(32bit precision).

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
first,lastthe range of elements defining the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression with a shape (rows, cols)

◆ discreteD() [1/2]

template<typename Derived , typename Urng , typename Real >
const DiscreteDType<Derived, Urng> Eigen::Rand::discreteD ( Index  rows,
Index  cols,
Urng &&  urng,
const std::initializer_list< Real > &  il 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is double(52bit precision).

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
ilan instance of initializer_list containing the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression with a shape (rows, cols)

◆ discreteD() [2/2]

template<typename Derived , typename Urng , typename RealIter >
const DiscreteDType<Derived, Urng> Eigen::Rand::discreteD ( Index  rows,
Index  cols,
Urng &&  urng,
RealIter  first,
RealIter  last 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is double(52bit precision).

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
first,lastthe range of elements defining the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression with a shape (rows, cols)

◆ discreteDLike() [1/2]

template<typename Derived , typename Urng , typename Real >
const DiscreteDType<Derived, Urng> Eigen::Rand::discreteDLike ( Derived &  o,
Urng &&  urng,
const std::initializer_list< Real > &  il 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is double(52bit precision).

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
ilan instance of initializer_list containing the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression of the same shape as o

◆ discreteDLike() [2/2]

template<typename Derived , typename Urng , typename RealIter >
const DiscreteDType<Derived, Urng> Eigen::Rand::discreteDLike ( Derived &  o,
Urng &&  urng,
RealIter  first,
RealIter  last 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is double(52bit precision).

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
first,lastthe range of elements defining the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression of the same shape as o

◆ discreteF() [1/2]

template<typename Derived , typename Urng , typename Real >
const DiscreteFType<Derived, Urng> Eigen::Rand::discreteF ( Index  rows,
Index  cols,
Urng &&  urng,
const std::initializer_list< Real > &  il 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is float(23bit precision).

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
ilan instance of initializer_list containing the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression with a shape (rows, cols)

◆ discreteF() [2/2]

template<typename Derived , typename Urng , typename RealIter >
const DiscreteFType<Derived, Urng> Eigen::Rand::discreteF ( Index  rows,
Index  cols,
Urng &&  urng,
RealIter  first,
RealIter  last 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is float(23bit precision).

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
first,lastthe range of elements defining the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression with a shape (rows, cols)

◆ discreteFLike() [1/2]

template<typename Derived , typename Urng , typename Real >
const DiscreteFType<Derived, Urng> Eigen::Rand::discreteFLike ( Derived &  o,
Urng &&  urng,
const std::initializer_list< Real > &  il 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is float(23bit precision).

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
ilan instance of initializer_list containing the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression of the same shape as o

◆ discreteFLike() [2/2]

template<typename Derived , typename Urng , typename RealIter >
const DiscreteFType<Derived, Urng> Eigen::Rand::discreteFLike ( Derived &  o,
Urng &&  urng,
RealIter  first,
RealIter  last 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is float(23bit precision).

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
first,lastthe range of elements defining the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression of the same shape as o

◆ discreteLike() [1/2]

template<typename Derived , typename Urng , typename Real >
const DiscreteType<Derived, Urng> Eigen::Rand::discreteLike ( Derived &  o,
Urng &&  urng,
const std::initializer_list< Real > &  il 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is int32(32bit precision).

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
ilan instance of initializer_list containing the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression of the same shape as o

◆ discreteLike() [2/2]

template<typename Derived , typename Urng , typename RealIter >
const DiscreteType<Derived, Urng> Eigen::Rand::discreteLike ( Derived &  o,
Urng &&  urng,
RealIter  first,
RealIter  last 
)
inline

generates random integers on the interval [0, n), where the probability of each individual integer i is proportional to w(i). The data type used for calculation of probabilities is int32(32bit precision).

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
first,lastthe range of elements defining the numbers to use as weights. The type of the elements referred by RealIter must be convertible to double.
Returns
a random matrix expression of the same shape as o

◆ exponential()

template<typename Derived , typename Urng >
const ExponentialType<Derived, Urng> Eigen::Rand::exponential ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  lambda = 1 
)
inline

generates reals on an exponential distribution with arbitrary scale parameter.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
lambdaa scale parameter of the distribution
Returns
a random matrix expression with a shape (rows, cols)

◆ exponentialLike()

template<typename Derived , typename Urng >
const ExponentialType<Derived, Urng> Eigen::Rand::exponentialLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  lambda = 1 
)
inline

generates reals on an exponential distribution with arbitrary scale parameter.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
lambdaa scale parameter of the distribution
Returns
a random matrix expression of the same shape as o

◆ extremeValue()

template<typename Derived , typename Urng >
const ExtremeValueType<Derived, Urng> Eigen::Rand::extremeValue ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  a = 0,
typename Derived::Scalar  b = 1 
)
inline

generates reals on an extreme value distribution (a.k.a Gumbel Type I, log-Weibull, Fisher-Tippett Type I) with arbitrary shape and scale parameter.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
aa location parameter of the distribution
ba scale parameter of the distribution
Returns
a random matrix expression with a shape (rows, cols)

◆ extremeValueLike()

template<typename Derived , typename Urng >
const ExtremeValueType<Derived, Urng> Eigen::Rand::extremeValueLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  a = 0,
typename Derived::Scalar  b = 1 
)
inline

generates reals on an extreme value distribution (a.k.a Gumbel Type I, log-Weibull, Fisher-Tippett Type I) with arbitrary shape and scale parameter.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
aa location parameter of the distribution
ba scale parameter of the distribution
Returns
a random matrix expression of the same shape as o

◆ fisherF()

template<typename Derived , typename Urng >
const FisherFType<Derived, Urng> Eigen::Rand::fisherF ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  m = 1,
typename Derived::Scalar  n = 1 
)
inline

generates reals on the Fisher's F distribution.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
mdegrees of freedom
ndegrees of freedom
Returns
a random matrix expression with a shape (rows, cols)

◆ fisherFLike()

template<typename Derived , typename Urng >
const FisherFType<Derived, Urng> Eigen::Rand::fisherFLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  m = 1,
typename Derived::Scalar  n = 1 
)
inline

generates reals on the Fisher's F distribution.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
mdegrees of freedom
ndegrees of freedom
Returns
a random matrix expression of the same shape as o

◆ gamma()

template<typename Derived , typename Urng >
const GammaType<Derived, Urng> Eigen::Rand::gamma ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  alpha = 1,
typename Derived::Scalar  beta = 1 
)
inline

generates reals on a gamma distribution with arbitrary shape and scale parameter.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
alphaa shape parameter of the distribution
betaa scale parameter of the distribution
Returns
a random matrix expression with a shape (rows, cols)

◆ gammaLike()

template<typename Derived , typename Urng >
const GammaType<Derived, Urng> Eigen::Rand::gammaLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  alpha = 1,
typename Derived::Scalar  beta = 1 
)
inline

generates reals on a gamma distribution with arbitrary shape and scale parameter.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
alphaa shape parameter of the distribution
betaa scale parameter of the distribution
Returns
a random matrix expression of the same shape as o

◆ geometric()

template<typename Derived , typename Urng >
const GeometricType<Derived, Urng> Eigen::Rand::geometric ( Index  rows,
Index  cols,
Urng &&  urng,
double  p = 0.5 
)
inline

generates reals on the geometric distribution.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
pprobability of a trial generating true
Returns
a random matrix expression with a shape (rows, cols)

◆ geometricLike()

template<typename Derived , typename Urng >
const GeometricType<Derived, Urng> Eigen::Rand::geometricLike ( Derived &  o,
Urng &&  urng,
double  p = 0.5 
)
inline

generates reals on the geometric distribution.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
pprobability of a trial generating true
Returns
a random matrix expression of the same shape as o

◆ lognormal()

template<typename Derived , typename Urng >
const LognormalType<Derived, Urng> Eigen::Rand::lognormal ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  mean = 0,
typename Derived::Scalar  stdev = 1 
)
inline

generates reals on a lognormal distribution with arbitrary mean and stdev.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
meana mean value of the distribution
stdeva standard deviation value of the distribution
Returns
a random matrix expression with a shape (rows, cols)

◆ lognormalLike()

template<typename Derived , typename Urng >
const LognormalType<Derived, Urng> Eigen::Rand::lognormalLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  mean = 0,
typename Derived::Scalar  stdev = 1 
)
inline

generates reals on a lognormal distribution with arbitrary mean and stdev.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
meana mean value of the distribution
stdeva standard deviation value of the distribution
Returns
a random matrix expression of the same shape as o

◆ makeUniversalRng()

template<typename UIntType , typename Rng >
UniversalRandomEngine<UIntType, Rng> Eigen::Rand::makeUniversalRng ( Rng &&  rng)

Helper function for making a PacketRandomEngineAdaptor.

Template Parameters
UIntType
Rng
Parameters
rngany random number engine for either packet or scalar type
Returns
an instance of PacketRandomEngineAdaptor for UIntType

◆ negativeBinomial()

template<typename Derived , typename Urng >
const NegativeBinomialType<Derived, Urng> Eigen::Rand::negativeBinomial ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  trials = 1,
double  p = 0.5 
)
inline

generates reals on the negative binomial distribution.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
trialsthe number of trial successes
pprobability of a trial generating true
Returns
a random matrix expression with a shape (rows, cols)

◆ negativeBinomialLike()

template<typename Derived , typename Urng >
const NegativeBinomialType<Derived, Urng> Eigen::Rand::negativeBinomialLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  trials = 1,
double  p = 0.5 
)
inline

generates reals on the negative binomial distribution.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
trialsthe number of trial successes
pprobability of a trial generating true
Returns
a random matrix expression of the same shape as o

◆ normal() [1/2]

template<typename Derived , typename Urng >
const NormalType<Derived, Urng> Eigen::Rand::normal ( Index  rows,
Index  cols,
Urng &&  urng 
)
inline

generates reals on a standard normal distribution (mean = 0, stdev=1)

Template Parameters
Deriveda type of Eigen::DenseBase
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
Returns
a random matrix expression with a shape (rows, cols)

◆ normal() [2/2]

template<typename Derived , typename Urng >
const Normal2Type<Derived, Urng> Eigen::Rand::normal ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  mean,
typename Derived::Scalar  stdev = 1 
)
inline

generates reals on a normal distribution with arbitrary mean and stdev.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
meana mean value of the distribution
stdeva standard deviation value of the distribution
Returns
a random matrix expression with a shape (rows, cols)

◆ normalLike() [1/2]

template<typename Derived , typename Urng >
const NormalType<Derived, Urng> Eigen::Rand::normalLike ( Derived &  o,
Urng &&  urng 
)
inline

generates reals on a standard normal distribution (mean = 0, stdev=1)

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
Returns
a random matrix expression of the same shape as o

◆ normalLike() [2/2]

template<typename Derived , typename Urng >
const Normal2Type<Derived, Urng> Eigen::Rand::normalLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  mean,
typename Derived::Scalar  stdev = 1 
)
inline

generates reals on a normal distribution with arbitrary mean and stdev.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
meana mean value of the distribution
stdeva standard deviation value of the distribution
Returns
a random matrix expression of the same shape as o

◆ poisson()

template<typename Derived , typename Urng >
const PoissonType<Derived, Urng> Eigen::Rand::poisson ( Index  rows,
Index  cols,
Urng &&  urng,
double  mean = 1 
)
inline

generates reals on the Poisson distribution.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
meanrate parameter
Returns
a random matrix expression with a shape (rows, cols)

◆ poissonLike()

template<typename Derived , typename Urng >
const PoissonType<Derived, Urng> Eigen::Rand::poissonLike ( Derived &  o,
Urng &&  urng,
double  mean = 1 
)
inline

generates reals on the Poisson distribution.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
meanrate parameter
Returns
a random matrix expression of the same shape as o

◆ randBits()

template<typename Derived , typename Urng >
const RandBitsType<Derived, Urng> Eigen::Rand::randBits ( Index  rows,
Index  cols,
Urng &&  urng 
)
inline

generates integers with random bits

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
Returns
a random matrix expression with a shape (rows, cols)

◆ randBitsLike()

template<typename Derived , typename Urng >
const RandBitsType<Derived, Urng> Eigen::Rand::randBitsLike ( Derived &  o,
Urng &&  urng 
)
inline

generates integers with random bits

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
Returns
a random matrix expression of the same shape as o

◆ studentT()

template<typename Derived , typename Urng >
const StudentTType<Derived, Urng> Eigen::Rand::studentT ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  n = 1 
)
inline

generates reals on the Student's t distribution with arbirtrary degress of freedom.

Template Parameters
Deriveda type of Eigen::DenseBase
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
ndegrees of freedom
Returns
a random matrix expression with a shape (rows, cols)

◆ studentTLike()

template<typename Derived , typename Urng >
const StudentTType<Derived, Urng> Eigen::Rand::studentTLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  n = 1 
)
inline

generates reals on the Student's t distribution with arbirtrary degress of freedom.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
ndegrees of freedom
Returns
a random matrix expression of the same shape as o

◆ uniformInt()

template<typename Derived , typename Urng >
const UniformIntType<Derived, Urng> Eigen::Rand::uniformInt ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  min,
typename Derived::Scalar  max 
)
inline

generates integers with a given range [min, max]

Template Parameters
Deriveda type of Eigen::DenseBase
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
min,maxthe range of integers being generated
Returns
a random matrix expression with a shape (rows, cols)

◆ uniformIntLike()

template<typename Derived , typename Urng >
const UniformIntType<Derived, Urng> Eigen::Rand::uniformIntLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  min,
typename Derived::Scalar  max 
)
inline

generates integers with a given range [min, max]

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
min,maxthe range of integers being generated
Returns
a random matrix expression of the same shape as o

◆ uniformReal()

template<typename Derived , typename Urng >
const UniformRealType<Derived, Urng> Eigen::Rand::uniformReal ( Index  rows,
Index  cols,
Urng &&  urng 
)
inline

generates reals in a range [0, 1)

Template Parameters
Deriveda type of Eigen::DenseBase
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
Returns
a random matrix expression with a shape (rows, cols)

◆ uniformRealLike()

template<typename Derived , typename Urng >
const UniformRealType<Derived, Urng> Eigen::Rand::uniformRealLike ( Derived &  o,
Urng &&  urng 
)
inline

generates reals in a range [0, 1)

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
Returns
a random matrix expression of the same shape as o

◆ weibull()

template<typename Derived , typename Urng >
const WeibullType<Derived, Urng> Eigen::Rand::weibull ( Index  rows,
Index  cols,
Urng &&  urng,
typename Derived::Scalar  a = 1,
typename Derived::Scalar  b = 1 
)
inline

generates reals on a Weibull distribution with arbitrary shape and scale parameter.

Template Parameters
Derived
Urng
Parameters
rowsthe number of rows being generated
colsthe number of columns being generated
urngc++11-style random number generator
aa shape parameter of the distribution
ba scale parameter of the distribution
Returns
a random matrix expression with a shape (rows, cols)

◆ weibullLike()

template<typename Derived , typename Urng >
const WeibullType<Derived, Urng> Eigen::Rand::weibullLike ( Derived &  o,
Urng &&  urng,
typename Derived::Scalar  a = 1,
typename Derived::Scalar  b = 1 
)
inline

generates reals on a Weibull distribution with arbitrary shape and scale parameter.

Template Parameters
Derived
Urng
Parameters
oan instance of any type of Eigen::DenseBase
urngc++11-style random number generator
aa shape parameter of the distribution
ba scale parameter of the distribution
Returns
a random matrix expression of the same shape as o