vSMC
vSMC: Scalable Monte Carlo
Classes | Public Types | Public Member Functions | Friends | List of all members
vsmc::U01LRDistribution< RealType, Left, Right > Class Template Reference

Standard uniform distribution with open/closed variants. More...

#include <vsmc/rng/internal/common.hpp>

Classes

class  param_type
 

Public Types

using distribution_type = U01LRDistribution< RealType, Left, Right >
 
using result_type = RealType
 

Public Member Functions

 U01LRDistribution ()
 
 U01LRDistribution (const param_type &)
 
result_type max () const
 
result_type min () const
 
template<typename RNGType >
result_type operator() (RNGType &rng)
 
template<typename RNGType >
result_type operator() (RNGType &rng, const param_type &)
 
template<typename RNGType >
void operator() (RNGType &rng, std::size_t n, result_type *r)
 
template<typename RNGType >
void operator() (RNGType &rng, std::size_t n, result_type *r, const param_type &)
 
void reset ()
 

Friends

bool operator!= (const U01LRDistribution< RealType, Left, Right > &, const U01LRDistribution< RealType, Left, Right > &)
 
template<typename CharT , typename Traits >
std::basic_ostream< CharT, Traits > & operator<< (std::basic_ostream< CharT, Traits > &os, const U01LRDistribution< RealType, Left, Right > &)
 
bool operator== (const U01LRDistribution< RealType, Left, Right > &, const U01LRDistribution< RealType, Left, Right > &)
 
template<typename CharT , typename Traits >
std::basic_istream< CharT, Traits > & operator>> (std::basic_istream< CharT, Traits > &is, U01LRDistribution< RealType, Left, Right > &)
 

Detailed Description

template<typename RealType, typename Left, typename Right>
class vsmc::U01LRDistribution< RealType, Left, Right >

Standard uniform distribution with open/closed variants.

Template Parameters
RealTypeThe floating points type of results
LeftShall the left side of the interval be Open or Closed
RightShall the right side of the interval be Open or Closed

Definition at line 512 of file common.hpp.

Member Typedef Documentation

template<typename RealType, typename Left, typename Right>
using vsmc::U01LRDistribution< RealType, Left, Right >::distribution_type = U01LRDistribution<RealType, Left, Right>

Definition at line 53 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
using vsmc::U01LRDistribution< RealType, Left, Right >::result_type = RealType

Definition at line 52 of file u01_distribution.hpp.

Constructor & Destructor Documentation

template<typename RealType, typename Left, typename Right>
vsmc::U01LRDistribution< RealType, Left, Right >::U01LRDistribution ( )
inline

Definition at line 86 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
vsmc::U01LRDistribution< RealType, Left, Right >::U01LRDistribution ( const param_type )
inlineexplicit

Definition at line 87 of file u01_distribution.hpp.

Member Function Documentation

template<typename RealType, typename Left, typename Right>
result_type vsmc::U01LRDistribution< RealType, Left, Right >::max ( ) const
inline

Definition at line 90 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
result_type vsmc::U01LRDistribution< RealType, Left, Right >::min ( ) const
inline

Definition at line 89 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
template<typename RNGType >
result_type vsmc::U01LRDistribution< RealType, Left, Right >::operator() ( RNGType &  rng)
inline

Definition at line 95 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
template<typename RNGType >
result_type vsmc::U01LRDistribution< RealType, Left, Right >::operator() ( RNGType &  rng,
const param_type  
)
inline

Definition at line 111 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
template<typename RNGType >
void vsmc::U01LRDistribution< RealType, Left, Right >::operator() ( RNGType &  rng,
std::size_t  n,
result_type r 
)
inline

Definition at line 117 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
template<typename RNGType >
void vsmc::U01LRDistribution< RealType, Left, Right >::operator() ( RNGType &  rng,
std::size_t  n,
result_type r,
const param_type  
)
inline

Definition at line 123 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
void vsmc::U01LRDistribution< RealType, Left, Right >::reset ( )
inline

Definition at line 92 of file u01_distribution.hpp.

Friends And Related Function Documentation

template<typename RealType, typename Left, typename Right>
bool operator!= ( const U01LRDistribution< RealType, Left, Right > &  ,
const U01LRDistribution< RealType, Left, Right > &   
)
friend

Definition at line 135 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
template<typename CharT , typename Traits >
std::basic_ostream<CharT, Traits>& operator<< ( std::basic_ostream< CharT, Traits > &  os,
const U01LRDistribution< RealType, Left, Right > &   
)
friend

Definition at line 142 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
bool operator== ( const U01LRDistribution< RealType, Left, Right > &  ,
const U01LRDistribution< RealType, Left, Right > &   
)
friend

Definition at line 129 of file u01_distribution.hpp.

template<typename RealType, typename Left, typename Right>
template<typename CharT , typename Traits >
std::basic_istream<CharT, Traits>& operator>> ( std::basic_istream< CharT, Traits > &  is,
U01LRDistribution< RealType, Left, Right > &   
)
friend

Definition at line 150 of file u01_distribution.hpp.