Stan
2.5.0
probability, sampling & optimization
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
stan
mcmc
hmc
nuts
unit_e_nuts.hpp
Go to the documentation of this file.
1
#ifndef STAN__MCMC__UNIT__E__NUTS__BETA
2
#define STAN__MCMC__UNIT__E__NUTS__BETA
3
4
#include <
stan/mcmc/hmc/nuts/base_nuts.hpp
>
5
#include <
stan/mcmc/hmc/hamiltonians/unit_e_point.hpp
>
6
#include <
stan/mcmc/hmc/hamiltonians/unit_e_metric.hpp
>
7
#include <
stan/mcmc/hmc/integrators/expl_leapfrog.hpp
>
8
9
namespace
stan {
10
11
namespace
mcmc {
12
13
// The No-U-Turn Sampler (NUTS) on a
14
// Euclidean manifold with unit metric
15
16
template
<
typename
M,
class
BaseRNG>
17
class
unit_e_nuts
:
public
base_nuts
<M,
18
unit_e_point,
19
unit_e_metric,
20
expl_leapfrog,
21
BaseRNG> {
22
23
public
:
24
25
unit_e_nuts
(M &m, BaseRNG& rng, std::ostream* o = &std::cout, std::ostream*
e
= 0):
26
base_nuts
<M,
unit_e_point
,
unit_e_metric
,
expl_leapfrog
, BaseRNG>(m, rng, o,
e
)
27
{ this->
name_
=
"NUTS with a unit Euclidean metric"
; }
28
29
bool
compute_criterion
(
ps_point
& start,
30
unit_e_point
& finish,
31
Eigen::VectorXd& rho) {
32
return
finish.
p
.dot(rho - finish.
p
) > 0
33
&& start.
p
.dot(rho - start.
p
) > 0;
34
}
35
36
};
37
38
}
// mcmc
39
40
}
// stan
41
42
#endif
stan::mcmc::base_mcmc::name_
std::string name_
Definition:
base_mcmc.hpp:38
stan::mcmc::unit_e_nuts::unit_e_nuts
unit_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
Definition:
unit_e_nuts.hpp:25
stan::mcmc::ps_point
Definition:
ps_point.hpp:16
stan::mcmc::unit_e_nuts
Definition:
unit_e_nuts.hpp:17
stan::mcmc::unit_e_point
Definition:
unit_e_point.hpp:12
stan::mcmc::base_nuts
Definition:
base_nuts.hpp:32
stan::mcmc::ps_point::p
Eigen::VectorXd p
Definition:
ps_point.hpp:48
stan::mcmc::expl_leapfrog
Definition:
expl_leapfrog.hpp:12
stan::mcmc::unit_e_nuts::compute_criterion
bool compute_criterion(ps_point &start, unit_e_point &finish, Eigen::VectorXd &rho)
Definition:
unit_e_nuts.hpp:29
expl_leapfrog.hpp
stan::math::e
double e()
Return the base of the natural logarithm.
Definition:
constants.hpp:86
base_nuts.hpp
stan::mcmc::unit_e_metric
Definition:
unit_e_metric.hpp:16
unit_e_point.hpp
unit_e_metric.hpp
[
Stan Home Page
]
© 2011–2014, Stan Development Team.