vSMC
vSMC: Scalable Monte Carlo
Public Types | Public Member Functions | List of all members
vsmc::NormalProposal< RealType > Class Template Reference

Normal random walk proposal. More...

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

Public Types

using result_type = RealType
 

Public Member Functions

 NormalProposal (result_type stddev=1, result_type a=-std::numeric_limits< result_type >::infinity(), result_type b=std::numeric_limits< result_type >::infinity())
 Construct a Normal random walk proposal. More...
 
result_type a () const
 
result_type b () const
 
template<typename RNGType >
result_type operator() (RNGType &rng, std::size_t, const result_type *x, result_type *y)
 Propose new value y and return \(\log(q(y, x) / q(x, y))\). More...
 

Detailed Description

template<typename RealType>
class vsmc::NormalProposal< RealType >

Normal random walk proposal.

Definition at line 540 of file common.hpp.

Member Typedef Documentation

template<typename RealType >
using vsmc::NormalProposal< RealType >::result_type = RealType

Definition at line 420 of file random_walk.hpp.

Constructor & Destructor Documentation

template<typename RealType >
vsmc::NormalProposal< RealType >::NormalProposal ( result_type  stddev = 1,
result_type  a = -std::numeric_limits<result_type>::infinity(),
result_type  b = std::numeric_limits<result_type>::infinity() 
)
inlineexplicit

Construct a Normal random walk proposal.

Parameters
stddevThe standard deviation (scale) of the proposal
aThe lower bound of the support of the target distribution
bThe upper bound of the support of the target distribution

Definition at line 427 of file random_walk.hpp.

Member Function Documentation

template<typename RealType >
result_type vsmc::NormalProposal< RealType >::a ( ) const
inline

Definition at line 439 of file random_walk.hpp.

template<typename RealType >
result_type vsmc::NormalProposal< RealType >::b ( ) const
inline

Definition at line 440 of file random_walk.hpp.

template<typename RealType >
template<typename RNGType >
result_type vsmc::NormalProposal< RealType >::operator() ( RNGType &  rng,
std::size_t  ,
const result_type x,
result_type y 
)
inline

Propose new value y and return \(\log(q(y, x) / q(x, y))\).

Definition at line 444 of file random_walk.hpp.